使用python读取mat文件中的结构体数组

Posted liuxiang2020

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用python读取mat文件中的结构体数组相关的知识,希望对你有一定的参考价值。

python读取mat文件中的结构体时,默认其为二维数组形式,默认结构体中的某个字段为二维数组,无论其是一个数,一个向量,还是一个二维数组。
现在读取一个mat文件中一个1*10的结构体及其中的元素。
技术图片

  • 读取文件
import scipy.io as sio
roadef_info = sio.loadmat(r'data/TestSetA.mat')
prob = roadef_info['prob']
print(prob.shape)

技术图片

  • prob的结构如下
    技术图片

  • 读取prob中的元素
    • 当某一个字段是一个数时,默认为一个二维数组
      技术图片

    • 当某个字段是一个二维数组时,读取的仍为二维数组
      技术图片

    • 结构体中的结构体仍然是一个二维结构体,这与一个数的逻辑是一样的
      技术图片
      技术图片

    • 当某一个字段是一个向量时,仍默认为一个二维数组
      技术图片
      技术图片

参考资料

以上是关于使用python读取mat文件中的结构体数组的主要内容,如果未能解决你的问题,请参考以下文章

matlab如何读取结构体中的数据,比如我想利用里面的数据画图

C 语言文件操作 ( 读取文件中的结构体数组 | feof 函数使用注意事项 )

matlab 怎么将374个结构体数据保存在一个数组中?用哪个函数

C 语言文件操作 ( 学生管理系统 | 命令行接收数据填充结构体 | 结构体写出到文件中 | 查询文件中的结构体数据 )

matlab中如何看函数结构体中的数据

C 语言文件操作 ( 将结构体写出到文件中并读取结构体数据 | 将结构体数组写出到文件中并读取结构体数组数据 )