Python熊猫更新基于DF2列值的条件

时间:2018-12-14 17:42:15

标签: python pandas

我有2个数据框:

df1

       hair    eyes   gender  

joe     br      bl      m
mary    bl      br      f
pete    rd      gr      m

并且我想用df2 IF中的值更新df1,但要另加一些列中的某些值

       hair    eyes   gender  weight  height

joe     bk      gr      m       150     72
mary    bl      br      f       125     55
pete    rd      gr      m       180     68

我想这样做:

df1.update(df2)   #if df2 height is over 70

但不确定如何或是否可以指定条件。

手术后我得到的输出是:

       hair    eyes   gender  

joe     bk      gr      m
mary    bl      br      f
pete    rd      gr      m

所以只有乔更新了,因为他的身高超过70。

是否可以通过某种方式有条件地指定update,还是最好在df2['height'] > 70处另外创建一个df?

预先感谢

1 个答案:

答案 0 :(得分:2)

只需过滤df2,然后 即可进行更新:

df1.update(df2[df2['height'] > 70])