我不确定发生了什么,但是我的代码今天可以正常工作,但不是可以。我有一个要单独导入并放入列表的项目的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)
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]
“ IndexError:索引8超出轴8的大小8”
我同意@Bill CX,听起来您正在尝试访问不存在的列。尽管我无法重现您的错误,但我有一些想法可能会帮助您前进。