如何使用 h5py 导入 .mat-v7.3 文件

2023-12-06

我有 .mat 文件,其中有 3 个矩阵 A、B、C。

实际上我使用 scipy.io 导入这个 mat 文件,如下所示。

data = sio.loadmat('/data.mat')
A = data['A']
B = data['B']
C = data['C']

但是,v7.3 文件无法使用这种方式导入。 所以,我尝试使用 h5py 导入,但我不知道如何使用 h5py。 我的代码如下。

f = h5py.File('/data.mat', 'r')
A = f.get('/A')
A = np.array('A')

哪一部分是错误的? 谢谢你!


八度音程

>> A = [1,2,3;4,5,6];
>> B = [1,2,3,4];
>> save -hdf5 abc.h5 A B

在 Ipython 中

In [138]: import h5py
In [139]: f = h5py.File('abc.h5')
In [140]: list(f.keys())
Out[140]: ['A', 'B']
In [141]: list(f['A'].keys())
Out[141]: ['type', 'value']
In [142]: f['A']['value']
Out[142]: <HDF5 dataset "value": shape (3, 2), type "<f8">
In [143]: A = f['A']['value'][:]
In [144]: A
Out[144]: 
array([[ 1.,  4.],
       [ 2.,  5.],
       [ 3.,  6.]])

另请参阅侧栏中的链接。

基本上,这是找到所需数据集,然后按照中所述加载它的问题http://docs.h5py.org/en/latest/high/dataset.html#reading-writing-data

https://pypi.python.org/pypi/hdf5storage/0.1.14- 这个包有MATLAB MAT v7.3 file support。我还没用过。


In [550]: import hdf5storage
In [560]: bar = hdf5storage.read(filename='abc.h5')
In [561]: bar
Out[561]: 
array([ ([(b'matrix', [[ 1.,  4.], [ 2.,  5.], [ 3.,  6.]])], [(b'matrix', [[ 1.], [ 2.], [ 3.], [ 4.]])])],
      dtype=[('A', [('type', 'S7'), ('value', '<f8', (3, 2))], (1,)), ('B', [('type', 'S7'), ('value', '<f8', (4, 1))], (1,))])

因此,该文件已作为结构化数组加载,具有形状 (1,) 和 2 个字段“A”和“B”(2 个变量名称)。每个都有一个“类型”和“值”字段。

In [565]: bar['A']['value']
Out[565]: 
array([[[[ 1.,  4.],
         [ 2.,  5.],
         [ 3.,  6.]]]])

或者使用它的loadmat:

In [570]: out = hdf5storage.loadmat('abc.h5',appendmat=False)
In [571]: out
Out[571]: 
{'A': array([(b'matrix', [[ 1.,  4.], [ 2.,  5.], [ 3.,  6.]])],
       dtype=[('type', 'S7'), ('value', '<f8', (3, 2))]),
 'B': array([(b'matrix', [[ 1.], [ 2.], [ 3.], [ 4.]])],
       dtype=[('type', 'S7'), ('value', '<f8', (4, 1))])}

out是一本字典:

In [572]: out['B']['value']
Out[572]: 
array([[[ 1.],
        [ 2.],
        [ 3.],
        [ 4.]]])

