編寫一個 Python 程式碼,找到給定資料幀中每一列的第二小值
假設,你有一個數據幀,並且每一列中的第二小值的結果為:
Id 2 Salary 30000 Age 23
為了解決這個問題,我們將按照以下步驟進行操作 -
解決方案
定義一個數據幀
在 create 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 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("Second lowest value of each column is:") 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 Second lowest value of each column is: Id 2 Salary 30000 Age 23 dtype: int64
廣告