【发布时间】:2020-09-25 06:55:02
【问题描述】:
我有两个 pandas 数据框,每个都是 (15, 1) 形状。
当从另一个中减去一个时,结果是一个 (15, 15) 形状的数据框。第一列给出了正确的减法值,但其他十四列用 NaN 值填充。 (我使用传统的减法符号和 .sub() 得到相同的结果)
为什么要增加 14 列?结果不应该是 (15, 1) 数据帧吗?
数据框是另一个数据框的部分的串联,因此是列/行标签。
【问题讨论】:
-
你的减法代码是什么?
-
@jezrael 类似于
df3 = df1.sub(df2)或df3 = df1 - df2 -
print (df1.info())和print (df2.info())是什么? -
@jezrael 啊,这可能已经发现了问题。其中一个是真正的系列,另一个是一列 15 个条目的 df。没有意识到这一点,我试图从一个系列中分出一个 df 。并切换两者(尽管值为负)得到了填充 NaN 值的不需要的列。我不知道 info()
-
是的,这是原因。就像在我的示例中一样
df1.sub(df2['B'])