大熊猫。 pd.read_csv KeyError:不在索引错误中

时间:2017-04-18 18:00:32

标签: python python-3.x csv pandas

我正在使用包含超过百万条目的CSV文件。我正在尝试将每个候选人的数据作为单独的列读取。我能够解析第一个候选人的数据,但是当我到达下一个候选人时,我得到错误['cand_nm']而不是索引。

以下是文件的链接:Link to data file

%matplotlib
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np

第一位候选人

reader_bachmann = pd.read_csv('P00000001-ALL.csv', squeeze=True, low_memory=False, nrows=411 )
print(reader_bachmann)
cand_bachmann = reader_bachmann[["cand_nm"]] 
print(cand_bachmann)

第二位候选人

reader_romney = pd.read_csv('P00000001-ALL.csv', skiprows=range(0,411) ,  na_filter =True, low_memory=False)
print(reader_romney)
cand_romney = reader_romney[["cand_nm"]] 
print(cand_romney)

错误消息

KeyError: "['cand_nm'] not in index"

1 个答案:

答案 0 :(得分:2)

当您使用skip_rows时,会丢失标题。所以reader_romney的标题现在是行号412.如果这是你想要读取文件的方式,你需要将标题行存储到字符串列表中,然后将该列表作为{{1}传递} kwarg。例如

names=