本文将介绍如何使用 Pandas 滑窗函数统计账户交易金额,实现对每天、每三天、每五天交易金额的汇总。

假设你有一个 DataFrame,包含日期、账户和金额特征。你需要根据日期使用滑窗函数统计每个账户的每天、每三天和每五天的交易金额,并将结果放入新的表中。

步骤:

  1. 导入所需的库:
import pandas as pd
  1. **准备数据:**假设你的原始数据框名为 df,包含列 '日期'、'账号' 和 '金额'。首先,将 '日期' 列转换为日期时间类型:
df['日期'] = pd.to_datetime(df['日期'])
  1. **创建新的数据框:**创建一个新的数据框 new_df,用于存储统计结果:
new_df = pd.DataFrame()
  1. **使用滑窗函数统计:**对于每个账户,使用滑窗函数来进行统计。可以使用 Pandas 的 groupby() 函数来按账户进行分组,并使用 rolling() 函数来创建滑窗对象。计算每天、每三天和每五天的交易金额,然后将结果添加到 new_df 中:
grouped = df.groupby('账号')

# 每天的交易金额
new_df['每天交易金额'] = grouped['金额'].sum()

# 每三天的交易金额
new_df['每三天交易金额'] = grouped['金额'].rolling(window=3, min_periods=1).sum().reset_index(drop=True)

# 每五天的交易金额
new_df['每五天交易金额'] = grouped['金额'].rolling(window=5, min_periods=1).sum().reset_index(drop=True)

在上述代码中,groupby() 函数将数据按照账户进行分组,然后使用 rolling() 函数创建滑窗对象,window 参数指定滑窗大小,min_periods 参数指定至少有多少个非缺失值才进行计算。sum() 函数用于计算交易金额的总和。reset_index(drop=True) 用于重置索引并删除原始索引。

  1. **保存结果:**最后,将 new_df 保存到新的表中(可以将结果保存为 CSV 文件):
new_df.to_csv('统计结果.csv', index=False)

在上述代码中,to_csv() 函数将数据保存为 CSV 文件,index=False 表示不将索引保存到文件中。

希望这可以帮助你!

Pandas 滑窗函数统计账户交易金额:每天、每三天、每五天

原文地址: https://www.cveoy.top/t/topic/k8k 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录