从分散的数据类型中查找最大整数,Python

2024-04-19 04:46:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到最大的值,并把它放在每一行的一列中。根据下面的内容,字符串、nan和整数分散在一起

我猜由于数据类型的混合,仅仅运行max函数是行不通的

df['max']=df[['team', 'so', 'ibb', 'hpb', 'sh', 'gidp']].max(axis=1)


  df2           so   ibb   hbp    sh    sf  gidp  
year team                                       
2008 DET   176.0   3.0  10.0   4.0   8.0  28.0  
     212.0   3.0   9.0  16.0   6.0  17.0  NaN
     141.0   8.0   9.0   3.0   8.0  29.0  LAN
     310.0  24    NYN   23.0  18.0  15.0  48.0  
     188.0  51.0   8    SFN   16.0   6.0  41.0  
     140.0   NaN   5.0   NaN   8.0  TEX   16.0  
     TOR   265.0  16.0  12.0   4.0  16.0  38.0  

Tags: 函数字符串内容dfsosh整数nan
1条回答
网友
1楼 · 发布于 2024-04-19 04:46:59

如果要首先转换最大数值^{}

df['max'] = df.apply(lambda x: pd.to_numeric(x, errors='coerce')).max(axis=1)
print (df)
                so   ibb   hbp    sh    sf  gidp    max
year  team                                             
2008  DET    176.0   3.0  10.0   4.0   8.0  28.0  176.0
212.0 3.0      9.0  16.0   6.0  17.0   NaN   NaN   17.0
141.0 8.0      9.0   3.0   8.0  29.0   LAN   NaN   29.0
310.0 24       NYN  23.0  18.0  15.0  48.0   NaN   48.0
188.0 51.0       8   SFN  16.0   6.0  41.0   NaN   41.0
140.0 NaN      5.0   NaN   8.0   TEX  16.0   NaN   16.0
TOR   265.0   16.0  12.0   4.0  16.0  38.0   NaN   38.0

相关问题 更多 >