繁体   English   中英

在熊猫中索引日期时间列

[英]Indexing datetime column in pandas

我在python中导入了一个csv文件。 然后,我将第一列更改为日期时间格式。

datetime                  Bid32    Ask32

2019-01-01 22:06:11.699  1.14587  1.14727  
2019-01-01 22:06:12.634  1.14567  1.14707  
2019-01-01 22:06:13.091  1.14507  1.14647  

我看到了索引第一列的三种方法。

df.index = df.datetime
del datetime

要么

df.set_index('datetime', inplace=True)

df.set_index(pd.DatetimeIndex('datetime'), inplace=True)

我的问题是关于第二和第三种方式。 为什么在某些来源中他们将pd.DatetimeIndex()df.set_index() (如第三代码),而第二代码就足够了?

如果您不使用to_datetime()更改'datetime'列:

df = pd.DataFrame(columns=['datetime', 'Bid32', 'Ask32'])
df.loc[0] = ['2019-01-01 22:06:11.699', '1.14587', '1.14727']

df.set_index('datetime', inplace=True)  # option 2
print(type(df.index))

结果: pandas.core.indexes.base.Index

df = pd.DataFrame(columns=['datetime', 'Bid32', 'Ask32'])
df.loc[0] = ['2019-01-01 22:06:11.699', '1.14587', '1.14727']

df.set_index(pd.DatetimeIndex(df['datetime']), inplace=True)  # option 3
print(type(df.index))

结果: pandas.core.indexes.datetimes.DatetimeIndex

因此,使用pd.DatetimeIndex()的第三个pd.DatetimeIndex()使它成为实际的日期时间索引,这正是您想要的。

说明文件:

熊猫索引

熊猫.DatetimeIndex

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM