如何使用for循环遍历结构创建2D矩阵

时间:2015-12-14 14:52:11

标签: arrays matlab loops for-loop matrix

在一个目录中,我有20个文件的集合。我想:

  • 迭代这20个文件的循环,
  • 从中提取xy数据
  • 将这些数据放在循环中创建的2D矩阵中

请注意,files'是20x1结构,file是1x1结构。

我不确定如何在这样的循环中构建二维矩阵A.

我尝试过像

这样的东西
files = dir('./cases/*.dcm');

for file = files'

    [data extraction here, creating vars x and y]

    for k = 1:length(files')
        A(k,:) =  (x:y);
    end
end

但我得到

Subscripted assignment dimension mismatch.

知道我做错了吗?

1 个答案:

答案 0 :(得分:1)

这应该有效:

files = dir('./cases/*.dcm');
for k = 1:numel(files)
    file = files(k);
    %[data extraction here, creating vars x and y];
    A(k,:) = [x,y];
end

您可能还想在循环之前添加初始化,如:

A = zeros(numel(files),2);