Group all the columns every N rows
    6 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    Riccardo Rossi
 il 24 Gen 2019
  
    
    
    
    
    Commentato: madhan ravi
      
      
 il 29 Gen 2019
            Hi everyone,
i have an array like this:
A
0.5   0.4   0.5
0.9   0.3   0.5
0.5   0.5   0.1
0.5   0.4   0.2
0.9   0.8   0.2
0.3   0.5   0.2
and i want to create a cell arrays like these (group all the columns every N rows, with N=2):
{A1}
0.5   0.4   0.5
0.9   0.3   0.5
{A2}
0.5   0.5   0.1
0.5   0.4   0.2
{A3}
0.9   0.8   0.2
0.3   0.5   0.2
How can i do it? 
Thank you very much!
0 Commenti
Risposta accettata
  madhan ravi
      
      
 il 24 Gen 2019
        
      Modificato: madhan ravi
      
      
 il 24 Gen 2019
  
      Your way:
N=2;
A=mat2cell(a,repelem(N,size(a,1)/N));
celldisp(A)
0 Commenti
Più risposte (1)
  madhan ravi
      
      
 il 24 Gen 2019
        
      Modificato: madhan ravi
      
      
 il 24 Gen 2019
  
      One way:
N=2;
[~,c]=size(A);
U=reshape(A',c,N,[]);
R=permute(U,[2 1 3])
4 Commenti
  madhan ravi
      
      
 il 29 Gen 2019
				I see you have asked another question regarding this issue but here is one solution:
N=4;
[m,c]=size(A);
U=reshape(A',m,[],N);
R=permute(U,[1 3 2]);
BB=reshape(R,N,[],1)'
Vedere anche
Categorie
				Scopri di più su Logical in Help Center e File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!