编写 Python 代码以查找给定数据帧中每一列的第二低值
假设您有一个数据框,并且每列中第二低值的结果为,
Id 2 Salary 30000 Age 23
为了解决这个问题,我们将按照下面给出的步骤-
解决方案
定义数据框
集函数内部创建拉姆达功能,并设置如x访问所有列和检查表达式作为变量df.apply()
x.sort_values().unique()[1]与轴=0返回第二个最低值,
result = df.apply(lambda x: x.sort_values().unique()[1], axis=0)
例子
让我们检查以下代码以获得更好的理解-
import pandas as 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 is:\n",df) print("每列的次低值为:") result = df.apply(lambda x: x.sort_values().unique()[1], axis=0) print(result)
输出
DataFrame is: 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