微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

根据其他数据框架Python计算NaN值

我有数据框(DF1)缺少值,我想从不同的数据框(DF2)中保留那些缺少值,同时保留索引而不对它们进行排序(非常重要).
我试图找到最有效的方法来做到这一点.

DF1:

index  id  test
3      45   6.9
56     2    NA
1      789  8
29     12   4.7

DF2:

index  id  test
56     2    2.3

结果:

index  id  test
3      45   6.9
56     2    2.3
1      789  8
29     12   4.7

我试过这个:

tempResult = pd.merge(DF1, DF2,on=id,how='outer',sort=False).set_index(DF1.index)

tempResult:

index  id  test_x  test_y
3      45   6.9    NA
56     2    NA     2.3
1      789  8      NA
29     12   4.7    NA

然后我需要经历所有的价值观,所以我正在寻找更有效的方法.

有什么建议?

解决方法:

如果“index”实际上是DataFrame.index,那么你应该只能使用DataFrame.fillna

df1.fillna(df2)

如果没有,那么可能需要首先使用set_index

df1.set_index('index').fillna(df2.set_index('index'))

[OUT]

        id  test
index           
3       45   6.9
56       2   2.3
1      789   8.0
29      12   4.7

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