Удалите ключи () при загрузке файлов Matlab в python - PullRequest
0 голосов
/ 23 апреля 2020

Я пытаюсь загрузить файл Matlab в python, и я написал следующие строки:

import numpy as np
import scipy.io as spio

f = np.load('adj_data.npy',allow_pickle = True)
array1 = np.array(f)
print(array1)
print(type(array1))

После запуска этого кода я получаю следующие результаты:

{'__header__': b'MATLAB 5.0 MAT-file, Platform: PCWIN64, Created on: Wed Feb 07 15:26:44 2018', '__version__': '1.0', '__globals__': [], 'A': array([[[0.00000e+00, 0.00000e+00, 0.00000e+00, 0.00000e+00],
        [1.76007e-02, 2.65923e+00, 3.36400e-01, 3.66851e-02],
        [1.47450e-01, 1.98776e+00, 9.35137e-02, 1.11462e-02],
        ...,
        [0.00000e+00, 0.00000e+00, 0.00000e+00, 0.00000e+00],
        [2.56731e-01, 2.77940e+00, 3.76996e-01, 1.92662e-02],
        [1.54293e-02, 2.99425e+00, 6.52976e-01, 3.54300e-02]],

       [[1.76007e-02, 2.65923e+00, 3.36400e-01, 3.66851e-02],
        [0.00000e+00, 0.00000e+00, 0.00000e+00, 0.00000e+00],
        [1.65050e-01, 6.71471e-01, 2.42886e-01, 2.55389e-02],
        ...,
        [1.76007e-02, 2.65923e+00, 3.36400e-01, 3.66851e-02],
        [2.74331e-01, 1.20168e-01, 4.05960e-02, 5.59513e-02],
        [2.17143e-03, 3.35016e-01, 3.16577e-01, 1.25509e-03]],

       [[1.47450e-01, 1.98776e+00, 9.35137e-02, 1.11462e-02],
        [1.65050e-01, 6.71471e-01, 2.42886e-01, 2.55389e-02],
        [0.00000e+00, 0.00000e+00, 0.00000e+00, 0.00000e+00],
        ...,
        [1.47450e-01, 1.98776e+00, 9.35137e-02, 1.11462e-02],
        [1.09281e-01, 7.91639e-01, 2.83482e-01, 3.04123e-02],
        [1.62879e-01, 1.00649e+00, 5.59462e-01, 2.42838e-02]]])}


       <class 'numpy.ndarray'>

Как Могу ли я удалить первую часть массива или часть ключей () массива matlab:

 {'__header__': b'MATLAB 5.0 MAT-file, Platform: PCWIN64, Created on: Wed Feb 07 15:26:44 2018', '__version__': '1.0', '__globals__': [], 'A':

1 Ответ

0 голосов
/ 24 апреля 2020

Если это файл Matlab .mat (похоже), используйте:

import scipy.io as sio

array1 = sio.loadmat('adj_data.npy', mat_dtype = True)['A']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...