- Trending Categories
- Data Structure
- Networking
- RDBMS
- Operating System
- Java
- MS Excel
- iOS
- HTML
- CSS
- Android
- Python
- C Programming
- C++
- C#
- MongoDB
- MySQL
- Javascript
- PHP
- Physics
- Chemistry
- Biology
- Mathematics
- English
- Economics
- Psychology
- Social Studies
- Fashion Studies
- Legal Studies

- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who

# Randomly Shuffle Rows in MATLAB Matrix

MATLAB is a great tool to process matrices. It provides a large number built-in functions and processing methods that we can use to manipulate our matrices just by writing a small piece of MATLAB codes. Such an operation that we can perform on matrices in MATLAB is **random shuffling of rows of a matrix**. In this tutorial, I will explain how you can randomly shuffle rows of a matrix using MATLAB.

## Randomly Shuffle Rows of a Matrix in MATLAB

MATLAB is a complete solution to manipulate matrices using computers. In MATLAB, we can very easily shuffle rows of a matrix by using MATLAB's built-in functions.

MATLAB has a built-in function namely, 'randperm' that we can use to shuffle or swap the rows of a given matrix randomly. This function shuffles the rows of the matrix by generating a random permutation of indices of rows. This randomly generated permutation allows us to rearrange the rows of our matrix in a random order.

Before going to discuss the practical implementation of the concept, let us first discuss the step-by-step process of shuffling of rows of a matrix in MATLAB.

## Process of Randomly Shuffling Rows of a Matrix using MATLAB

The step-by-step procedure to shuffle the rows of a matrix randomly using MATLAB programming is explained below:

**Step (1)** – First of all, create or load the matrix that you want to manipulate in the MATLAB workspace.

**Step (2)** – Determine the number of rows in the matrix. For this you can use a MATLAB's built-in function 'size'. The following syntax of the 'size' function is used to determine the number of rows in a matrix:

Rows_Num = size(matrix, 1);

Here, '1' is used to specify that we want to determine first dimension (row) of the matrix.

**Step (3)** – Now, use the 'randperm' function to generate a random permutation of indices of matrix rows. For this, the following syntax is to be used:

Rand_Perm = randperm(Row_Num);

**Step (4)** – In this step, utilize the randomly generated permutation to reorder/shuffle the rows of the matrix.

**Step (5)** – Finally, display the result.

We now have the enough knowledge to implement the MATLAB code to perform random shuffling of rows of a matrix.

### Example

Let us take an example program to understand how actually we can write the codes in MATLAB to shuffle the rows of a given matrix.

% MATLAB code to shuffle rows of a matrix randomly % Create a sample matrix Mat = [10, 20, 2; 42, 51, 67; 57, 85, 19; 1, 15, 2]; % Determine the number of rows in the matrix n = size(Mat, 1); % dim = 1 to specify rows % Generate a random permutation of indices of rows of the matrix R = randperm(n); % Shuffle the rows of the matrix using random permutation Shuffled_Mat = Mat(R, :); % Display the input and shuffled matrices disp('The input matrix is:'); disp(Mat); disp('The shuffled matrix is:'); disp(Shuffled_Mat);

### Output

The input matrix is: 10 20 2 42 51 67 57 85 19 1 15 2 The shuffled matrix is: 10 20 2 1 15 2 42 51 67 57 85 19

### Explanation

In this MATLAB code, we shuffled the rows of the input matrix using the randomly generated permutation.

## Conclusion

This is all about random shuffling of rows of a matrix using MATAB. In this tutorial, we explained the step-by-step process to shuffle the rows of a matrix with the help of an example.

In conclusion, MATLAB has a built-in function 'randperm' that can be used to randomly shuffle the rows of a matrix by utilizing the randomly generated permutation of row indices of the matrix.