KeyError 尽管在 read_csv() 处定义了名称
KeyError despite definition of names at read_csv()
我正在尝试打印 pandas.dataframe
的一列。然而,尽管我在 pandas.read_csv()
.
中使用 names
参数明确指定了列名,但它一直失败
给定以下代码:
data = pd.read_csv(filename, sep='\t',
names=['Symbol', 'Date', 'Type', 'Value'],
index_col=[0])
print(data)
产生这个:
Date Type Value
Symbol
benchmark 2011-12-01 dax 1.422847e+08
benchmark 2011-12-02 dax 1.958363e+08
benchmark 2011-12-05 dax 1.922807e+08
benchmark 2011-12-06 dax 1.477339e+08
benchmark 2011-12-07 dax 1.354372e+08
但是这个:
打印(数据['Date'])
产生这个:
KeyError: 'Date'
据我所知,我正在做与 McKinney 在第 123 页的 Python for Data Analysis
中描述的完全相同的事情。除了那个错误之外我没有得到任何输出。
数据格式如下:
Symbol\t2015-01-01\tType\tFloat_Value
我错过了什么?
确保您的列名中没有空格
您可以尝试使用 sep='\s+'
代替:
data = pd.read_csv(filename, sep='\s+',
names=['Symbol', 'Date', 'Type', 'Value'],
index_col=[0])
我正在尝试打印 pandas.dataframe
的一列。然而,尽管我在 pandas.read_csv()
.
names
参数明确指定了列名,但它一直失败
给定以下代码:
data = pd.read_csv(filename, sep='\t',
names=['Symbol', 'Date', 'Type', 'Value'],
index_col=[0])
print(data)
产生这个:
Date Type Value
Symbol
benchmark 2011-12-01 dax 1.422847e+08
benchmark 2011-12-02 dax 1.958363e+08
benchmark 2011-12-05 dax 1.922807e+08
benchmark 2011-12-06 dax 1.477339e+08
benchmark 2011-12-07 dax 1.354372e+08
但是这个: 打印(数据['Date'])
产生这个:
KeyError: 'Date'
据我所知,我正在做与 McKinney 在第 123 页的 Python for Data Analysis
中描述的完全相同的事情。除了那个错误之外我没有得到任何输出。
数据格式如下:
Symbol\t2015-01-01\tType\tFloat_Value
我错过了什么?
确保您的列名中没有空格
您可以尝试使用 sep='\s+'
代替:
data = pd.read_csv(filename, sep='\s+',
names=['Symbol', 'Date', 'Type', 'Value'],
index_col=[0])