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]})