shuffle numbers in a vector
    324 views (last 30 days)
  
       Show older comments
    
Hi, I have a vector which has n by 1 entries. I want to randomly shuffle the numbers in this vector! Thanks in advance for any sugestions regarding that!
0 Comments
Accepted Answer
  Walter Roberson
      
      
 on 9 Nov 2011
        YourVector(randperm(length(YourVector))
5 Comments
  Sakib Mahmud
 on 11 Jan 2023
				
      Edited: Sakib Mahmud
 on 11 Jan 2023
  
			YourVector = YourVector(randperm(length(YourVector)));
More Answers (2)
  Tomas
      
 on 5 Feb 2016
        
      Edited: Tomas
      
 on 5 Feb 2016
  
      To shuffle vectors without saving them to a variable first, e.g. to shuffle a for-loop, I recommend adding a function like this to your repertoire:
 function v=shuffle(v)
     v=v(randperm(length(v)));
 end
e.g.
 for i=shuffle(1:10)
  disp(i)
 end
3 Comments
  Peeyush Awasthi
 on 9 Feb 2019
				It's indeed an smart solution to use randperm for any vector ar an array.
See Also
Categories
				Find more on Loops and Conditional Statements 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!