Я создаю несколько таблиц Excel из панелей данных, используя pandas.ExcelWriter()
.
Проблема:
При вводе некоторых строк это создает испорченные файлы .xlsx, которые необходимо исправить. ( проблема с некоторым содержимым --- удалена формула , см. Сообщение об ошибке ниже)
Я предполагаю, что это происходит потому, что Excel интерпретирует содержимое ячейки не как строку, а формулу, которую он не может проанализировать, например, когда строковое значение начинается с "="
Вопрос:
При использовании xlsxwriter в качестве движка я могу решить эту проблему, установив аргумент options = {"strings_to_formulas" : False }
Есть ли аналогичный аргумент для openpyxl?
Поиск и устранение неисправностей:
Я нашел аргумент data_only
для Workbook, но кажется, что он применяется только для чтения файлов / я не могу заставить его работать с ExcelWriter ().
Не все выходные значения являются строками / я бы хотел избежать преобразования всех выходных данных в str
Не удалось найти подходящий вопрос здесь
Любые советы приветствуются, спасибо!
Сообщения об ошибках:
Мы обнаружили проблему с некоторым содержимым в file.xlsx. Вы хотите, чтобы мы попытались восстановить столько, сколько мы можем? Если вы доверяете источнику этой книги, нажмите Да
В журнале после открытия написано:
[...] summary = "Ниже приведен список удаленных записей:"> Удаленные записи: формула из /xl/worksheets/sheet1.xml part [...]
код
import pandas
excelout = pandas.ExcelWriter(output_file, engine = "openpyxl")
df.to_excel(excelout)
excelout.save()
Версия:
панды @ 0.24.2
openpyxl @ 2.5.6
Excel 2016 для Mac (но реплицируется на Win)