2017-03-05 90 views
1

我想从熊猫数据框中的数据中提取一周数,但从具体日期开始。Python从特定日期提取一周数

例如从4月4日:

20/04/2010 --> 1

27/04/2010 --> 2

04/05/2010 --> 3

等..

任何想法?

预先感谢您!

+0

,你可以尝试从年初得到天数由7把它我不确定它是否会始终给出正确的数字。 – atayenel

+0

这一周是从指定日期开始还是在指定日期的第一天? –

+0

它从指定日期开始。 – Sheron

回答

2

7只是计算两个日期,除天之间的差异,并添加1:

from datetime import date 

origin = date(2010, 4, 20) 

def week_number_from(my_date, origin): 
    return (my_date - origin).days/7 + 1 
+0

谢谢埃里克!有用! – Sheron

+0

@Giada如果这回答你的问题,考虑upvoting答案,并选择它作为您选择的答案,点击绿色的检查。 – piRSquared

1

使用熊猫to_datetime解析您的日期栏,如果它是不是已经在日期时间格式。

http://pandas.pydata.org/pandas-docs/stable/generated/pandas.to_datetime.html

然后使用日期时间的方法工作日。

https://docs.python.org/2/library/datetime.html

my_dataframe['week_nums'] = pandas.to_datetime(my_dataframe['date_col']).weekday() 

对不起,我看见你想工作日从具体的日期,将更新的答案...很容易计算出2个日期之间的差异。

+0

谢谢!但是这显示从1月1日开始的一周数字。:/ – Sheron