让我们说我们有以下向量:
data =[12,343,63,3636,63,6363,636,363,63,346];
index=[1 3;4 8; 9 10];
我现在要做的是在矢量data
的索引值之后将矢量index
拆分为没有循环,以便它看起来像这样:
matrix= 12 343 63 0 0
3636 63 6363 636 363
63 346 0 0 0
答案 0 :(得分:0)
以下作品:
nx = max(index(:,2) - index(:,1)) + 1; % X-dimension of result
result = zeros(size(index, 1), nx) % Preallocate result
for k=1:size(index,1)
n = index(k,2) - index(k,1) + 1; % Number of elements in this batch
result(k,1:n) = data(index(k,1):index(k,2)); % Copy element
end