我有一些看起来像这样的数据。我想添加一个week_id
日期列,其中week_id
代表本周开始的星期日。我是python的新手(来自R)所以我会使用as.Date
和cut
函数来做这样的事情。但到目前为止我在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
答案 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日