I have an array M [100000*3]. I want to create a new array where the one dimension will be the 1st column of the array M, the 2nd dimension will be the second column and the values of this new array will be taken from the third column. Some values of the new array will be zero/null. how do i convert the original array to new?

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 12 Okt. 2013

0 Stimmen

c1=M(:,1)
c2=M(:,2)
n=max(c1);
m=max(c2);
idx=sub2ind([n m],c1,c2)
out=zeros(n,m);
out(idx)=M(:,3)

Weitere Antworten (0)

Kategorien

Mehr zu Operators and Elementary Operations finden Sie in Hilfe-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