我想把二进制矩阵导出到excel。。 我在用我从Write list of lists to excel file using xlwt学到的东西
我有个尺寸误差 我有一个二进制矩阵2221x9947和以下代码:
def wrapper(fn, *args, **kwargs):
def wrapped():
return fn(*args, **kwargs)
return wrapped
def int_to_str_matriz(matriz):
for i in xrange(len(matriz)):
for j in xrange(len(matriz[i])):
matriz[i][j] = str(matriz[i][j])
return matriz
def escreve_matriz_xml(rows, sheet):
for i, row in enumerate(rows):
for j, col in enumerate(row):
sheet.write(i, j, col)
def exportar_matriz(matriz):
book = xlwt.Workbook()
name = "matrizbinaria.xls"
sheet1 = book.add_sheet("teste", cell_overwrite_ok=True)
exportar = wrapper(escreve_matriz_xml(matriz, sheet1))
book.save(name)
book.save(TemporaryFile())
我首先使用mb = int_to_str_matriz(matriz)
将矩阵上的int转换为str,然后将新矩阵传递给exportar_matriz(mb)
我试着用这个,然后
^{pr2}$如果我尝试另一个选项,在我引用的主题上,使用
def escreve_matriz_xml(rows, sheet):
rows = [', '.join(row) for row in rows]
for i, strrow in enumerate(rows):
sheet.write(i, 0, strrow)
它是有效的,问题是这样是没有用的,因为我需要每个列都有(0,1),这样我就可以分析数据了。。 有什么解决办法吗? 我在没有str转换的情况下尝试了,但得到了同样的错误。。。在
您将无法使用} 、^{} 、或{a3}等库,或者不借助库)。在
xlwt
执行此操作。相反,请考虑导出为.csv
格式(使用^{.xls
(excel2003)文件类型限制为65536行和256 columns,因此无法使用xlwt
导出2221x9947矩阵(除非先将其转换为不同的形状)。对以后的文件类型,如.xlsx
(excel2007)取消了此限制,但xlwt
库当前不支持此格式。在相关问题 更多 >
编程相关推荐