如何在python中加载.mat文件?

时间:2019-07-11 19:53:39

标签: python matlab numpy

我正在尝试加载.mat文件,我使用了scipy.io软件包,并且输出保存在字典中,但是我无法访问数据!它与键“数据”一起存储,并保存在变量x中,该变量是一个numpy ndarray,其中包含两个数组,我想将每个数组分别放在一个单独的变量中。

import scipy.io as sp
import numpy as np
mat_contents = sp.loadmat("data.mat")
print(mat_contents.keys())
x = mat_contents.get("data")
print(x)

代码结果:

dict_keys(['__header__','__version__','__globals__','data'])
[[(array([[0.05, ....,0.02]
        [0.08, ....,0.06]
        ....
        [0.05, ....,0.02]
        [0.08, ....,0.06]]), array([[1],
        [1],
        ....
        [-1]], dtype= int16))]] 

我希望将第一个数组放在变量data_points中,将第二个数组放在变量标签中。

1 个答案:

答案 0 :(得分:0)

mat_contents = sp.loadmat("data.mat") data= mat_contents['data'] Y=data['labels'] [0][0] X=data['features'] [0][0] 数据是一种具有两个属性的结构,因此,如果要访问第一个属性的值,请编写以下指令Y=data[attribute] Y是一个有时包含许多数组的数组,因此我们应指定要提取的数组{{1} }