You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pandas中对仅后缀不同的同类型列进行逐行求和

解决方案

直接用 pandas 的列分组聚合即可,全程不需要手动指定列名,适配任意数量的列对,不受列顺序影响:

实现代码

import pandas as pd
import re

# 示例数据构造,你可以替换成自己读取的DataFrame
df = pd.DataFrame({
    'total_customers': [1, 3],
    'total_customers_2021-03-31': [10, 14],
    'total_purchases': [4, 3],
    'total_purchases_2021-03-31': [6, 2]
})

# 定义前缀提取规则:去掉列名末尾的 _YYYY-MM-DD 格式后缀
def extract_prefix(col_name):
    return re.sub(r'_\d{4}-\d{2}-\d{2}$', '', col_name)

# 按前缀对列分组,逐行求和
result = df.groupby(extract_prefix, axis=1).sum()

说明

  • 如果你的列名存在单复数拼写差异(比如示例中疑似的total_customers和total_customer_的拼写差),可以调整extract_prefix里的匹配规则,比如先统一单复数再分组即可。
  • 该方法时间复杂度仅和你的DataFrame行列数正相关,哪怕有上百组列也能秒出结果。

内容的提问来源于stack exchange,提问作者titu84hh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:36:03