如何按周划分Pandas数据帧并保存为CSV?

2024-04-26 04:06:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个熊猫数据框架如下。这个数据框大约有一个月的周期。我如何根据星期划分这个数据帧?我需要保存每4个星期作为单独的4个CSV文件。在

Time Stamp              Id  Latitude    Longitude
01/10/2016 15:22:51:700 1      23        50
01/10/2016 16:28:08:026 1      23        50
01/10/2016 16:28:09:026 1      12        45
02/10/2016 19:00:08:026 2      23        50
02/10/2016 20:28:08:026 1      23        50
03/10/2016 19:00:08:000 2      23        50
03/10/2016 01:02:33:123 2      23        50
03/10/2016 06:15:08:500 1      23        50
03/10/2016 10:01:07:022 3      28        88
......
......
31/10/2016 13:09:17:044 1      33        80

我的预期产出是:

^{pr2}$

这应该是我的第一周。从2016年10月8日至2017年10月14日,从2016年10月15日至2017年10月21日,以及从2016年10月22日至2017年10月31日。在


Tags: 文件csv数据框架idtimestamplatitude
2条回答

您可以先将列转换为datetimes,然后通过^{}将其转换为{}。在

最后一个循环groupby并调用^{}

ts = pd.to_datetime(df['Time Stamp'], format='%d/%m/%Y %H:%M:%S:%f').dt.strftime('%Y-%W')

for i, x in df.groupby(ts):
   x.to_csv('{}.csv'.format(i), index=False)

假设Time Stampdatetime数据类型:

df.groupby(pd.Grouper(key='Time Stamp', freq='W')) \
  .apply(lambda x: x.to_csv(r"/path/to/{}W{}.csv".format(x.name.year,x.name.week)))

相关问题 更多 >