我有一个很长的数据帧列表(有许多列…),如下所示:
DF1
nameOne total_one total_two nameTwo nameThree ...
0 nn1 2 3 nn4 nn7
1 nn2 2 3 nn5 nn8
2 nn3 2 3 nn6 nn9
DF2
nameOne total_one total_two nameTwo nameThree. ....
0 nn1 4 6 nn4 nn7
1 nn2 4 6 nn5 nn8
2 nn3 4 6 nn6 nn9
我希望结果是什么样的:
RESULT_DF
nameOne total_one total_two nameTwo nameThree. ....
0 nn1 6 9 nn4 nn7
1 nn2 6 9 nn5 nn8
2 nn3 6 9 nn6 nn9
换句话说,我只想添加数字列
我试过这样做:DF1.add(DF2, fill_value=0)
但是我得到了这个错误:TypeError:+:'int'和'str'的操作数类型不受支持。
为了简洁起见,这里我只显示了一个Str列。但是我有更多的STR列和更多的int/float列
说明:请注意,这与THIS问题不同,因为我提到我有多个字符串字段
您可以尝试使用
select_dtypes
和pd.concat
:输出:
添加数据帧列表
输出:
将总数移到前面:
输出:
另一种方式 使用
df.filter
筛选出DF2
的数值列。将它们添加到DF1
。什么结果是str.Chaincombine_first
的数值列和NaN的聚合结果,这将更新NaN选项1;2个数据帧
如果只有两个帧
选项2数据帧列表
如果你有清单;在使用functools中的reduce后,选择非数字数据类型并加入求和
相关问题 更多 >
编程相关推荐