我有一个带有+ 16M数据的向量,我必须在每个401x401元素的101个矩阵中对其进行转换。我知道如何独立创建这样的矩阵(为每个矩阵编写一个循环)但我认为必须有一些方法来创建所有这些矩阵使用两个或更多循环。问题是,我不确切知道如何做到这一点。 这是我到目前为止所尝试的:
data=load('file.dat');%This file contains 3 columns of data, I only need the first one
var=data(:,1);
p=401;%Size of the matrices
for n=0:400
mat1(n+1,:)=var(p*n+1:p*(n+1),:);
end
此代码将创建第一个401x401矩阵。通过更改索引,我可以(单独)创建其余的,但我更愿意添加另一个循环(或循环)来自动创建它们,而不是重复这个代码一百次。
答案 0 :(得分:0)
函数mat = vec2mat(vec,matcol)
将向量vec
转换为具有matcol
列的矩阵,一次创建一行。如果vec
的长度不是matcol
的倍数,则会在垫的最后一行放置额外的零。矩阵垫有ceil(length(vec)/matcol)
行。
另请参阅manual entry。