[英]Apply function on Pandas dataframe
我是pandas數據幀的新手,我想為每個列應用一個函數,以便計算每個元素的x,x / max列。
我引用了這個問題,但無法訪問每列的最大值。 在此先感謝Pandas DataFrame:將函數應用於所有列
輸入:
A B C D
0 8 3 5 8
1 9 4 0 4
2 5 4 3 8
3 4 8 5 1
輸出:
A B C D
0 8/9 3/8 5/5 8/8
1 9/9 4/8 0/5 4/8
2 5/9 4/8 3/5 8/8
3 4/9 8/8 5/5 1/8
這樣的事情應該有效:
>>> from pandas import DataFrame
>>>
>>> df = DataFrame({"A": [8,9,5,4], "B": [3,4,4,8], "C": [5,0,3,5], "D": [8,4,8,1]})
>>> df.max()
A 9
B 8
C 5
D 8
>>> (df * 1.0)/df.max()
A B C D
0 0.888889 0.375 1.0 1.000
1 1.000000 0.500 0.0 0.500
2 0.555556 0.500 0.6 1.000
3 0.444444 1.000 1.0 0.125
請注意,我將df
乘以1.0
使得它不再包含int
s( .astype(float)
也會起作用)以避免整數除法和結果DataFrame為0和1。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.