【问题标题】:Filtering pandas dataframe when column contains stings当列包含刺时过滤熊猫数据框
【发布时间】:2022-10-04 16:31:09
【问题描述】:

我有一个预先存在于此结构中的数据框:

import pandas as pd
d={'colA':['1','2','3','3','3'],'colB':['NaN','4','5','this','that']}
mydata=pd.DataFrame(data=d)

ColA 是保存为字符串的整数 ColB 都是字符串,但包含整数、NaN 和实数字符串的混合。

我想创建一个新列 (colC) 来检查 colB 中的整数是否大于 colA 中的整数。但我不知道如何处理字符串和 NaN。

最终的数据框应如下所示:

d={'colA':[1,2,3,3,3],'colB':['NaN',4,5,'this','that'],'colC':['NaN','Yes','Yes','NaN','NaN']}
mydata_new=pd.DataFrame(data=d) 

谢谢

【问题讨论】:

    标签: python python-3.x pandas dataframe


    【解决方案1】:

    利用:

    m = pd.to_numeric(df.A, errors='coerce').gt(pd.to_numeric(df.B, errors='coerce'))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-04
      • 1970-01-01
      • 2017-02-05
      • 1970-01-01
      • 1970-01-01
      • 2017-12-15
      • 2014-12-02
      • 2021-12-01
      相关资源
      最近更新 更多