0
我工作的一個大熊貓據幀,我的專欄之一是日期(年月日),另一種是一個小時(HH:MM),我想將兩者連接起來列一個時間戳或datetime64列,以便稍後將該列用作索引(對於時間序列)。這裏的情況是:連接兩個數據幀列作爲一個時間戳
你有什麼想法?經典pandas.to_datetime()似乎只有在列包含小時只工作,每天只和年僅...等...
我工作的一個大熊貓據幀,我的專欄之一是日期(年月日),另一種是一個小時(HH:MM),我想將兩者連接起來列一個時間戳或datetime64列,以便稍後將該列用作索引(對於時間序列)。這裏的情況是:連接兩個數據幀列作爲一個時間戳
你有什麼想法?經典pandas.to_datetime()似乎只有在列包含小時只工作,每天只和年僅...等...
設置
df
Out[1735]:
id date hour other
0 1820 20140423 19:00:00 8
1 4814 20140424 08:20:00 22
解決方案
import datetime as dt
#convert date and hour to str, concatenate them and then convert them to datetime format.
df['new_date'] = df[['date','hour']].astype(str).apply(lambda x: dt.datetime.strptime(x.date + x.hour, '%Y%m%d%H:%M:%S'), axis=1)
df
Out[1756]:
id date hour other new_date
0 1820 20140423 19:00:00 8 2014-04-23 19:00:00
1 4814 20140424 08:20:00 22 2014-04-24 08:20:00
什麼是這裏的2列dtypes?如果第一列是一個STR然後'pd.to_datetime(DF [ '日期'] + DF [ '時間'],格式= '%Y%米%d%H:%M:%S')'應該工作 – EdChum
可能重複[組合日期和時間列使用Python熊貓](http://stackoverflow.com/questions/17978092/combine-date-and-time-columns-using-python-pandas) – IanS
對不起,我沒有'提及: 'date'列是'int','hour'列已經是'datetime.time' – plalanne