#python #excel #xlsx #xlsxwriter
#python #excel #xlsx #xlsxwriter
Вопрос:
я должен заполнить файл xlsx содержимым с помощью xlsx writer.
Я собираю данные с помощью pandas из существующего файла xlsx и создаю набор данных «dataset_dn_1» (все NaN будут заполнены строкой из ’empty’ :
data = pd.read_excel(file, skiprows=2)
dataset_s1_dn = pd.DataFrame(data, columns=['dn'])
dataset_s1_dn['dn'] = dataset_s1_dn['dn'].fillna(empty)
это работает нормально.
После этого я записываю столбец в запись и составляю из него список (я должен использовать список, потому что я не хочу переопределять все содержимое в целевом файле из-за форматирования):
rec_1 = dataset_s1_dn.to_records(index=False)
list_1 = list(rec_1)
Работает также хорошо.
Теперь я хочу записать столбец в файл назначения со следующим циклом:
for row, line in enumerate(list_1):
for col, cell in enumerate(line):
worksheet1.write(row, col, cell)
Это работает, но я хочу начать запись в ячейке A4, а не A1.
Я попробовал следующее, но получил сообщение об ошибке:
worksheet1.write('A4', row, col, cell)
worksheet1.write(0, 3, row, col, cell)
оба не работают.
Сообщение об ошибке:
TypeError: _write_number() takes from 4 to 5 positional arguments but 6 were given
Ответ №1:
Это работает, но я хочу начать запись в ячейке A4, а не A1.
Вероятно, что-то подобное должно сработать:
for row, line in enumerate(list_1):
for col, cell in enumerate(line):
worksheet1.write(row 3, col, cell)
Комментарии:
1. да, это отлично работает! я нашел это на данный момент для себя и хочу ответить на свой собственный ответ, а затем увидел ваш пост! : D но все равно спасибо.