Could anyone help me how to shuffle the numbers in each column
    4 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
    jaah navi
 il 18 Giu 2019
  
    
    
    
    
    Modificato: Andrei Bobrov
      
      
 il 18 Giu 2019
            A=[3.8723    3.6040    3.3271    3.0534    2.8094    2.6242;
         0         0         0         0         0         0;
         0         0         0         0         0         0;
         0         0         0         0         0         0;
         0         0         0         0         0         0]
I want to shuffle the numbers  present in each column  to oher places of that corresponding column in a way such that sum(A,2) should not be zero 
For example i want to shuffle the number in the following manner.
[3.8723                 0                  0    3.0534                  0                0;
          0                  0         3.3271             0                  0                0;
          0         3.6040                  0             0                  0                0;
          0                  0                  0             0                  0       2.6242;
          0                  0                  0             0         2.8094                0]
could anyone please help me on it.
0 Commenti
Risposta accettata
  Andrei Bobrov
      
      
 il 18 Giu 2019
        
      Modificato: Andrei Bobrov
      
      
 il 18 Giu 2019
  
      [m,n] = size(A);
out = zeros(m,n);
out([randperm(m) + (0:m-1)*m,randi(m,1,n-m)+m^2]) = A(A~=0);
0 Commenti
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

