![](/img/trans.png)
[英]MATLAB: Permute and reshape a N x 4 array into a 2 x 2 x N array
[英]Create N x 2 array from N x 1 array-Matlab
我有一个大小为N的一维数组(比如说A)(即N x 1; N行,1列)。 现在我想创建一个大小为N x 2(N行,2列)的数组,其中数组A作为一列,另一列具有相同的元素(下面给出的示例中为0)。
例如,如果
A =[1;2;3;4;5];
我想创建一个矩阵B
B=[0 1; 0 2; 0 3; 0 4; 0 5]
我如何在Matlab中执行此操作?
您可以将B
初始化为全零的Nx2
数组,然后将第二列分配给A
的值。
A = [1;2;3;4;5];
B = zeros(numel(A), 2);
B(:,2) = A;
% 0 1
% 0 2
% 0 3
% 0 4
% 0 5
如果你实际上只想在第一列中使用零,则甚至不必初始化B
因为MATLAB将自动用0填充未知值。
% Make sure B isn't already assigned to something
clear B
% Assign the second column of uninitialized variable B to be equal to A
B(:,2) = A;
你可以尝试这种方法
B=[zeros(length(A),1) A]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.