我有一组时间序列数据,如[2015-01-23,2015-01-04,2015-01-03]
。我想像这样处理数据。我设置了base date
2015-01-01
并计算了日期超过base date
的天数。例如,2015-01-23
超过2015-01-01
22天,2015-01-04
超过2015-01-01
3天,2015-01-03
超过2015-01-01
2天。然后我可以得到矢量[22,3,2],我可以像0~1
那样将矢量缩放到[1,0.05,0]
。但我不知道如何实现我的想法,因为月份的长度不固定。与日期2015-07-2
一样,我如何计算结果?
答案 0 :(得分:4)
您应该使用datetime
内置库。
from datetime import datetime
base_date = "2015-01-01"
data = ["2015-01-23", "2015-01-04", "2015-01-03"]
format = "%Y-%m-%d"
base = datetime.strptime(base_date, format)
diff = [(datetime.strptime(d, format) - base).days for d in data]
# diff == [22, 3, 2]