Convierte Pandas Series a DateTime en un DataFrame

Tengo un DataFrame Pandas como abajo

ReviewID ID Type TimeReviewed 205 76032930 51936827 ReportID 2015-01-15 00:05:27.513000 232 76032930 51936854 ReportID 2015-01-15 00:06:46.703000 233 76032930 51936855 ReportID 2015-01-15 00:06:56.707000 413 76032930 51937035 ReportID 2015-01-15 00:14:24.957000 565 76032930 51937188 ReportID 2015-01-15 00:23:07.220000 >>> type(df)  

TimeReviewed es un tipo de serie

 >>> type(df.TimeReviewed)  

He intentado a continuación, pero todavía no cambia el tipo de serie

 import pandas as pd review = pd.to_datetime(pd.Series(df.TimeReviewed)) >>> type(review)  

¿Cómo puedo cambiar df.TimeReviewed a DateTime type y sacar año, mes, día, hora, min, seg por separado? Soy un poco nuevo en Python, gracias por tu ayuda.

No puede: DataFrame columnas DataFrame son Series , por definición. Dicho esto, si realiza el tipo de dtype (el tipo de todos los elementos) datetime, entonces puede acceder a las cantidades que desee a través del .dt ( docs ):

 >>> df["TimeReviewed"] = pd.to_datetime(df["TimeReviewed"]) >>> df["TimeReviewed"] 205 76032930 2015-01-24 00:05:27.513000 232 76032930 2015-01-24 00:06:46.703000 233 76032930 2015-01-24 00:06:56.707000 413 76032930 2015-01-24 00:14:24.957000 565 76032930 2015-01-24 00:23:07.220000 Name: TimeReviewed, dtype: datetime64[ns] >>> df["TimeReviewed"].dt  >>> df["TimeReviewed"].dt.year 205 76032930 2015 232 76032930 2015 233 76032930 2015 413 76032930 2015 565 76032930 2015 dtype: int64 >>> df["TimeReviewed"].dt.month 205 76032930 1 232 76032930 1 233 76032930 1 413 76032930 1 565 76032930 1 dtype: int64 >>> df["TimeReviewed"].dt.minute 205 76032930 5 232 76032930 6 233 76032930 6 413 76032930 14 565 76032930 23 dtype: int64 

Si se queda atascado usando una versión anterior de pandas , siempre puede acceder a los diversos elementos manualmente (nuevamente, después de convertirlo en una Serie datetime-dtyped). Será más lento, pero a veces eso no es un problema:

 >>> df["TimeReviewed"].apply(lambda x: x.year) 205 76032930 2015 232 76032930 2015 233 76032930 2015 413 76032930 2015 565 76032930 2015 Name: TimeReviewed, dtype: int64 

Algunos guiones prácticos:

 hour = df['assess_time'].dt.hour.values[0]