编写 Python 代码来查找给定数据框中每列的第二低值

pythonpandasserver side programmingprogramming

假设您有一个数据框,并且每列中第二低值的结果是,

Id       2
Salary 30000
Age    23

为了解决这个问题,我们将遵循下面给出的步骤 −

解决方案

  • 定义一个数据框

  • 在创建 lambda 函数中设置 df.apply() 函数,并设置变量如 x 以访问所有列并检查表达式为

x.sort_values().unique()[1] 与 axis=0 返回第二低值,

result = df.apply(lambda x: x.sort_values().unique()[1], axis=0)

示例

让我们检查以下代码以更好地理解 −

import pandas 作为 pd
df = pd.DataFrame({'Id':[1,2,3,4,5,6,7,8,9,10],
'Salary':[20000,30000,50000,40000,80000,90000,350000,55000,60000,70000],
            'Age': [22,23,24,25,26,25,26,27,25,24]
      })
print("DataFrame是:\n",df)
print("每列的第二低值是:")
result = df.apply(lambda x: x.sort_values().unique()[1], axis=0)
print(result)

输出

DataFrame 是:
 Id Salary Age
0 1 20000  22
1 2 30000  23
2 3 50000  24
3 4 40000  25
4 5 80000  26
5 6 90000  25
6 7 350000 26
7 8 55000  27
8 9 60000  25
9 10 70000 24
每列的第二低值为:
Id       2
Salary 30000
Age    23
dtype: int64

相关文章