我遇到了一个非常奇怪的问题。我正在尝试添加Pandas Dataframe的两列,但是一行的结果是错误的。
我正在使用Python 3。
以下内容适用于除一列之外的所有列:
df['col3'] = df['col1']+df['col2']
当col1的值为3且col2的值为0时,col3的输出为0而不是3!
所有数据类型均为int64
或float64
这是数据框的图像:https://imgur.com/a/fQHh21p
答案 0 :(得分:0)
破解了!!!我真傻! 但是我仍然会继续发帖,因为将来可能会发生这种情况!
我在做什么: (这是一个长脚本,包含许多数据帧和列,并将一列映射到另一列...)
在将数据填写到col2 df.col2.iloc[7] = nan
中的同时。
我完全错过了这一点。
因此,当我添加df.col1.iloc[7] + df.col2.iloc[7] = nan
时。
脚本的下一步,将每个nan
值更改为零!
因此,3+0 = 0
!
很抱歉无法共享该脚本,但仍然感谢所有帮助!