我正在嘗試從 csv 文件上傳一些數(shù)據(jù)并找到日期和月份的值互換。下面給出了數(shù)據(jù)的外觀:id,date1001,09/10/20181002,20/09/20181003,09/05/2018所有日期都來(lái)自九月,但正如所見(jiàn),它們以不同的格式互換。我正在使用下面的轉(zhuǎn)換為日期時(shí)間df['date'] = pd.to_datetime(df['date']).dt.strftime('%d/%m/%Y')
2 回答

白板的微信
TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
Pandas 處理您的樣本數(shù)據(jù)沒(méi)有任何問(wèn)題,因?yàn)樗@然采用美國(guó)表示法,除了在'20/09/2018'where20不可能是一個(gè)月的情況下,pandas 也沒(méi)有問(wèn)題。
但是,如果輸入包含例如'10/09/2018'(如評(píng)論中提到的),則無(wú)法區(qū)分日期和月份,除非假定使用美國(guó)符號(hào),或者事先知道絕對(duì)所有日期都在 9 月。
由于后者似乎是這種情況,您可以這樣做
df['date'].map(lambda x: pd.datetime(x.year, x.day, x.month)
if (x.month != 9) & (x.day == 9)
else x)
0 2018-09-10
1 2018-09-20
2 2018-09-05
添加回答
舉報(bào)
0/150
提交
取消