我想将 Excel 工作表中的数据用作 2D 矩阵,但尽管迭代提取的数据,但我遇到了一些错误。
我想将数据集从 excel 加载到 python 代码。我使用了 xlrd 库,在遍历元素后认为,结果是一个数组。虽然我希望有一个二维矩阵。
import xlrd
workbook = xlrd.open_workbook('test1.xlsx')
sheet = workbook.sheet_by_index(0)
N =sheet.nrows
M =sheet.ncols
mat_d = [ [0] * N for _ in range(M)]
mat=[]
for i in range(N):
for j in range(M):
mat.append(sheet.cell(i, j).value)
k = 0
for i in range(N):
for j in range(M):
mat_d[i][j]= mat[k]
k += 1
代码在这里给了我正确的答案,mat_d[1][1] = mat[79],但是当我想在 for 循环中迭代它时,它最终会出现错误:IndexError: list index out of range
import os
import csv
data = []
with open(os.path.join(sys.path[0], file), newline='') as dataset:
reader = csv.reader(dataset)
for row in reader:
rowlist = []
for numeric_string in row:
value = int(numeric_string)
rowlist.append(value)
data.append(rowlist)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句