Существует также функция из pandas
, называемая factorize
, которую вы можете использовать для автоматического выполнения этого типа работы. Он преобразует метки в числа: ['male', 'female', 'male'] -> [0, 1, 0]
. См. этот ответ для получения дополнительной информации.
Теперь я использую одну из альтернативных таблиц Kingsoft в MS Excel. Мой фрагмент ниже используется для запуска приложения в фоновом режиме.
from win32com import client
xApp = None
for aname in ('Excel', 'eT', 'KeT'):
try:
xApp = client.Dispatch(aname + '.Application')
except client.pywintypes.com_error:
continue
else:
break
if xApp is None:
print('No app found')
raise SystemExit # Application is unavailable.
else:
# do something
wb = excel.Workbooks.Open('my_sheet.xlsm')
В более старых версиях MS Excel (до 2013 г.) и KS Spreadsheet (до 2014 г.) приведенный выше код работал нормально, даже без явной установки xApp.Visible в False. Однако в последней версии Spreadsheet при выходе из приложения запускается небольшое окно пользовательского интерфейса.