dataframe中的列看起来像DD/MM/YYYY格式。
我想把它切片,重新排列到MM/DD/YYYY(用于计算)
我试过:
import pandas as pd
from io import StringIO
csvfile = StringIO("""
DD/MM/YYYY
01/05/2020
21/02/2021
19/06/2021
05/06/2021
11/06/2021
10/05/2021
")
df = pd.read_csv(csvfile, sep = ',', engine='python')
df['DD/MM/YYYY'] = df['DD/MM/YYYY'].astype(str)
df['MM/DD/YYYY'] = df['DD/MM/YYYY'][3:5] + '/' + df['DD/MM/YYYY'][:2] + '/' + df['DD/MM/YYYY'][-4:]
# df['MM/DD/YYYY'] = pd.to_datetime(df['DD/MM/YYYY'][3:5] + '/' + df['DD/MM/YYYY'][:2] + '/' + df['DD/MM/YYYY'][-4:])
print (df)
但它不起作用。什么才是正确的写法呢?
1条答案
按热度按时间svmlkihl1#
使用
.str
:如果可能的话,你可以按照
format='%d/%m/%Y'
中指定的原始格式解析datetime,然后添加Series.dt.strftime
: