编者按:该文件被选为MATLAB Central本周精选
PADCAT -通过填充NaN连接不同长度的载体
M = padcat (v1, v2, v3,…), VN)连接向量V1到VN
变成一个大矩阵。所有的向量都应该有相同的方向,
也就是说,它们都是行向量或列向量。向量不需要
具有相同的长度,较短的向量用NaN填充。
M的大小由最长向量的长度决定。为
行向量,M是一个n × maxl矩阵列向量,M
将是一个MaxL × n矩阵,其中MaxL是最长的
向量。
例子:
A = 1:5;B = 1:3;C = [];D = 1:4;
Padcat (a,b,c,d) %行向量
% -> 1 2 3 4 5
%1 2 3楠楠
%南,南,南
% 1 2 3 4
CC = {d。”一个。“c。" b。' d。'};
padcat(CC{:}) %列向量
% 1 1 NaN 1 1
% 2 2 2 2
% 3 3 NaN 3 3
% 4 4 NaN 4
% NaN 5 NaN NaN
[M, TF] = PADCAT(..)也将返回具有相同属性的逻辑矩阵TF
对于来自于an的位置,R具有真值
输入向量。如果任何载体含有nan,这可能是有用的。
例子:
A = 1:3;B = [];c = [1 NaN];
[M, tf] = padcat (a, b, c)
%找到原始NaN
[Vev,Pos] = find(tf & isnan(M))
% -> Vec = 3, Pos = 2
第二个输出还可以用来将填充值更改为NaN以外的内容。
[M, tf] = padcat(1:3, 1:4)
M(~tf) = 99%将填充值改为99
标量将被连接成单个列向量。
参见cat,重塑,strvcat, char, horzcat, vertcat, isempty
nones,group2cell(Matlab文件交换)
引用作为
乔斯(10584)(2021)。PADCAT(//www.tatmou.com/matlabcentral/fileexchange/22909-padcat), MATLAB中央文件交换。检索.