MATLAB: Convert an array to a new

matrix array

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?

Best Answer

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)