首页 > 解决方案 > 以累积方式隔离数据并根据日期保存在列中

问题描述

我有一个大的 csv 文件,其中包含根据日期的数据,我想创建一个 cumcount 类型的文件。例如:

name    date
abc     01/01/2020
xyz     01/04/2020
dcd     01/04/2020
ddd     01/05/2020
fff     01/06/2020
ggg     01/12/2020

我想创建里程碑文件并保存它们,就像第一个文件将包含只有 01/01/2020 日期的数据并保存它,第二个文件应该有数据 01/01/2020 和 01/04/2020 并保存文件应该是 2020 年 1 月 1 日、2020 年 1 月 4 日和 2020 年 1 月 5 日等等.. 真实数据很大,所以会引起一些问题.. 有人知道吗.. 谢谢提前

标签: pythonpandasdataframedate

解决方案


首先确保您的date列是日期时间类型。然后按升序获取所有可能的日期。date最后,增加日期窗口并将日期窗口中的列值导出为csv。

df['date'] = pd.to_datetime(df['date'])

dates = df['date'].sort_values().unique()

for i in range(1, len(dates)):
    df_ = df[df['date'].isin(dates[:i])]
    df_.to_csv(f'file{i}.csv', index=False)

推荐阅读