熊猫:NaN中的DataFrame op DataFrame结果

时间:2020-07-01 21:40:17

标签: pandas dataframe alignment operators union

为什么简单的DataFrame op DataFrame操作会导致合并的DataFrame?由于对齐问题,Pandas文档提到了合并。我没有看到df1和df2的对齐问题。不是关于不同形状,不同dtype或不同索引的对齐问题吗?

df1 = pd.DataFrame([[1,2],[3,4]],columns=list('AB'))
df2 = pd.DataFrame([[5,6],[7,8]],columns=list('CD'))

>> df1*df2

    A   B   C   D
0   NaN NaN NaN NaN
1   NaN NaN NaN NaN

1 个答案:

答案 0 :(得分:1)

对齐问题的另一个来源是列名不匹配。在这里,对齐需要相同的列名。使列名相同或使用.values。仅在右侧DataFrame上使用.values将保留DataFrame类型。

>> df1*df2.values

    A   B
0   5   12
1   21  32