python - 使用列标识符在 Pandas 中压缩预测
问题描述
我有一个 Pandas 数据框,其中包含产品的每周预测(前两列中包含产品信息) - 请参见下面的示例。
prod_type prod_version 26-04-2021 03-05-2021 10-05-2021 17-05-2021 24-05-2021
product1 a 0 100 100 100 100
product1 b 0 200 100 400 100
product1 a 100 200 300 100 100
product2 a 0 0 500 0 100
product2 b 100 200 300 100 100
product2 b 200 400 300 800 0
我正在寻找最有效的方法来压缩预测行,即产品 1,版本 a 只剩下一行,它是相应列值的总和。最终输出应如下所示:
prod_type prod_version 26-04-2021 03-05-2021 10-05-2021 17-05-2021 24-05-2021
product1 a 100 300 400 200 200
product1 b 0 200 100 400 100
product2 a 0 0 500 0 100
product2 b 300 600 600 900 100
我一直在玩一些 groupby.transform('sum') 方法,但似乎没有任何效果。有人对如何最好地实现这一目标有任何建议吗?
解决方案
您可以在groupby中使用多个列
df.groupby(['prod_type','prod_version']).sum()
推荐阅读
- react-native - 如何使用 yup 验证 useRef 对象?
- ios - 在 React Native(iOS)中从 LTR 更改为 RTL 后,抽屉滑轨不起作用
- optimization - 如何使用遗传算法优化模糊逻辑控制器的参数?
- java - JavaMailSender:身份验证失败
- python - 在带有 PyQt5 的 qml 中使用 ApplicationWindow 会导致空白窗口,但没有它的相同代码不会
- .net-assembly - 程序集引用与找到的程序集定义不匹配 - 对于 System.Threading.Tasks.Extensions,版本 = 4.2.0.0
- javascript - 数据存储在 My Sql 数据库中,但对密码进行哈希处理时出错
- oracle-sqldeveloper - 未在 oracle Sql 开发人员中与 group by 一起使用
- java - 收集 WeakHashMap 的条目时,如何对值进行一些清理?
- cryptography - 我为 DigiByte 生成了一对密钥,公钥与 DogeCoin 钱包的公钥匹配。那是问题吗?