Я пытаюсь создать различные пользовательские функции Excel в python, используя xlwings.Мои пользовательские функции зависят от значений, извлеченных из файла HDF.Однако каждый раз, когда я нажимаю кнопку «Функции импорта» в Excel, я получаю сообщение об ошибке.Ниже приведен пример.
import pandas as pd
import numpy as np
import xlwings as xw
matrix1 = pd.DataFrame(np.random.random(size = (1000, 1000)))
matrix2 = pd.DataFrame(np.random.random(size = (1000, 100)))
matrix1.to_hdf('matrix.h5', key = 'mat1', mode = 'w')
matrix2.to_hdf('matrix.h5', key = 'mat2', mode = 'a')
arg = pd.read_hdf('matrix.h5', key = 'mat2', mode = 'r')
@xw.func
def dummy(x, y):
return 17
Когда я нажимаю кнопку «Функции импорта» на ленте xlwings в Excel, я получаю следующее
Если я попытаюсь запустить программу с помощью Spyder, у меня не возникнет проблем, и я смогу просто сгенерировать файлы HDF
Интересно, что если я удаляю строки, в которые я записываю файл HDF, и просто оставляю строку, в которую я его читаю, я получаю сообщение об ошибке:
FileNotFoundError: File matrix.h5 does not exist ...
Даже если я подтвердил, чтофайл существует.Если я запускаю тот же код в Spyder, у меня нет проблем, он работает нормально.
Существует ли какая-то проблема совместимости с файлами xlwings и HDF, или я что-то упустил?