我想使用MATLAB中的for循环将矩阵的一部分分配到另一个矩阵中。我尝试了不同的方法,但没有一个起作用。我想知道这是怎么回事:
fullGrid = complex(zeros(FFTLen, numSym, numTx),zeros(FFTLen, numSym, numTx));
for i=0:(numSym/2)-1
for j=0:(FFTLen/2)-1
A(i,j)=[fullGrid(i,j)];
end
end
答案 0 :(得分:1)
您犯了一个非常基本的错误。矩阵/数组中的索引位置 Matlab从1而不是0开始。因此将所有for循环从1替换为 所需长度。
下面给出了正确的代码。
fullGrid = complex(zeros(FFTLen, numSym, numTx),zeros(FFTLen, numSym, numTx));
for i=1:(numSym/2)-1
for j=1:(FFTLen/2)-1
A(i,j)=[fullGrid(i,j)];
end
end