为什么我在通过熊猫访问MySQL时获得Timedelta类型



MySQL中的数据类型是time,但是当我通过pandas访问它时,数据帧中的类型变得Timedelta。 我的代码是

df = pandas.read_sql_query(“select * from table1”, con=newConnect)

因为timedelta在Pandas/Numpy中最接近MySQL的time数据类型。

请考虑以下数据帧:

In [306]: df
Out[306]:
time
0  10:11:12
1  22:23:24
In [307]: df.dtypes
Out[307]:
time    object
dtype: object

您可以将其转换为datetime(这将需要日期部分(:

In [308]: pd.to_datetime(df.time)
Out[308]:
0   2018-06-19 10:11:12
1   2018-06-19 22:23:24
Name: time, dtype: datetime64[ns]  # <---- note the dtype

timedelta

In [309]: pd.to_timedelta(df.time)
Out[309]:
0   10:11:12
1   22:23:24
Name: time, dtype: timedelta64[ns]  # <---- note the dtype

最新更新