将行向量更改为列向量

时间:2012-11-16 09:40:13

标签: matlab vector

如何将此更改为一列,目前所有750个条目都在一行?

p = normal(1:750)-1;

我试过了:

columns = 1;
p = normal(1:750)-1;
p = p(1:columns);

我也尝试过:

rows = 1000;
p = normal(1:750)-1;
p = p(1:rows)';

3 个答案:

答案 0 :(得分:30)

MATLAB中的常见做法是使用colon运算符:任何转换为列向量。如果不知道或关心normal是行向量还是列向量,您可以强制p成为列向量,如下所示:

p = p(:);

在此之后,p 保证成为列向量。

答案 1 :(得分:5)

我想你可以转换:

p = (normal(1:750)-1)'

答案 2 :(得分:4)

设置

p = p(:);

确实是最好的方法,因为它可以可靠地创建列向量。

注意使用'运算符进行转置。我已经看到它失败了很多次。用于非共轭转置的matlab运算符实际上是.'所以你会这样做:

p = p.'

如果你想在不使用复共轭的情况下进行转置。