无法通过Pandas将Excel字段导入Python-索引超出范围错误

问题描述 投票:1回答:3

我不确定发生了什么,但是我的代码今天可以正常工作,但不是可以。我有一个要单独导入并放入列表的项目的Excel电子表格。但是,我收到“ IndexError:索引8超出轴8的大小8”的错误,Google搜索没有为我解决这个问题。任何帮助表示赞赏。我的Excel工作表中有以下字段:id,funding_end,关键字,pi,summaryurl,htmlabstract,abstract,project_num,title。不知道我在想什么...

import pandas as pd

dataset = pd.read_excel('new_ahrq_projects_current.xlsx',encoding="ISO-8859-1")
df = pd.DataFrame(dataset)
cols = [0,1,2,3,4,5,6,7,8]
df = df[df.columns[cols]]

tt = df['funding_end'] = df['funding_end'].astype(str)
tt = df.funding_end.tolist()
for t in tt:
   allenddates.append(t)

bb = df['keywords'] = df['keywords'].astype(str)
bb = df.keywords.tolist()
for b in bb:
   allkeywords.append(b)

uu = df['pi'] = df['pi'].astype(str)
uu = df.pi.tolist()
for u in uu:
   allpis.append(u)

vv = df['summaryurl'] = df['summaryurl'].astype(str)
vv = df.summaryurl.tolist()
for v in vv:
   allsummaryurls.append(v)

ww = df['htmlabstract'] = df['htmlabstract'].astype(str)
ww = df.htmlabstract.tolist()
for w in ww:
   allhtmlabstracts.append(w) 

xx = df['abstract'] = df['abstract'].astype(str)
xx = df.abstract.tolist()
for x in xx:
   allabstracts.append(x) 

yy = df['project_num'] = df['project_num'].astype(str)
yy = df.project_num.tolist()
for y in yy:
   allprojectnums.append(y)    

zz = df['title'] = df['title'].astype(str)
zz = df.title.tolist()

for z in zz:
   alltitles.append(z) 
python excel pandas numpy text
3个回答
3
投票

IndexError:索引超出范围表示您正在尝试插入或访问超出其限制或范围的something

每次,当您使用Panadas加载test.xlx,test.csv或test.xlsx文件时,例如:

data_set = pd.read_excel('file_example_XLS_10.xls', encoding="ISO-8859-1")

对于每个人来说,找到一个DataFrame的columnlength]更好,这将帮助您在使用large Data_Sets时继续前进。例如

import pandas as pd

data_set = pd.read_excel('file_example_XLS_10.xls', encoding="ISO-8859-1") 
data_frames = pd.DataFrame(data_set)

print("Length of Columns:", len(data_frames.columns))

这将为您提供Excel电子表格的确切的列数

。然后,您可以相应地指定数据帧:

列长:8

cols = [0,1,2,3,4,5,6,7]


2
投票

“ IndexError:索引8超出轴8的大小8”


1
投票

我同意@Bill CX,听起来您正在尝试访问不存在的列。尽管我无法重现您的错误,但我有一些想法可能会帮助您前进。

© www.soinside.com 2019 - 2024. All rights reserved.