Convert Column vector into matrix

4 次查看(过去 30 天)
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 个评论
Stephan
Stephan 2020-11-30
What about the missing values? For example 141 and 144 have no occurence - wha about the corresponding columns?
pankaj singh
pankaj singh 2020-11-30
those columns can be filled by zeros.

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2020-11-30
编辑:Matt J 2020-11-30
H=histcounts(coln,1:257);
result=((1:10).'<=H).*(1:256);

更多回答(1 个)

Nicholas Brophy
Nicholas Brophy 2020-11-30
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

类别

Help CenterFile Exchange 中查找有关 Author Block Masks 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by