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

如何为票务数据表格新增TotalSum(Tickets)累计求和列?

如何实现从首行到当前行的Ticket累计求和列

我有如下数据表:

ASum(Tickets)
01-20225
02-20222
03-20228
04-20221
05-20223
06-20223
07-20224
08-20221
09-20225
10-20225
11-20223

需要新增TotalSum(Tickets)列,实现从首行到当前行的累计求和,目标效果如下:

ASum(Tickets)TotalSum(Tickets)
01-202255
02-202227
03-2022815
04-2022116
05-2022319
06-2022322
07-2022426
08-2022127
09-2022532
10-2022537
11-2022340

解决方案1:SQL实现

如果数据存储在数据库中,使用窗口函数SUM() OVER()即可完成累计计算,需按月份列A排序保证顺序正确:

SELECT 
    A,
    `Sum(Tickets)`,
    SUM(`Sum(Tickets)`) OVER (ORDER BY A) AS `TotalSum(Tickets)`
FROM your_table_name
ORDER BY A;

说明:你的月份格式MM-YYYY可直接按字符串排序,若数据库对列名有特殊字符要求,用反引号包裹即可。

解决方案2:Excel实现

公式法

在目标列第一个单元格(如C2)输入以下公式,下拉填充:

=SUM($B$2:B2)

$B$2固定起始行,B2随下拉自动变为B3、B4,实现逐行累计。

Power Query法

  1. 将数据导入Power Query
  2. 添加自定义列,使用公式:
List.Sum(List.Range(#"Changed Type"[Sum(Tickets)],0,Index()+1))

加载回Excel即可得到累计列。

解决方案3:Python Pandas实现

用cumsum()方法一步完成累计求和,先确保数据按月份排序:

import pandas as pd

# 假设数据已加载到DataFrame df
df = df.sort_values('A').reset_index(drop=True)
df['TotalSum(Tickets)'] = df['Sum(Tickets)'].cumsum()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 05:35:20