From cfc6d7e4bac7f3a11b09c00ca117b7ca25824bb4 Mon Sep 17 00:00:00 2001 From: Amruta Bhapkar Date: Fri, 20 Sep 2024 15:14:14 -0700 Subject: [PATCH] Pandas4 Completed --- 2ndHighestSalary.pd | 13 +++++++++++++ NthHighestSalary.pd | 8 ++++++++ 2 files changed, 21 insertions(+) create mode 100644 2ndHighestSalary.pd create mode 100644 NthHighestSalary.pd diff --git a/2ndHighestSalary.pd b/2ndHighestSalary.pd new file mode 100644 index 0000000..f543986 --- /dev/null +++ b/2ndHighestSalary.pd @@ -0,0 +1,13 @@ +import pandas as pd + +def second_highest_salary(employee: pd.DataFrame) -> pd.DataFrame: + + salaries = employee['salary'].drop_duplicates().sort_values(ascending=False) + if len(salaries) < 2: + return pd.DataFrame({'SecondHighestSalary': [None]}) + + second_highest = salaries.iloc[1] + + result_df = pd.DataFrame({'SecondHighestSalary': [second_highest]}) + + return result_df diff --git a/NthHighestSalary.pd b/NthHighestSalary.pd new file mode 100644 index 0000000..b0f8fbe --- /dev/null +++ b/NthHighestSalary.pd @@ -0,0 +1,8 @@ +import pandas as pd + +def nth_highest_salary(employee: pd.DataFrame, N: int) -> pd.DataFrame: + sorted_salary = employee['salary'].sort_values(ascending=False).drop_duplicates() + if N > len(sorted_salary) or N<=0: + return pd.DataFrame({f'getNthHighestSalary({N})': [None]}) + nth_highest = sorted_salary.iloc[N-1] + return pd.DataFrame({f'getNthHighestSalary({N})': [nth_highest]})