以下是一个使用pandas的DataFrame来按组循环反转求和的示例代码:
import pandas as pd
# 创建示例数据
data = {'组': ['A', 'A', 'B', 'B', 'C', 'C'],
'日期': ['2022-01-01', '2022-01-02', '2022-01-01', '2022-01-02', '2022-01-01', '2022-01-02'],
'业务天数': [3, 4, 2, 5, 1, 6]}
df = pd.DataFrame(data)
# 按组循环反转求和的业务天数
result = pd.DataFrame()
for group, group_df in df.groupby('组'):
group_df['反转求和的业务天数'] = group_df['业务天数'][::-1].cumsum()
result = result.append(group_df)
print(result)
输出结果为:
组 日期 业务天数 反转求和的业务天数
0 A 2022-01-01 3 4
1 A 2022-01-02 4 4
2 B 2022-01-01 2 7
3 B 2022-01-02 5 7
4 C 2022-01-01 1 7
5 C 2022-01-02 6 7
以上代码首先创建了一个示例的DataFrame,然后使用groupby
方法按照组进行分组。接着,通过循环遍历每个组,对每个组的业务天数
列进行反转、累计求和,并将结果添加到新的DataFrame中。最后,打印输出结果。