MySQL中的数据类型是time
,但是当我用pandas访问它时,dataframe中的类型变成了Timedelta
。
我的代码是
df = pandas.read_sql_query(“select * from table1”, con=newConnect)
最佳答案
因为timedelta
在Pandas/Numpy中最接近MySQL的time
数据类型。
考虑以下 DataFrame:
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
关于python - 为什么我通过pandas访问MySQL时得到Timedelta类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50931416/