如何使用dask将大量的列数据写入Excel文件的列中?

时间:2019-06-28 12:13:07

标签: python dask dask-distributed dask-delayed

我需要一种将包含特定列数据的列表导入excel的方法,但是遇到内存错误,如何使用dask完成此任务,我的系统只有8 GB内存。

我正在从一个巨大的.dat文件(包含文本,如带有行和列的表)中创建一个excel文件(大约2 GB或更多),从.dat文件中获取几列,我知道行号(从结构文件)的列中,我需要提取并创建此数据的列表。

我将从结构化文件中提取单元格值以获取用作列的行号

df=pd.DataFrame()

with open(r"C:/new.dat" ,encoding ="utf-16") as f:
    content = f.readlines()
    f.close()
C = []

c=[]

for k in range(1,sheet.nrows):
    C = []
    C.append(sheet.cell_value(k,0))
    for line in content:
        C.append(line[int(sheet.cell_value(k,1))-1:int(sheet.cell_value(k, 2))]) 
    c.append(C)
    d=iter(c)


#getting memory error from the code below


row = 0
workbook = xlsxwriter.Workbook('table.xlsx')
worksheet = workbook.add_worksheet()
for col, data in enumerate(d):
    worksheet.write_column(row, col, data)
workbook.close()

我想获取没有内存错误的excel文件。

0 个答案:

没有答案