Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用xlsxwriter将数据框中的数据写入excel工作表时出错_Python_Python 3.x_Pandas_Xlsxwriter - Fatal编程技术网

Python 使用xlsxwriter将数据框中的数据写入excel工作表时出错

Python 使用xlsxwriter将数据框中的数据写入excel工作表时出错,python,python-3.x,pandas,xlsxwriter,Python,Python 3.x,Pandas,Xlsxwriter,我有一个数据框,我正试图使用xlsxwriter模块将其写入excel工作表 下面给出了我的数据帧的外观: prod_id,prod_name,price,units prod_a,apple,100,10 prod_b,mango,10,123 prod_c,orange,12,14 我正在尝试将上述数据框写入excel,如下所示: # Pulling data for the sheet row = 1 col = 0 # Iterate through the array you ha

我有一个数据框,我正试图使用xlsxwriter模块将其写入excel工作表

下面给出了我的数据帧的外观:

prod_id,prod_name,price,units
prod_a,apple,100,10
prod_b,mango,10,123
prod_c,orange,12,14
我正在尝试将上述数据框写入excel,如下所示:

# Pulling data for the sheet
row = 1
col = 0

# Iterate through the array you have and unpack the tuple at each index
for elm1, elm2, elm3, elm4 in df:
    worksheet.write(row, col, elm1, number_format)
    worksheet.write(row, col + 1, elm2, number_format)
    worksheet.write(row, col + 2, elm3, number_format)
    worksheet.write(row, col + 3, elm4, number_format)
    row += 1
它抛出了一个错误

for elm1, elm2, elm3, elm4 in df:
ValueError: too many values to unpack (expected 4)

错误是因为,您正在使用多个变量循环
df
。相反,您应该只使用一个变量

如果我理解正确,您可以像这样调整循环:

for row in df.itertuples():
    elm1,elm2,elm3,elm4 = row[1], row[2], row[3], row[4]
    worksheet.write(row, col, elm1, number_format)
    worksheet.write(row, col + 1, elm2, number_format)
    worksheet.write(row, col + 2, elm3, number_format)
    worksheet.write(row, col + 3, elm4, number_format)
    row += 1
这应该行得通