In Pandas to_datetime
+ Series.dt.strftime
müssen - wenn Bedarf Ausgabe als strings
:
df_picru = pd.DataFrame({'DATE_H_REAL':['02/02/2016 16:16',
'02/02/2016 16:17', np.nan]})
df_picru['DATE_H_REAL'] = pd.to_datetime(df_picru['DATE_H_REAL'])
df_picru['day'] = df_picru['DATE_H_REAL'].dt.strftime('%Y-%m-%d')
df_picru['hour'] = df_picru['DATE_H_REAL'].dt.strftime('%H:%M:%S')
print (df_picru)
DATE_H_REAL day hour
0 2016-02-02 16:16:00 2016-02-02 16:16:00
1 2016-02-02 16:17:00 2016-02-02 16:17:00
2 NaT NaT NaT
print (type(df_picru.loc[0, 'day']))
<class 'str'>
print (type(df_picru.loc[0, 'hour']))
<class 'str'>
print (df_picru['DATE_H_REAL'].dtypes)
datetime64[ns]
Oder Series.dt.date
+ Series.dt.time
bei Bedarf Ausgabe python date
und python time
:
df_picru['DATE_H_REAL'] = pd.to_datetime(df_picru['DATE_H_REAL'])
df_picru['day'] = df_picru['DATE_H_REAL'].dt.date
df_picru['hour'] = df_picru['DATE_H_REAL'].dt.time
print (df_picru)
DATE_H_REAL day hour
0 2016-02-02 16:16:00 2016-02-02 16:16:00
1 2016-02-02 16:17:00 2016-02-02 16:17:00
2 NaT NaN NaN
print (type(df_picru.loc[0, 'day']))
<class 'datetime.date'>
print (type(df_picru.loc[0, 'hour']))
<class 'datetime.time'>
print (df_picru['DATE_H_REAL'].dtypes)
datetime64[ns]
Was ist der Fehler, den Sie bekommen? – mtkilic
strptime() Argument 1 muss str sein, nicht Serie –