Python 将Datetime列拆分为日期和时间列
嘿,我已经看到了一些关于这个的问题,但是,我还没有成功地解决我的问题 我有一个单列时间格式: 2014-07-17 00:59:27.400189+00 我想把它分成两列,日期和时间 我曾经Python 将Datetime列拆分为日期和时间列,python,datetime,pandas,split,Python,Datetime,Pandas,Split,嘿,我已经看到了一些关于这个的问题,但是,我还没有成功地解决我的问题 我有一个单列时间格式: 2014-07-17 00:59:27.400189+00 我想把它分成两列,日期和时间 我曾经 posts['Date']=pd.to_datetime(posts['Time'],format='%Y-%m-%d %H:%M:%S') 然而,我得到了一个错误 ValueError: unconverted data remains: 400189+00 我不确定最后一点信息的标签是什么。我尝
posts['Date']=pd.to_datetime(posts['Time'],format='%Y-%m-%d %H:%M:%S')
然而,我得到了一个错误
ValueError: unconverted data remains: 400189+00
我不确定最后一点信息的标签是什么。我尝试添加%o,但收到另一个错误
ValueError: 'o' is a bad directive in format '%Y-%m-%d %H:%M:%S.%o'
关于如何将这两个值分成两列,有什么想法吗
谢谢 以下几点对我很有用:
In [18]:
import pandas as pd
df = pd.DataFrame({'Date':['2014-07-17 00:59:27.400189+00']})
df.dtypes
Out[18]:
Date object
dtype: object
In [19]:
df['Date'] = pd.to_datetime(df['Date'])
df.dtypes
Out[19]:
Date datetime64[ns]
dtype: object
In [20]:
df['Time'],df['Date']= df['Date'].apply(lambda x:x.time()), df['Date'].apply(lambda x:x.date())
df
Out[20]:
Date Time
0 2014-07-17 00:59:27.400189
[1 rows x 2 columns]
这对我有用
import pandas as pd
data = pd.DataFrame({'Date':['2014-07-17 00:59:27.400189+00']})
data['Dates'] = pd.to_datetime(data['Date'], format='%Y:%M:%D').dt.date
data['Hours'] = pd.to_datetime(data['Date'], format='%Y:%M:%D').dt.time
你必须
print(data)
Dates Hours
2014-07-17 00:59:27.400189+00
这为我提供了对象类型日期和时间。所需列应为日期格式如果没有格式字符串,它是否可以工作:
posts['date']=pd.to_datetime(posts['Time'])
?是否尝试过%Y-%m-%d%H:%m:%S.%f
格式?
import pandas as pd
data = pd.DataFrame({'Date':['2014-07-17 00:59:27.400189+00']})
data['Dates'] = pd.to_datetime(data['Date'], format='%Y:%M:%D').dt.date
data['Hours'] = pd.to_datetime(data['Date'], format='%Y:%M:%D').dt.time