repeat rows in a matrix based on values in one column

2 ビュー (過去 30 日間)
Masih Alavy
Masih Alavy 2019 年 2 月 23 日
回答済み: dpb 2019 年 2 月 24 日
Hello All,
I have a matrix which is attached here. Here is what I want to do: I want to make a duplicate of rows whose first column values are the same and then put the duplicate right beneath when the value of the first column changes. I have put a picture for portion of the final file that I want. Thanks for your help.

採用された回答

dpb
dpb 2019 年 2 月 24 日
u=unique(x(:,1),'stable'); % get the unique values in first column to work over; keep original order
xx=[];
for i=numel(u):1
ix=find(x(:,1)==u);
xx=[xx;repmat(x(ix,:),2,1)]; % build the new output array
end
"Deadahead" to just copy the sections to a new file; if not _terribly large x the dynamic reallocation shouldn't be too bad.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by