2017-06-01 511 views
1

试图在格式YYYY-WW解析日期为Timestamp但这只是得到一年的开始日期,就像这样:解析YYYY-WW到时间戳日期时间在大熊猫

In [11]: pd.to_datetime('2015-09', format='%Y-%W') 
Out[11]: Timestamp('2015-01-01 00:00:00') 

这是预期的行为?如果是这样,我怎么能产生“第一天开始”?

回答

0

您需要同时指定星期:

print (pd.to_datetime('2015-09' + '-0', format='%Y-%W-%w')) 
2015-03-08 00:00:00 

print (pd.to_datetime('2015-09' + '-1', format='%Y-%W-%w')) 
2015-03-02 00:00:00 

print (pd.to_datetime('2015-09' + '-2', format='%Y-%W-%w')) 
2015-03-03 00:00:00 

更多信息是here

1

1.行为没问题。

pd.to_datetime('2015-09', format='%Y-%W', dayfirst='True') 

Timestamp('2015-01-01 00:00:00') 

2.你可以试试这个。

pd.to_datetime([1, 2, 3], unit='D', origin=pd.Timestamp('1960-01-01')) 

DatetimeIndex(['1960-01-02', '1960-01-03', '1960-01-04'], type='datetime64[ns]', freq=None)