如何引用不在索引中的列?

2024-06-26 14:26:22 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个这样的数据帧。你知道吗

             Max         Min            Open     OpenA
Date                
2017.10.18  1.18050 1.17858 1.17872 1.18028
2017.10.19  1.18575 1.17676 1.17804 1.18565
2017.10.20  1.18575 1.17621 1.17642 1.18532
2017.10.23  1.17770 1.17245 1.17281 1.17763
2017.10.24  1.17924 1.17423 1.17430 1.17866

我想参考data['Date']列。但我有个错误:

KeyError: 'Date'

干杯!你知道吗


Tags: 数据datadate错误openminmaxkeyerror
2条回答

这实际上不是column,而是index。所以使用data.index来获取值,而不改变数据帧的当前结构。你知道吗

您可以进一步使用data.reset_index()使其成为列。你知道吗

注意-不要使用data.reset_index(drop=True),因为这样会删除当前索引,甚至不会使其成为列。你知道吗

可以使用reset_index,然后将其视为列:

df = df.reset_index()
df['date']

或者

您可以使用df.index.tolist()。这将返回值。你知道吗

例如:

In [2918]: df
Out[2918]: 
            emp_id
date              
10/1/2018  staff_1
10/1/2018  staff_2
10/1/2018  staff_3

In [2922]: df.index.tolist()
Out[2922]: ['10/1/2018', '10/1/2018', '10/1/2018']

或者

In [2924]: df = df.reset_index()
In [2926]: df['date']
Out[2926]: 
0    10/1/2018
1    10/1/2018
2    10/1/2018

相关问题 更多 >