2017-11-11 116 views
-1

我需要一些幫助我現在有一個數據框,它有兩個單獨的列,以數字格式表示年份和月份,我只想將這些列轉換爲日期。 E.g 12-2017精梳年月大熊只的月份列

有誰知道如何做到這一點? 任何幫助將不勝感激!

回答

1

使用pd.to_datetime

設置

df = pd.DataFrame(dict(
    year=[2001, 2003, 2014, 1996], 
    month=[5, 12, 2, 7], 
    other=list('WXYZ') 
)) 

df 

    month other year 
0  5  W 2001 
1  12  X 2003 
2  2  Y 2014 
3  7  Z 1996 

解決方案

df = df.assign(Date=pd.to_datetime(df[['year', 'month']].assign(day=1))) 

df 

    month other year  Date 
0  5  W 2001 2001-05-01 
1  12  X 2003 2003-12-01 
2  2  Y 2014 2014-02-01 
3  7  Z 1996 1996-07-01 
+0

不幸的是,當我使用上面的代碼,我得到一個錯誤。錯誤狀態「ValueError:額外的鍵已經傳遞給日期時間組合」你有什麼建議如何避免這種情況? – Harry

+0

@Harry試試我的更新 – piRSquared

+0

這樣就擺脫了我的錯誤,但是如何讓我的數據框顯示呢? – Harry