【发布时间】:2020-04-23 17:41:31
【问题描述】:
我正在尝试在 python 中加载一个 matlab 文件,我已经写了这些行:
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 数组的 keys() 部分:
{'__header__': b'MATLAB 5.0 MAT-file, Platform: PCWIN64, Created on: Wed Feb 07 15:26:44 2018', '__version__': '1.0', '__globals__': [], 'A':
【问题讨论】:
-
那不是数组,那是
dict。其中一个键,'A'被映射到一个数组。您是在问如何从 dict 中获取值? -
我只想打印一个包含数字的简单数组 [ ],以删除 keys() 属性的第一部分。但是当我打印类型时,它不是
dict,而是numpy array -
因为你做了
array1 = np.array(f)。不知道您为什么希望它起作用,f是一本字典。不要这样做array1 = np.array(f)。只需使用字典。再次,您是在问如何使用字典吗?这里没有.keys()属性,我不确定你对matlab 的意思。同样,f是一个字典,因此只需在键'A'处访问字典内的数组 -
keys() 被认为是可以从
dict中提取的所有属性使用此代码:r = f['A']但我收到一个新错误 -
那个字典看起来像是来自
spio.loadmat('something.mat'). But you show anp.load`调用。有人loadmat和np.save吗?我想知道我们是否在 dict 周围看到了一个对象数组包装器?
标签: python matlab numpy scipy key