【发布时间】:2017-12-27 15:09:53
【问题描述】:
我有一个 25x4x3 元胞数组,已保存到 .mat 文件中,现在需要加载到 Python 中。
我熟悉的一个简单的 .mat 文件,但是对于 Python 来说是新手,这个问题有点超出我的想象。 25 维和 4 维表示我需要稍后在我的代码中调用的整数。元胞数组中的 3 维包含日期时间数组、数据以及该数据的更多标签字符数组的列表。
例如(伪代码)
.mat(1,1,1) = datetime arrays;
.mat(1,1,2) = data corresponding to datetime arrays;
.mat(1,1,3) = labels for each column in that data.
显然我需要使用loadmat('.mat') 将其加载到 Python 中,然后我感到困惑,因为我的变量资源管理器没有显示 .mat 文件。我不知道如何挑选内容以正确地将datettime 索引、数字转换为浮点数等。
任何指导将不胜感激!
现在我只有:
filemat = 'Pdata.mat'
Pdata = sio.loadmat(filemat)
据我所知,它正在将 .mat 作为对象加载。
【问题讨论】:
-
Pdata应该是字典,Pdata['mat']应该是编码mat单元格的对象。因为它来自带有混合数据的cell,所以它不会是一个简单的numpy数字数组。以前的loadmat问题已经展示了如何从这些结构中提取信息(见侧栏)。您可能需要向我们展示变量(如果它不是太大的话)。
标签: python arrays matlab scipy mat