用另一个数据集中的列中的值填充空值

时间:2018-12-07 11:33:03

标签: python pandas

我有2个这样的数据集:

df1.head(5)
 category cost
0   1   33.0
1   1   33.0
2   2   18.0
3   1   NaN
4   3   8.0
5   2   NaN

df2.head(2)
 cost
3 33.0
5 55.0

df2包含一列具有相同索引值的列,其中df1为空

我想得到这个结果:

df1.head(5)
 category cost
0   1   33.0
1   1   33.0
2   2   18.0
3   1   33.0
4   3   8.0
5   2   55.0

因此,请使用相同索引上df2中的值填充df1中的cost列

1 个答案:

答案 0 :(得分:2)

fillna

熊猫自然通过索引分配:

df1['cost'] = df1['cost'].fillna(df2['cost'])

print(df1)

   category  cost
0         1  33.0
1         1  33.0
2         2  18.0
3         1  33.0
4         3   8.0
5         2  55.0