Info
Cette question est clôturée. Rouvrir pour modifier ou répondre.
separate column into several using descriptive variable
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I would like to split up a cell array that I have using a grouping variable. I have not found an applicable group function. I have a column of numbers say x = 123456789 and y = c1 c2 c1 c3 c4 c3 c1 c3 c4 I would like to split it up into 4 separate arrays with the values from x. Any help would be greatly appreciated. I have about 10 000 samples so manually going through would not be an option.
Cheers
4 commentaires
Image Analyst
le 25 Jan 2016
I'm just as confused as Stephen. It doesn't look like Brandon has read this yet. Like Stephen says, x = 123456789 means x is a single number, not a column of numbers. So when you say "values from x", what values would those be? There is only one value and that is 123456789. What are the other values???????????????????
And assuming the c in your definition of y means column, I can't see any pattern to the numbers in y, either by themselves or by looking at x. What is the rule for assembling y like that???
Réponses (1)
jgg
le 25 Jan 2016
Modifié(e) : jgg
le 25 Jan 2016
x = 100*rand(1000,1); %your data
groups = [0:10:100]; %your bins to group the data into
group_id = discretize(x,bins);
If you don't have groups and want every unique value of x instead, try unique instead with the third return option.
3 commentaires
jgg
le 25 Jan 2016
This code works fine for me. What are you calling that it giving you the error exactly? Are you using an older version of Matlab?
The documentation is here:
jgg
le 25 Jan 2016
If you have an older version of Matlab this should work instead:
x = 100*rand(1000,1); %your data
groups = [0:10:100]; %your bins to group the data into
[~,group_id] = histc(x,groups);
Cette question est clôturée.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!