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

结合两个熊猫数据帧,只添加整数计数

我正在尝试将两个不同长度的熊猫数据帧加在一起:

    fruit rating  count
0  apple      A      2
1  pear       B      2
2  peach      A      1
3  apple      B      2
4  pear       C      1  

    fruit rating  count
0   apple       A    0
1   apple       B    0
2   apple       C    0
3   pear        A    0
4   pear        B    0
5   pear        C    0
6  peach        A    0
7  peach        B    0
8  peach        C    0

基本上,我想将第一个数据帧的计数整数添加到它下面的第二个数据帧中,其类型和等级相同.例如,由于“梨和B”,数据帧1的索引1应该在数据帧2的索引4的计数上加上2 2.

我已经尝试过更新功能,但似乎弄乱了索引,只是替换了类型和等级.抱歉,如果我不擅长解释.我仍在学习.非常感谢你的帮助.

解决方法:

您可以在相关索引上尝试groupby:

temp1=first_df.set_index(['fruit','rating'])
temp2=second_df.set_index(['fruit','rating'])
result = temp1.add(temp2,fill_value=0)

这为您提供了一个多索引的DataFrame:

              count
fruit rating       
apple A         2.0
      B         2.0
      C         0.0
peach A         1.0
      B         0.0
      C         0.0
pear  A         0.0
      B         2.0
      C         1.0

如果要删除索引,只需重置索引即可:

result.reset_index()
Out[182]: 
   fruit rating  count
0  apple      A    2.0
1  apple      B    2.0
2  apple      C    0.0
3  peach      A    1.0
4  peach      B    0.0
5  peach      C    0.0
6   pear      A    0.0
7   pear      B    2.0
8   pear      C    1.0

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

相关推荐