repeat rows in a matrix based on values in one column

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.

 Akzeptierte Antwort

dpb
dpb am 24 Feb. 2019
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.

Weitere Antworten (0)

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 23 Feb. 2019

Beantwortet:

dpb
am 24 Feb. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by