У меня есть следующий код Python (его фиктивные данные)
import scipy.io as si
data = [0 ,1]
metadata = {'Location_City': {'loíza': '0'}}
metadata_b = bytes(str(metadata), 'utf-8')
result_dict = {'d':data, 'm': metadata_b}
si.savemat('data.mat', mdict = result_dict)
Обратите внимание на i с акцентом в loíza.Когда я загружаю файл в python, я получаю сообщение об ошибке «буфер слишком мал для запрашиваемого массива»:
res = loadmat('data.mat', uint16_codec='utf-8')
Я знаю, что ошибка связана с кодированием метаданных специальными символами.Я использую uint16_codec = 'utf-8' в loadmat (), но это не помогло.Я хочу сохранить метаданные в файле .mat.Метаданные содержат словарь словарей с именами, имеющими специальные символы.Я также хочу загрузить .mat файл в python с этими метаданными.Есть предложения?