Convert Column vector into matrix

I have a 1158x1 column vector. The elements of the vector has values from 1 to 256. Each value is repeated for a maximum of 10 times. Some values are repeated even for less than 10 times. I want to convert into 10X256 matrix. I want all the 1's to be in 1st column, 2's in the second column and so on. To make it a proper matrix, fill rest of the values with zeros. The column vector is attached. How can I do that?

2 Commenti

What about the missing values? For example 141 and 144 have no occurence - wha about the corresponding columns?
those columns can be filled by zeros.

Accedi per commentare.

 Risposta accettata

Matt J
Matt J il 30 Nov 2020
Modificato: Matt J il 30 Nov 2020
H=histcounts(coln,1:257);
result=((1:10).'<=H).*(1:256);

Più risposte (1)

function [arr]=pankajSort(vec)
arr=zeros(10,length(vec));
for i= 1:length(vec)
mask= i==vec;
TRUES = sum(mask,'all');
for ii=1:TRUES
arr(ii,i)=i;
end
end

Categorie

Scopri di più su MATLAB in Centro assistenza e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by