Matlab 对于列向量与行向量上的循环
我刚刚在Matlab中编写了一个“类似foreach”的循环,遇到了这种奇怪的行为: 我有矩阵A:Matlab 对于列向量与行向量上的循环,matlab,for-loop,Matlab,For Loop,我刚刚在Matlab中编写了一个“类似foreach”的循环,遇到了这种奇怪的行为: 我有矩阵A: A = [ 3 9 5 0]; 我想在a上使用一个foreach循环(如上所述) 如果我这样写: for i = A disp('for') i end 结果将是: for i = 3 9 5 0 但当我使用转置时,结果会改变: for i = A' disp('for') i end
A = [
3
9
5
0];
我想在a上使用一个foreach
循环(如上所述)
如果我这样写:
for i = A
disp('for')
i
end
结果将是:
for
i =
3
9
5
0
但当我使用转置时,结果会改变:
for i = A'
disp('for')
i
end
结果:
for
i =
3
for
i =
9
for
i =
5
for
i =
0
这就是我想要的结果
有人能解释一下这里发生了什么吗?这两种情况的区别是什么?在Matlab中,for循环在列上迭代 当你打字时
A = [
3
9
5
0];
创建一个列向量。因为Matlab在列上迭代,所以得到一个答案(第一列)。通过转置得到一个包含4列的行向量,因此每列有4个答案