结果
数据帧获取分配给列b
的NaN值,该值未出现在数据帧dfa
中:
dfa = pd.DataFrame({'a':[1]})
dfb = pd.DataFrame({'a':[10], 'b':[10]})
result = pd.concat([dfa, dfb])
print result
结果如下:
a b
0 1 NaN
0 10 10.0
我宁愿分配一个整数值0
,而不是NaN
。能做到吗?
最佳答案
您可以使用reindex
dfa
按 dfb
的列并添加参数 fill_value=0
:
dfa = dfa.reindex(columns=dfb.columns, fill_value=0)
print (dfa)
a b
0 1 0
result = pd.concat([dfa, dfb], ignore_index=True)
print (result)
a b
0 1 0
1 10 10
关于python - 如何在 DataFrame 上执行 concat 时分配默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40231627/