1 回答

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超8個(gè)贊
我的輸入文件:
A,A1,A2,A3
Total,100,200,300
Value1,100,200,300
Value2,40,200,140
Value3,100,50,100
Value4,100,90,50
Value5,30,20,300
根據(jù)您的評(píng)論:
A1 的最大值為 100,因此如果 A1 中的任何其他值為 50 或更高,我希望該值為 100。在 A2 中,最大值為 200 個(gè) A2 中 100 或更高的其他值,我希望這些值為 200
你只需要使用以下apply
方法:
import pandas as pd
??
df = pd.read_csv('book.csv',index_col=0, delimiter=',')
#applying the condition using a lambda
df = df.apply(lambda x : [x.max() if i >= x.max()//2 else i for i in x])
print(df)
輸出:
? A? ? ? A1? ?A2? ?A3? ? ? ? ? ? ? ? ?
Total? ?100? 200? 300
Value1? 100? 200? 300
Value2? ?40? 200? 140
Value3? 100? ?50? 100
Value4? 100? ?90? ?50
Value5? ?30? ?20? 300
添加回答
舉報(bào)