我有一個關于使用資料框架進行日期轉換的類似問題。
我的資料框架有兩個日期字串列,hiredate和end_date,分別具有不同的日期格式,DD-MMM-YYY和MMM-YY。
列end_date沒有DD來表示日期,所以它應該被添加并設定為該月的最后一天。
下面是輸入資料框的例子:
empno ename hiredate end_date
1 sreenu 17-Jun-2021 May-22
而這是經過end_date轉換后的預期輸出:
empno ename hiredate end_date
1 sreenu 17-Jun-2021 2022-5-31
我想創建一個方法/函式來識別資料框架中的所有日期列,然后將其轉換成
資料框中的所有日期列,然后將其轉換為YYYY-MM-DD格式。
uj5u.com熱心網友回復:
你可以根據格式end_date轉換為資料時間'%B-%y'并添加一個MonthEnd(0)偏移量:
輸入資料:
>>> df
職務名稱 雇用日期 結束日期
0 1 sreenu 17-2021 May-22
列的轉換:
>>> df['end_date'/span>] = pd.to_datetime(
df['end_date'], format='%b-%y' >。
).add(pd.offsets.MonthEnd(0)
輸出結果:
>>> df
職務名稱 雇用日期 結束日期
0 1 sreenu 17-2021 2022-5-31
uj5u.com熱心網友回復:
你可以使用評論中指出的解決方案-
pd.to_datetime(df['end_date'], format='%b-%y') 。 apply(lambda x: date(x.year, x.month, calendar.monthrange(x.year, x.month)[-1] )
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/332434.html
標籤:
