create large matrix from data

5 Ansichten (letzte 30 Tage)
KA
KA am 9 Apr. 2016
Kommentiert: KA am 11 Apr. 2016
Hi, I have imported some data from an excel spreadsheet as a numerical matrix 145x3 as shown below
I now want to transform these data into a much larger matrix of 145x522. Reading the table above, row 1 in this new matrix will have the value shown in cell 1:3 (0.2203) but only between the positions shown in cells 1:1 (start point) and 1:2 (end point) i.e. cells 1:1 to 1:12. Row 2 in the new matrix will have the value 0.1597 (all of the values are defined in the 3rd column) but only between the positions shown in cells 2:1 (start point) and 2:2 (end point) i.e. cells 2:2 to 2:12, and so on. Matrix positions that are undefined will be set to a value of zero.
Does anyone know how to do this?

Akzeptierte Antwort

dpb
dpb am 9 Apr. 2016
Bearbeitet: dpb am 10 Apr. 2016
Just expand the output by rows is the "braindead" solution...assume the given array is dat
Nrow=size(dat,1); % the number of rows
Ncol=522; % whatever defines the column size
x=zeros(Nrow,Ncol);
for i=1:Nrow
x(i,dat(i,1):dat(i,2))=dat(i,3);
end

Weitere Antworten (0)

Kategorien

Mehr zu Data Import from MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by