Adr*_*aan 4 matlab vector square-bracket
在 MATLAB 中,您可以轻松地创建一个整数数组
N = 100; % Number of points
A = 1:N; % row vector of 1,2,3,..., 100
Run Code Online (Sandbox Code Playgroud)
如果我想要一个列向量而不是一个行向量,我可以用
A = [1:N].';
Run Code Online (Sandbox Code Playgroud)
现在,MATLAB 警告我
Use of brackets [] is unnecessary. Use parentheses to group if necessary.
Run Code Online (Sandbox Code Playgroud)
好吧,它们不是不必要的,因为1:N.' 创建了一个行向量,因为只有标量N被转置,而不是整个数组。
我当然可以在该行、该文件或所有文件中取消显示此消息,但是为什么 MATLAB 首先会抛出此警告,因为在这种情况下我似乎不能没有这些括号?
事实证明,很大一部分混淆源于 The MathWorks 对美式英语的使用,因为其他英语世界使用术语括号for()和术语方括号for []。参见维基百科
正如 MATLAB 警告您的那样:Use parentheses to group if necessary.
在您的情况下,这是必要的。您想.'应用于 1:N,因此请使用括号()。方括号[]用于收集其中的元素,但1:N已收集
A=(1:N).';
Run Code Online (Sandbox Code Playgroud)