在Python中创建'week of'变量

时间:2016-01-05 19:43:40

标签: python

我有一些看起来像这样的数据。我想添加一个week_id日期列,其中week_id代表本周开始的星期日。我是python的新手(来自R)所以我会使用as.Datecut函数来做这样的事情。但到目前为止我在python文档中看到的只是添加了一周的数字。

customer    date
xxxx    12/1/15
xxxx    12/3/15
xxxx    12/7/15
xxxx    12/13/15
yyyy    12/14/15
yyyy    12/15/15
yyyy    12/21/15

我希望输出看起来像这样

customer    date    week_id
xxxx      12/1/15   11/29/15
xxxx      12/3/15   11/29/15
xxxx      12/7/15   12/6/15
xxxx      12/13/15  12/13/15
yyyy      12/14/15  12/13/15
yyyy      12/15/15  12/13/15
yyyy      12/21/15  12/20/15

1 个答案:

答案 0 :(得分:2)

from datetime import datetime, timedelta
day = '12/01/15'
date = datetime.strptime(day, '%m/%d/%y')
start_of_week = date - timedelta(days = (date.weekday() + 1) % 7)
print(start_of_week.strftime('%m/%d/%Y'))
  

2015年11月29日