df1 = DataFrame(np.arange(12).reshape(3,4),columns=list('abcd'))
df1
Out[74]:
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
df2 = DataFrame(np.arange(20).reshape(4,5),columns=list('abcde'))
df2
Out[79]:
a b c d e
0 0 1 2 3 4
1 5 6 7 8 9
2 10 11 12 13 14
3 15 16 17 18 19
如果单纯相加的话,空值会返回NaN
df1+df2
Out[80]:
a b c d e
0 0.0 2.0 4.0 6.0 NaN
1 9.0 11.0 13.0 15.0 NaN
2 18.0 20.0 22.0 24.0 NaN
3 NaN NaN NaN NaN NaN
所以需要使用df1的add方法,传入df2以及一个fill_value参数:
df1.add(df2,fill_value=0)
Out[83]:
a b c d e
0 0.0 2.0 4.0 6.0 4.0
1 9.0 11.0 13.0 15.0 9.0
2 18.0 20.0 22.0 24.0 14.0
3 15.0 16.0 17.0 18.0 19.0
df1.add(df2,fill_value=10)
Out[84]:
a b c d e
0 0.0 2.0 4.0 6.0 14.0
1 9.0 11.0 13.0 15.0 19.0
2 18.0 20.0 22.0 24.0 24.0
3 25.0 26.0 27.0 28.0 29.0
方法 | 说明 |
---|---|
add | 用于加法(+)的方法 |
sub | 用于减法(-)的方法 |
div | 用于除法(/)的方法 |
mul | 用于乘法(*)的方法 |