熊猫:在一列中提供多种日期格式

时间:2020-07-19 20:01:14

标签: python pandas python-datetime

我在一个Pandas系列(列)中有两种日期格式,需要将其标准化为一种格式(mmm dd和mm / dd / YY)

日期

1月3日

1月2日

1月1日

12/31/19

12/30/19

19/12/29

即使Excel也不会将mmm dd格式识别为日期格式。我可以使用str.replace将mmm更改为完全拼写的月份:

df ['Date'] = df ['Date']。str.replace('Jan','January',regex = True)

但是如何添加当前年份?然后如何将2020年1月1日转换为01/01/20?

3 个答案:

答案 0 :(得分:2)

您是否尝试过parse()

from dateutil.parser import parse
import datetime

def clean_date(text):
  datetimestr = parse(text)
  text = datetime.strptime(datetimestr, '%Y%m%d')
  return text

df['Date'] = df['Date'].apply(clean_date)
df['Date'] = pd.to_datetime(df['Date']) 

答案 1 :(得分:0)

如果它在数据框中,请使用此:

from dateutil.parser import parse
import pandas as pd

for i in range(len(df['Date'])):
    df['Date'][i] = parse(df['Date'][i])
df['Date'] = pd.to_datetime(df['Date']).dt.strftime("%d-%m-%Y")

答案 2 :(得分:0)

找到了解决方案(需要使用apply):

<activity ... android:windowSoftInputMode="adjustResize">