问题标签 [mat-file]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
394 浏览

matlab - 将巨大的二进制文件部分加载到 Matlab 中

我有一个带有双精度数字的巨大二进制文件,我想将其中的一部分加载到 Matlab 中。有没有办法做到这一点?

一种方法是,如果我可以将其转换为 .mat 文件(无需先将其加载到 Matlab 中),但我无法弄清楚如何(或者是否真的可能)。

有任何想法吗?

PS:我正在考虑使用 c++ 进行转换,但事实证明这确实有问题,因为我使用的是 linux 版本的 c++(通过 cygwin)和 Windows 版本的 Matlab。

0 投票
1 回答
59 浏览

matlab - 如何找到该脚本的简化版本以便将其多次用于其他数据?

如何将此脚本转换为 MATLAB 函数?

实际上,我对大型数据文件进行处理,然后为了避免出现“内存不足”错误,我将每个文件分成 4 个部分,并在每个阶段开始时使用“全部清除”。所以,我想要的是有一个功能

而且,我的问题是我必须为其他数据文件编写相同的脚本。那么,有没有办法构建一个函数,我可以只更改文件名 AA00XY、BB74XY、CC92XZ、FF03VV、initial_2 和使用的函数名称 A002A_1_Filtre、A002A_2_Filtre、A002A_3_Filtre 和 A002A_4_Filtre 进行子处理最后一步文件“matrice_A002A_2.mat”

注意:我想在一个函数中转换我脚本的 4 个部分!!!

谢谢您的帮助。

#

纳坦回答后,我做了以下改动:

0 投票
3 回答
3454 浏览

matlab - MATLAB 无法加载 Dymola 创建的 MAT 文件

我的问题是打开一些由 Dymola 生成的 MAT 文件。对于小型模型,MATLAB 有时打开创建的 MAT 文件没有问题。然后我可以看到工作区中的结构。但我也有一个包含 31.536.000 个数据点的巨大模拟模型。对于这个模型,MATLAB 无法打开它。我总是得到提示

我的 MATLAB 版本是 R2014a 64 位,我的 Dymola 版本是 2014 FD001 64 位。我还尝试使用 MathWorks 主页上提供的工具来解决该问题,以解决损坏的变量名称 ( loadfixnames/ savebadnames)。但这并不完全正确,因为此工具无法恢复矩阵data_2。任何人都可以给我一个建议来解决这个问题吗?

0 投票
2 回答
2967 浏览

matlab - 如何在 .mat 文件中追加行或列单元矩阵

我正在运行一个模拟,其中我生成巨大的 2d 稀疏矩阵,因此我使用 FIND 函数只存储非零值及其索引。

现在,对于 for 循环的每次迭代,我都会生成这样的矩阵,并且因为它们的长度都不同,所以我使用单元数组来存储这些配置。但是对于大型模拟,即使单元格数组的压缩格式也会超出其内存限制,因此我想在运行代码时编写这些单元格数组,即每次迭代都将一个新元素附加到现有的 mat 文件中。

例如

在这里,我的最终目标是拥有一个 mat 文件,其中“数据”中的元素数为 10。但由于内存问题,我无法将其保存在 for 循环之外,我想生成数据 {n} 并以列增长方式附加它. 最终给了我数据{10}。

我尝试使用 MATFILE 但它给了我一个错误,它不能与 {} 一起使用,因此不能与单元格数组一起使用。

谢谢你,尼丁

0 投票
1 回答
690 浏览

matlab - 如何在不知道名称的情况下访问 .mat 文件中的“值”?

我需要加载 .mat 文件并提取数据。.mat 文件将始终存储一个具有“名称”和“值”的变量:

“名称”<1024x1280x20 uint8>(例如)

要访问数据,我目前必须知道变量名,所以我执行以下操作:

我想知道如何在不知道 MAT 文件中的变量名称的情况下执行此操作。

干杯,肖恩

0 投票
1 回答
1149 浏览

c++ - 从c ++循环写入.mat文件

我有一个相当大的二维结果数据向量,我想写入一个 mat 文件。我对 C++ 很陌生,我阅读了一些关于如何使用 MAT-File API 的教程,我理解语法一定是这样的:

我的问题是,因为我有相当多的数据要记录,我真的很想把它放到一个循环中。但是,我如何能够更改每个循环的NameOfDataVariable ?还是我必须将每行数据分别输入到mat文件中?就像我说的那样,我对此很陌生,所以如果这是一个愚蠢的问题,我很抱歉。有没有人有什么建议?

0 投票
1 回答
141 浏览

matlab - MATLAB:如何从函数访问从 .mat 文件加载的矩阵?

我有三个.mat文件和m1.mat,每个文件分别代表一个元胞数组和。我需要从函数中以编程方式访问元胞数组。在函数内部,我声明了一个字符串数组来存储文件名。我遍历文件名并在每个循环中加载文件并尝试在文件中查找元胞数组的维度。m2.matm3.matm1m2m3

问题是:如何访问元胞数组?如果我说它x = load ('m1.mat')不返回矩阵,它只是说

任何帮助将不胜感激。

0 投票
0 回答
90 浏览

python - 如何使用 Python 返回 mat 文件通道名称?

我正在使用 Python 2.x 操作 MATLAB mat-files,并且遇到了一个我什至无法通过 Google 解决的问题。

一旦我提供了频道名称,我发现很容易在 mat 文件中访问我想要的任何内容。作为一个简单的例子,要打印我要使用的频道字段:

问题是,我不想对通道名称进行硬编码,并且不知道如何使用 SciPy 从 mat 文件中返回它们。

任何帮助表示赞赏,谢谢。

0 投票
3 回答
1894 浏览

python - 为什么在 python 中保存/加载数据比 matlab 占用更多的空间/时间?

我有一些变量,包括字典、列表列表和 numpy 数组。我使用以下代码保存所有这些,其中 obj=[var1,var2,...,varn]。变量大小足够小,可以加载到内存中。

我的问题是当我在 matlab 中保存相应的变量时,输出文件在磁盘上占用的空间比在 python 中要少得多。同样,从磁盘加载变量在 python 中加载到内存中的时间比在 matlab 中要多得多。

谢谢

0 投票
2 回答
534 浏览

matlab - 保存并加载 fft 到 .mat 文件

我有一个 FFT,我想将其保存到 .mat 文件中,然后从该 .mat 文件中读取它。我想将我加载的数据用于一个部门。这是我的代码

在我的命令窗口中,我看到了

然后我收到错误消息

我在删除abs后尝试过。我收到了这个错误

有谁知道它为什么不起作用以及我该如何解决?