[英]pandas: all NaNs when subtracting two dataframes
我有两个系列。 我想从另一个数据帧中减去一个数据帧,即使它们的列数不同。
>df1
index 0 1 2 3 4 5
TOTAL 5 46 56 110 185 629
>df2
index 1 2 3 4 5
Use 25 37 86 151 512
我假设减去具有不同维度的两个数据框只会导致不匹配的列(在这种情况下,列 0)中出现 NaN。 其余列将是 df1[1]-df2[1]、df1[2]-df2[2] 等的结果。
>df1 - df2
index 0 1 2 3 4 5
TOTAL NaN 21 19 24 34 117
但事实并非如此。 当我减去数据帧时会发生这种情况?
>df1 - df2
index 0 1 2 3 4 5
Use NaN NaN NaN NaN NaN NaN
TOTAL NaN NaN NaN NaN NaN NaN
我也试过只减去这些值:
>df1.values - df2.values
Traceback (most recent call last):
File "<ipython-input-376-1dc5b3b4ad3e>", line 1, in <module>
total_drugs.values-(restraints_drugs.values+norestraints_drugs.values)
ValueError: operands could not be broadcast together with shapes (1,6) (1,5)
我做错了什么? 我正在使用熊猫 0.18。
由于两个数据帧需要具有相同的索引,因此您可以重置索引,然后对数据帧执行减法。
使用它然后执行减法:
df1.reset_index(inplace=True)
df2.reset_index(inplace=True)
将索引重置为默认值后,您就可以执行减法/加法或任何操作。
df1-df2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.