【问题标题】:Read some particular elements of a HDF5 dataset in MATLAB在 MATLAB 中读取 HDF5 数据集的一些特定元素
【发布时间】:2015-12-30 10:38:51
【问题描述】:

我有一个由 MATLAB 生成的 HDF5 数据集,其中一个数据集的大小为 [1 12672 1 220000],遵循以下模式:[高度宽度通道 NumberOfInstances]。换句话说,我将 220000 个向量样本重新整形为 4-D 数据结构。现在,我想在 MATLAB 中读取所有向量样本的第一个元素,并对它们进行一些操作,比如平均。 这是我尝试过的事情(不确定是否正确),但我陷入了错误池:

data = h5read('trial.h5','/data',[1 1 1 1],[220000,1,1,220000]);

感谢任何帮助。

【问题讨论】:

  • 你用谷歌搜索过“hdf5 read matlab”吗?给:uk.mathworks.com/help/matlab/ref/hdf5read.html
  • 是的,我已经使用过高级 hdf5 命令,但我不知道如何进行索引以读取所有向量的第一个元素。
  • 显示你当时的尝试!
  • 这是我尝试过的,但我遇到了很多错误:data = h5read('trial.h5','/data',[1 1 1 1],[220000,1,1, 220000]);
  • 那行不通?理论上应该...

标签: matlab data-structures dataset hdfs hdf5


【解决方案1】:

您的数据集大小为[1 12672 1 220000]

您正在使用 data = h5read('trial.h5','/data',[1 1 1 1],[220000,1,1,220000]); 访问它

您要访问的数据量是[220000,1,1,220000]

你没有那么多数据!!!第一个维度只是1。您无法访问第一个维度的第一个 220000 值,因为它们不存在,只有 1

【讨论】:

    猜你喜欢
    • 2019-11-15
    • 2018-02-22
    • 2013-02-26
    • 2014-02-26
    • 2016-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-04
    相关资源
    最近更新 更多