Запись в файл Excel строка за строкой, а не столбец за столбцом - PullRequest
0 голосов
/ 18 апреля 2019

Извините, если приведенный ниже вопрос очень тупой.Я пытаюсь записать массив в файл.Я попробовал несколько комбинаций и как-то смог успешно это сделать.Я не совсем понимаю, как работает ниже, но это работает.

У меня есть массив, который имеет форму (252, 200).Когда это пишет в файл, я получаю 252 столбца и 200 строк.Я хочу 200 данных в столбцах и 252 данных в строке.

import xlsxwriter as xls
workbook  = xls.Workbook('Lookback_Call.xlsx')
workbook = xls.Workbook('Lookback_Call.xlsx', {'nan_inf_to_errors': True})
worksheet  = workbook.add_worksheet()

row = 0
for col, data in enumerate(tst1):
   worksheet.write_column(row, col, data)

workbook.close()

Ответы [ 2 ]

2 голосов
/ 18 апреля 2019

Просто измените

worksheet.write_column(row, col, data)

на

worksheet.write_column(col, row, data)

.Это распространенная проблема при работе с Excel.Имя ячейки Excel от «A2» означает столбец A (первый столбец) и строку 2. Столбец идет первым.Это похоже на соглашение во всех API Excel.

1 голос
/ 18 апреля 2019

Попробуйте write_row() вместо write_column():

for row, data in enumerate(tst1):
    worksheet.write_column(row, 0, data)
...