2017-03-03 110 views
0

如果我们使用下面的方法,我们可以发现周一本周开始日期如何使用python将日期转换为每周级别并将周日用作周开始日期?

df['week_start'] = df['myday'].dt.to_period('W').apply(lambda r: r.start_time) 

的to_period(“W”)将默认使用周一本周开始日期。无论如何,我们可以修改这个函数来改变它来计算周日作为一周的开始日期吗?所以每个日期都会转换为相应的星期日,以便将数据分组为每周级别。

例如1/1/2017将仍然是1/1/2017,但1/2/2017到1/7/2017将转换为1/1/2017。

+1

http://stackoverflow.com/questions/17016051/need-sunday-as-the-first-day-of-本周 – systemjack

+0

[需要周日作为本周的第一天]可能的重复(http://stackoverflow.com/questions/17016051/need-sunday-as-the-first-day-of-the-week) –

+0

所以你想'xyzzy(“2017-03-04”) - > 6'? – Blacksilver

回答

0

我修改以下列方式计算返回,而不是周一周日

df['week_start'] = (df['myday']+timedelta(days=1)).dt.to_period('W').apply(lambda r: r.start_time)-timedelta(days=1) 
相关问题