【问题标题】:Check if the group has NaN values检查组是否具有 NaN 值
【发布时间】:2016-07-16 02:36:33
【问题描述】:

我有一个数据框,我想通过bq_market_idgroupby 然后检查每个组中的bq_back_price 中是否有任何NaN 值,如果是,则True 每组如果没有,然后@987654326 @ 每组。

bq_selection_id bq_balance  bq_market_id  bq_back_price
0         45094462     185.04       7278437           1.97
1         45094462     185.04       7278437           1.97
2         45094463     185.04       7278437           3.05
3         45094463     185.04       7278437           3.05
4         45094464     185.04       7278437           5.80
5         45094464     185.04       7278437           5.80
6         45094466     185.04       7278437         200.00
7         45094466     185.04       7278437         200.00
8         45094465     185.04       7278437            NaN
9         45094465     185.04       7278437            NaN

我该怎么做?我尝试了以下方法,但没有成功。

bb.groupby('bq_market_id')['bq_back_price'].isnull().any()

【问题讨论】:

    标签: python python-2.7 python-3.x pandas


    【解决方案1】:

    我觉得你可以用apply:

    print bb.groupby('bq_market_id')['bq_back_price'].apply(lambda x: x.isnull().any())
    bq_market_id
    7278437    True
    Name: bq_back_price, dtype: bool
    

    示例(bq_market_id 列中的一些值已更改):

    print bb
       bq_selection_id  bq_balance  bq_market_id  bq_back_price
    0         45094462      185.04             1           1.97
    1         45094462      185.04             1           1.97
    2         45094463      185.04             1           3.05
    3         45094463      185.04       7278437           3.05
    4         45094464      185.04       7278437           5.80
    5         45094464      185.04       7278437           5.80
    6         45094466      185.04       7278437         200.00
    7         45094466      185.04       7278437         200.00
    8         45094465      185.04       7278437            NaN
    9         45094465      185.04       7278437            NaN
    
    print bb.groupby('bq_market_id')['bq_back_price'].apply(lambda x: x.isnull().any())
    bq_market_id
    1          False
    7278437     True
    Name: bq_back_price, dtype: bool
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-13
      • 1970-01-01
      • 2014-02-03
      • 1970-01-01
      相关资源
      最近更新 更多