对于读取简单的 MATLAB 文件来说,这并没有增加太多。它可能会添加更多的细胞或结构。但对于编写 MATLAB 兼容文件来说,它应该是一个很大的帮助(尽管对于编写一个可以坚持scipy.io.savemat).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 h5py 导入 .mat-v7.3 文件 的相关文章

  • 在二维数组中进行所有可能的组合

    我正在尝试制作具有所有可能组合的 4x4 16 像素黑白图像数组 我制作了以下数组作为模板 template 0 0 0 0 start with all white pixels 0 0 0 0 0 0 0 0 0 0 0 0 然后我想迭
  • 如何打印前面有一定数量空格的整数?

    C has printf Xd Y 它只打印整数 X 并使其在控制台窗口上占据 Y 空格 例如 printf 3d 10 console 10 printf 5d 5 console 5 我如何在 python 3 中使用它 This pr
  • 按每个元素中出现的数字对字符串列表进行排序[重复]

    这个问题在这里已经有答案了 我有一个脚本 其目的是对不断下载到服务器上的空间数据集文件进行排序和处理 我的列表目前大致如下 list file t00Z wrff02 grib2 file t00Z wrff03 grib2 file t0
  • 学习Python中的解析器

    我记得我读过有关解析器的内容 您只需提供一些示例行 它就知道如何解析某些文本 它只是确定两条线之间的差异 以了解可变部分是什么 我以为它是用 python 写的 但我不确定 有谁知道那是什么图书馆吗 可能你的意思是模板制作器 http co
  • 是否可以在 IPython 控制台中显示 pandas 样式?

    是否可以显示熊猫风格 https pandas pydata org pandas docs stable user guide style html在 iPython 控制台中 Jupyter 笔记本中的以下代码 import panda
  • 如何在Python + Selenium中获取元素的值

    我在我的 Python 3 6 3 代码中得到了这个 HTML 元素 作为 Selenium网页元素当然 span class ocenaCzastkowa masterTooltip style color 000000 alt 5 sp
  • 我可以同时打开两个 Tkinter Windows 吗?

    可以同时打开2个窗口吗 import tkinter as Tk import random import math root Tk Tk canvas Tk Canvas root background image Tk PhotoIma
  • Discord.py 斜线命令在 cogs 中不起作用

    我正在构建一个不和谐的机器人 并且想要在 cogs 内使用斜杠命令 但这些命令不显示或工作 这是代码 cog guild ids 858573429787066368 861507832934563851 class Slash comma
  • 无法使用Python请求会话模块登录网站

    我刚刚开始进行网络抓取 对于我的第一个项目 我尝试使用 requests Session 登录 artofproblemsolving com 并访问另一个用户的帐户 这是我的代码 import requests LOGIN URL htt
  • 对法语文本进行词形还原[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一些法语文本需要以某种方式进行处理 为此 我需要 首先 将文本标记为单词 然后对这些单词进行词形还原以避免多次处理相同的词根 据我
  • 如何在 python 中使用交叉验证执行 GridSearchCV

    我正在执行超参数调整RandomForest如下使用GridSearchCV X np array df features all features y np array df gold standard labels x train x
  • Python GTK3 Treeview 向上或向下移动选择

    如何在树视图中向上或向下移动所选内容 我的想法是 我可以使用向上和向下按钮将选择向上移动一行或向下移动一行 我的 Treeview 使用 ListStore 不确定这是否重要 首先 我将使用我熟悉的 C 代码 如果您在将其翻译为 Pytho
  • 在字符串内打印单引号

    我想输出 XYZ s ABC 我在Python IDLE中尝试了以下3条语句 第一条和第二条语句输出 a before 带打印功能的第三条语句不输出 before 作为 Python 新手 我想了解为什么 之前输出 在第 1 条和第 2 条
  • 在Python中随机交错2个数组

    假设我有两个数组 a 1 2 3 4 b 5 6 7 8 9 我想将这两个数组交错为变量 c 注意 a 和 b 不一定具有相同的长度 但我不希望它们以确定性的方式交错 简而言之 仅仅压缩这两个数组是不够的 我不想要 c 1 5 2 6 3
  • 解析整数集的字符串并列出间隔

    I have 2 5 7 9 12 string 我想从中获取 2 5 7 8 9 12 列表 python中有没有内置的函数 Thanks UPD 我想 直接的答案是No 不管怎样 谢谢你的 片段 使用一个 建议者斯文 马尔纳克 s 2
  • 如何将 django ModelForm 字段显示为不可编辑

    接受我的初步教训django ModelForm 我想让用户能够编辑博客中的条目 BlogEntry has a date postedTime title and content 我想向用户展示一个编辑表单 其中显示所有这些字段 但仅包含
  • 计算数组中接下来的 n 个元素的乘积

    我想计算下一个的乘积n矩阵的相邻元素 号码n要相乘的元素数应在函数的输入中给出 例如 对于此输入 我应该从第一个开始计算每 3 个连续元素的乘积 p ind max product 1 2 2 1 3 1 3 这给出了 1 2 2 2 2
  • python 中的 F 字符串前缀给出语法错误[重复]

    这个问题在这里已经有答案了 我有一个名为 method 的变量 它的值是 POST 但是当我尝试运行时print f method method is used 它不断在最后一个双引号处给出语法错误 我找不到它这样做的原因 我正在使用 py
  • Django 中使用外键的抽象基类继承

    我正在尝试在 Django 支持的网站上进行模型继承 以遵守 DRY 我的目标是使用一个名为 BasicCompany 的抽象基类来为三个子类提供通用信息 Butcher Baker CandlestickMaker 它们位于各自的应用程序
  • 美丽的汤刮 - 登录凭据不起作用

    尝试使用登录凭据抓取页面 payload email gmail com password urls login url https www spotrac com signin url https www spotrac com nba

随机推荐

  • 如何设置 application/json 以外的 Content-Type

    我正在尝试通过 AFNetworking2 0 向我的服务器发送 REST API 我们的服务器只接受Content Type as application vnd mycom mycom csc json当我发送请求时 它确实是json格
  • 启动本地azure项目时调试器无法连接

    好的 首先 这就是我所做的 安装 AZURE 工具 Reboot 启动 Visual Studio 新的 Azure 项目 添加 Web 角色 asp net MVC 4 beta Web 角色 按 F5 调试 它启动存储模拟器和计算模拟器
  • 如何设置表适配器的连接字符串(动态设置的连接字符串)

    我刚刚从另一位不再在公司工作的开发人员那里继承了 数据库专家 的角色 所以如果我听起来特别菜鸟 请原谅我 该应用程序是一个 VB NET 4 应用程序 我们的表适配器的数据库连接字符串是 my settings My Settings DB
  • 在Unity3d C#中访问动态添加的组件

    添加后Component to a GameObject通过GameObject AddComponent方法 我怎样才能访问这个Component来自另一个脚本 这是 myScript 代码 未附加到游戏对象 using UnityEng
  • 如何在 Python 中将一个列表拆分为两个唯一的列表?

    嗨 我有一个清单如下 listt a b c d e f g h i j k l m n o 15名成员 我想把它变成 3 个列表 我使用了这段代码 它有效 但我想要唯一的列表 这给了我 3 个具有共同成员的列表 import random
  • Octave - 如何在 Windows 上安装软件包

    Question 由于问题在修复了 Octave urlread 导致无法使用给定 CA 证书对对等证书进行身份验证的问题 我无法在 Windows 上安装 Octave 软件包 请建议其他安装方式 我特别想经历梯度 梯度图和切平面这需要符
  • ASP.NET 和 WordPress 之间共享身份验证

    我现在的情况是需要在 ASP NET 网站和 WordPress 之间自动验证用户 这个想法是 一旦您登录到 ASP NET 网站 并且浏览 WP 页面 您就会自动登录 反之亦然 在 ASP NET 中 我可以针对 WP 数据库对用户进行身
  • 使用sql/plsql,如何找出文本使用的字符集?

    我有一个 Oracle 数据库 它存储来自世界各地 不同语言的文档内容 文档存储在一个带有 BLOB 列的表中 该列存储文档的内容 我想通过 Oracle 过程找出每个文档的字符集是什么 我不想使用 CSSCAN 实用程序 因为您似乎必须在
  • 所有 JSON 对象也是有效的 JavaScript 对象吗?

    The JSON标准以一种方式定义对象 并且ECMAScript JavaScript 标准在另一个标准中定义了它 人们常说 JSON 对象是 JavaScript 对象的子集 这是真的吗 每个 JSON 对象也是一个有效的 JavaScr
  • 无法使用 ApachePOI 打开 excel - 出现异常

    在尝试使用 Apache POI 打开 excel 时 我得到了 org apache poi openxml4j exceptions InvalidOperationException Can t open the specified
  • Java 重写来自另一个类的方法而不继承

    我在这里发现了类似的问题 Java 中无需子类化即可重写方法 但我的有点不同 我有两个类 一个基于 GUI 另一个只是修改第一类中元素的方法 如果它只是编辑基本功能 我不会遇到任何问题 但现在我想从第二类重写第一类方法中的 jbutton
  • spring - hibernate 从类路径资源加载 *.hbm.xml

    我在 src main resources maven 文件夹中的类路径资源中有一些 hbm xml 文件 我使用 spring 的 LocalSessionFactoryBean 通过以下 bean 配置加载这些文件
  • 对齐饼图图例中的文本 - 如何右对齐图例内的内容

    截至目前我的图例显示如下测试1 5 测试2测试2 10 测试2测试2测试3 85 我试图像这样显示 带有空格并右对齐 测试1 5 测试2测试2测试2 10 测试3测试3测试3 85 任何建议表示赞赏 您可以使用所示的方法here创建一个包含
  • Webfont +悬停颜色:部分文本不改变颜色

    我见过几次这种情况 只在 Webkit 上 场景是您有一些带有悬停颜色的文本 并且它使用 webfont 自定义字体 当您悬停时 最右边字母的一部分没有获得悬停颜色 要明白我的意思 请在 Chrome 或 Safari 中查看此小提琴 并在
  • Python中通过数组索引调用函数

    我在 Python out1 out2 out3 等中有一堆函数 想根据我传入的整数来调用它们 def arryofPointersToFns value call outn where n value 是否有捷径可寻 tl dr 写一个o
  • PHP 检测低于版本 10 的 Internet Explorer

    有人可以帮我做这个吗 因为我只有mac 无法测试IE 如果浏览器是 Internet Explorer 并且版本低于 10 那么运行事件的好方法是什么 比如说它是 IE 7 它会显示错误 或者如果它是 IE 9 9 它会显示错误 但是如果它
  • 如何以固定速率安排持续时间长于速率的任务?

    我正在尝试安排一个每秒运行大约 2 25 秒的任务 因此我知道 3 个线程应该足以处理负载 我的代码如下所示 private final ScheduledExecutorService scheduler Executors newSch
  • 谷歌地图的第二次调用未显示正确尺寸的地图

    使用 gwt maps 3 8 0 我在 gwt 弹出窗口中显示一条路线 调用一次时有效 但第二次调用时无效 What should i do some advice to refresh the mapWidget 当您显示地图时 触发其
  • Python类方法,什么时候返回self?

    我很困惑何时在类中返回 self 以及何时返回一个可能或不可能用于检查方法是否正确运行的值 def api request self data api web request code return response text def co
  • 如何使用 h5py 导入 .mat-v7.3 文件

    我有 mat 文件 其中有 3 个矩阵 A B C 实际上我使用 scipy io 导入这个 mat 文件 如下所示 data sio loadmat data mat A data A B data B C data C 但是 v7 3