Python 向数据帧列中的最大值添加值

Python 向数据帧列中的最大值添加值,python,pandas,Python,Pandas,我有一个数据帧: Region | A | B | C | Total =============================================================== Africa | 100.10 | 20.135 | 10.02 | 130.255 -----------------------------------------------------

我有一个数据帧:

Region    |     A      |       B     |      C     |    Total
===============================================================
Africa    |   100.10   |    20.135   |    10.02   |    130.255
---------------------------------------------------------------
Europe    |   200.35   |    50.102   |    16.35   |    266.802
---------------------------------------------------------------
India     |   30.98    |    150.18   |    12.63   |    193.79
---------------------------------------------------------------
Unknown   |   2.36     |    5.108    |    1.96    |    9.428
我想在dataframe列中找到最大值,并向其中添加“未知”行值,然后删除“未知行”

我做了df['A'].max()、df['B'].max()和df['C'].max(),它们在列中返回最大值,但如何向其中添加“未知”行值

我预计产出为:

Region    |     A      |       B     |      C     |    Total
===============================================================
Africa    |   100.10   |    20.135   |    10.02   |    130.255
---------------------------------------------------------------
Europe    |   202.71   |    50.102   |    18.31   |    271.122
---------------------------------------------------------------
India     |   30.98    |    155.288  |    12.63   |    198.898
说明:

(df['A'].max()=200.35)+2.36=202.71

(df['B'].max()=150.18)+5.108=155.288


(df['C'].max()=16.35)+1.96=18.31

使用带布尔掩码的
mul

df=df.set_index('Region')
df+=(df==df.max()).mul(df.loc['Unknown'])  
df=df.drop('Unknown',axis=0)
df.Total=df.iloc[:,:-1].sum(1)
df
             A        B      C    Total
Region                                 
Africa   100.1   20.135  10.02  130.255
Europe  202.71   50.102  18.31  271.122
India    30.98  155.288  12.63  198.898

不错!天才的回答。