首页 > 解决方案 > 在 Python 中将 yyyy-mm-dd 转换为 yyyy-ww

问题描述

我正在尝试转换yyyy-mm-ddyyyy-ww.

这是如何实现以下数据框的:

dates = {'date': ['2015-02-04','2016-03-05']}

df = pd.DataFrame(dates, columns=['date'])

print(df)
0   2015-02-04
1   2016-03-05
dtype: datetime64[ns]

我试过使用

YW = pd.to_datetime(df, format='%Y%W')

然而没有运气。

标签: pythonpandas

解决方案


使用to_datetime名为year,monthday日期时间的列,并Series.dt.strftime为自定义格式添加:

YW = pd.to_datetime(df).dt.strftime('%Y%W')
print (YW)
0    201505
1    201609
dtype: object

如果可能,其他列仅按列表过滤:

YW = pd.to_datetime(df[['year','month','day']]).dt.strftime('%Y%W')

编辑:

YW = pd.to_datetime(df['date']).dt.strftime('%Y%W')
print (YW)
0    201505
1    201609
Name: date, dtype: object

推荐阅读