有没有什么简单的方法可以使用零填充连接维度不等的矩阵?

short = [1 2 3]';
long = [4 5 6 7]';
desiredResult = horzcat(short, long);

我想要类似的东西:
desiredResult =
1 4
2 5
3 6
0 7

最佳答案

当您分配给矩阵当前边界之外的索引时,MATLAB 中的矩阵会自动增长并用零填充。例如:

>> short = [1 2 3]';
>> long = [4 5 6 7]';
>> desiredResult(1:numel(short),1) = short;  %# Add short to column 1
>> desiredResult(1:numel(long),2) = long;    %# Add long to column 2
>> desiredResult

desiredResult =

     1     4
     2     5
     3     6
     0     7

关于MATLAB 连接维度不等的矩阵,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6208526/

10-12 20:46