Re: [問題] index插入問題已回收
※ 引述《DigiPrince (幻無影)》之銘言:
: ※ 引述《biglongtoday (大長今)》之銘言:
: : X=randint(1,11,[0 20]) % X:原本資料
: : t=length(X);
: : index=reshape(kron(buffer(1:4*ceil(t/4),3,-1),ones(1,2)),1,[]);
: : index(6:6:end)=index(3:6:end)+1;
: : index(t+2*fix((t-3)/3)+1:end)=[];
: : X(index)
: 這裡假設你的資料長度是 4 的倍數的情況,若有不足請自行修改程式碼或補零。
: X = 1:20; % original data
: Y = reshape(X, 4, []);
: Y = [Y([1 2 3], :); Y([1 2 4], :)];
: Y = reshape(Y, 1, []); % processed data
X = 1:5 % original data
Z = zeros(1,4*ceil(length(X)/4)); %補0變成長度為4的倍數
Z(1:length(X))=X;
Y = reshape(Z, 4, []);
Y = [Y([1 2 3], :); Y([1 2 4], :)];
Y = reshape(Y, 1, []);
Y(1:length(X)+2*fix((length(X))/4)) % 長度為n的資料輸出後長度=n+2*[n/4]
這樣就一般化了!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.25.18
討論串 (同標題文章)