10

目前,所有 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)';
4

3 回答 3

33

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

p = p(:);

在此之后,保证p是一个列向量。

于 2012-11-16T10:57:48.180 回答
6

我想你可以转置:

p = (normal(1:750)-1)'
于 2012-11-16T09:42:46.773 回答
5

环境

p = p(:);

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

小心使用'操作符进行转置。我已经看到它失败了很多次。用于非共轭转置的 matlab 运算符实际上是.'这样的:

p = p.'

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

于 2015-10-26T03:45:31.250 回答