Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将pandas datetime64 pandas dataframe列设置为不带时间组件的datetimeindex_Python_Pandas_Indexing - Fatal编程技术网

Python 将pandas datetime64 pandas dataframe列设置为不带时间组件的datetimeindex

Python 将pandas datetime64 pandas dataframe列设置为不带时间组件的datetimeindex,python,pandas,indexing,Python,Pandas,Indexing,从HDF5文件导入数据后,我的股票数据索引消失 我的数据框“Date”中的一列是Datetime64。如何将此日期列转换为datetimeindex列,但末尾没有时间部分 因此,像这样切片数据帧data.ix[“2016-01-01”:“2016-02-06”]是可行的。IIUC,从样本数据帧开始,如下所示: Date x 0 2016-01-01 20:01 1 1 2016-01-02 20:02 2 你可以做: df = df.set_index(

从HDF5文件导入数据后,我的股票数据索引消失

我的数据框“Date”中的一列是Datetime64。如何将此日期列转换为
datetimeindex
列,但末尾没有时间部分


因此,像这样切片数据帧
data.ix[“2016-01-01”:“2016-02-06”]
是可行的。

IIUC,从样本数据帧开始,如下所示:

               Date  x
0  2016-01-01 20:01  1
1  2016-01-02 20:02  2
你可以做:

df = df.set_index(pd.DatetimeIndex(df['Date']).date)
它仅返回包含日期部分的
DatetimeIndex

                        Date  x
2016-01-01  2016-01-01 20:01  1
2016-01-02  2016-01-02 20:02  2

使用
set_index
将列转换为索引。您无需调整时间部分即可使it正常工作

df = pd.DataFrame({
    'ts': pd.date_range('2015-12-20', periods=10, freq='12h'),
    'stuff': np.random.randn(10)
    })
print(df)

      stuff                  ts
0  0.942231 2015-12-20 00:00:00
1  1.229604 2015-12-20 12:00:00
2 -0.162319 2015-12-21 00:00:00
3 -0.142590 2015-12-21 12:00:00
4  1.057184 2015-12-22 00:00:00
5 -0.370927 2015-12-22 12:00:00
6 -0.358605 2015-12-23 00:00:00
7 -0.561857 2015-12-23 12:00:00
8 -0.020714 2015-12-24 00:00:00
9  0.552764 2015-12-24 12:00:00

print(df.set_index('ts').ix['2015-12-21':'2015-12-23'])

                        stuff
ts                           
2015-12-21 00:00:00 -0.162319
2015-12-21 12:00:00 -0.142590
2015-12-22 00:00:00  1.057184
2015-12-22 12:00:00 -0.370927
2015-12-23 00:00:00 -0.358605
2015-12-23 12:00:00 -0.561857

桑斯·法比奥,这似乎奏效了。考虑到许多研究领域可能有许多数据读数与同一日期相同,是否可以将另一个字段设置为索引和日期,并同时访问它们?比如说温度-站点,然后是日期作为索引。或者股票:股票名称,然后是日期?很高兴这有帮助。但请考虑再问另一个问题。最后,如果我的回答对你的目的有效,请考虑接受它来帮助其他用户解决同样的问题。