在Python中将yyyy-mm-dd转换为yyyy-ww

时间:2019-05-23 07:13:36

标签: python pandas

我正在尝试将<EditText ... android:inputType="textMultiLine" <!-- Multiline input --> ... android:lines="8" <!-- Total Lines prior display --> android:minLines="6" <!-- Minimum lines --> android:gravity="top|left" <!-- Cursor Position --> android:maxLines="10" <!-- Maximum Lines --> android:layout_height="wrap_content" <!-- Height determined by content --> android:layout_width="match_parent" <!-- Fill entire width --> android:scrollbars="vertical" <!-- Vertical Scroll Bar --> /> 转换为yyyy-mm-dd

如何为以下数据帧实现此目标:

yyyy-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]

但是没有运气。

1 个答案:

答案 0 :(得分:9)

使用to_datetime处理名为yearmonthday的列作为日期时间,并添加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