我在互联网上环顾了一下,似乎找不到这个问题的答案。我想在 matlab 中声明一个向量,然后有一个 for 循环,每次我通过 for 循环时都会向向量添加一个元素。
这是我尝试过的,但似乎没有用
vector[];
for k = 1 ; 10
%calculate some value
%calculated value stored in temp variable
vector(k) = temp;
end
这不起作用。有谁知道如何解决这个问题?
正如 ypnos 所说,您不需要预先声明向量变量。例如,如果您这样做:
vector(50) = 1;
MATLAB 将创建一个长度为 50 的向量,第 50 个值为 1。如果您想提高性能并希望事先创建一个适当大小的向量,请执行以下操作:
vector = zeros(10, 1);
您拥有的代码(只要您按照 ypnos 所说的那样修复循环)将起作用,除了您声明向量的方式,这是不正确的。我敢打赌您会收到错误消息:"Error: Unbalanced or unexpected parenthesis or bracket."
您没有指定变量是否是 MATLAB 中的矩阵/向量。
vector = [vector; temp];
或者
vector(end+1) = temp;