从.mat文件解析数据并将它们放入Matlab中的矩阵

Parsing data from .mat file and putting them to a matrix in Matlab

我有一个 .mat 文件,其中包含以 excel 类结构排列的 4 行 100 列数据。

我想要的是将这 100 列中的每一列放入一个 2x2 矩阵 A(:,:,j),其中 j = 1:100,在 .m 文件中,以便我可以然后 运行 我处理该数据的代码。

我该怎么做?

编辑:当我使用命令 window

load C:\...\file.mat 

我进入工作区 window 变量的名称(比方说,fileVariable),它的值是 <4x100 complex double>。

当我在 .m 文件中使用时

S = load('C:\...\file.mat');
S

和 运行 脚本,在工作区 window 我得到了变量的名称 (S) 并且该变量 S 的类型为 <1x1 struct>。

在这两种情况下,这都不是我想要的 - 我无法在 .m 文件中操作任何这些东西(例如,与矩阵相比)。

我以前没有使用过 .mat 文件,这对我来说是新的。我刚刚从同事那里得到了这个项目的 .mat 文件,我必须使用它。

假设您使用输出变量调用 load,所描述的行为在文档中有明确定义:

S = load(___) loads data into S, using any of the input arguments in the previous syntax group.

If filename is a MAT-file, then S is a structure array.

If filename is an ASCII file, then S is a double-precision array containing data from the file.

由于您正在加载一个 *.mat 文件,您将使用点符号和任何有效的 MATLAB 索引语法得到一个 structure array. You access data in a structure array

由于您没有提供任何东西来重现您的问题,下面是文档中的示例:

S = load('clown.mat')
upperLeft = S.X(1:50,1:80);
image(upperLeft);

绘制完整图像的一个子集。