How to to group each set of data in individual cell array ?
    4 views (last 30 days)
  
       Show older comments
    
I have a raw data matrix as
A=[111 1 2 3; 111 4 5 6; 111 7 8 9; 112 10 11 12 ; 112 13 14 15; 112 16 17 18];
the first column is a customer ID.
I want to group each customer in individual cell array as
B=1X2 cell where
B{1,1}=[111 1 2 3; 111 4 5 6; 111 7 8 9] and
B{1,2}=[112 10 11 12 ; 112 13 14 15; 112 16 17 18]
How can I create program to get a result like B ?
0 Comments
Answers (1)
  Stephen23
      
      
 on 13 Jan 2018
        >> A = [111,1,2,3;111,4,5,6;111,7,8,9;112,10,11,12;112,13,14,15;112,16,17,18];
>> [~,~,X] = unique(A(:,1));
>> B = accumarray(X,(1:size(A,1)).',[],@(r){A(r,:)});
>> B{:}
ans =
   111     1     2     3
   111     4     5     6
   111     7     8     9
ans =
   112    10    11    12
   112    13    14    15
   112    16    17    18
>>
0 Comments
See Also
Categories
				Find more on Data Types in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
