我有一个类似于pandas DataFrame的数据结构:
col1 col2 col3 col5
NaN 1 2 8
2 NaN 4 8
4 NaN 4 8
我想要做两件事:
1)合并第一列和第二列:
newcol1 col3 col5
1 2 8
2 4 8
4 4 8
我尝试使用 .concat,但那只是连接了行。似乎我不能使用标准的 +
运算符来处理 NaN 值。
2) 从新列 1 和列 3 中减去列 5,以便得到:
newcol1 col3
-7 -6
-6 -4
-4 -4
尝试用这种方式实现:
dataframe[['newcol1', 'col2']] - dataframe['col5']
和
dataframe[['newcol1', 'col2']].subtract(dataframe['col5'])
但是两者都不起作用。
df.col1.combine_first(df.col2)
是否更好? - Alex Rileyfillna
的问题,我唯一能想到的可能原因是您的 DataFrame 具有重复的索引。如果您在同一个 DataFrame 中减去了列,那么减法不应该引发任何错误(...我不知道发生了什么...)。 - Alex Riley