python - 多个熊猫数据框中的元素数学运算
问题描述
我有两个具有类似结构的数据框,如下所示:
df0
No. Name PropNO PropAmt
1 XYZ - -
2 ABC 1077 34.90
3 GHI - -
Total 1077 34.90
df1
No. Name PropNO PropAmt
1 XYZ 2 0.6
2 ABC 23 0.1
3 GHI 5 0.3
Total 30 1.0
我想要像这样的输出:
No. Name PropNO PropAmt
1 XYZ 2 0.6
2 ABC 1100 35.0
3 GHI 5 0.3
Total 1107 35.9
我有.add()
,但它也合并了 Name 列。有更好的方法吗?
解决方案
concat
与聚合一起使用sum
:
dfs = [df1, df2]
#if necessary
#dfs = [df.replace('-', np.nan) for df in dfs]
df = pd.concat(dfs).groupby('Name', as_index=False).sum()
推荐阅读
- ruby - === 和 match 之间的一行代码的区别?
- c - 如果 printf() 相对于其各自的格式说明符被赋予了不正确的参数类型,C 编译器是否会尝试隐式转换它?
- python-3.x - 如何推送和弹出类中的特定堆栈(这是我的 Stack 类中的两个列表成员)?
- xcode - Xcode Swift 包管理器无法为 git 使用正确的 SSH 密钥
- amazon-s3 - Directus - AWS S3 上传 - 错误消息:无法设置未定义的属性“值”
- java - Thymeleaf - 猫王操作员未按预期工作
- amazon-web-services - 地图输入来自执行输入的 AWS Step Function
- java - RecyclerView 在布局中不显示任何项目
- python - 测试函数上的 pso 算法。但我被python代码困住了
- c - 通过匿名管道将数据传递给另一个程序