w3resource

NumPy: Shuffle specific rows of a given array

NumPy: Array Object Exercise-203 with Solution

Write a NumPy program to create a 11x3 array filled with student information (id, class and name) and shuffle the said array rows starting from 3rd to 9th.

Sample Solution:

Python Code:

import numpy as np
np.random.seed(42) 
student = np.array([['stident_id', 'Class', 'Name'],
              ['01', 'V', 'Debby Pramod'],
              ['02', 'V', 'Artemiy Ellie'],
              ['03', 'V', 'Baptist Kamal'],
              ['04', 'V', 'Lavanya Davide'],
              ['05', 'V', 'Fulton Antwan'],
              ['06', 'V', 'Euanthe Sandeep'],
              ['07', 'V', 'Endzela Sanda'],
              ['08', 'V', 'Victoire Waman'],
              ['09', 'V', 'Briar Nur'],
              ['10', 'V', 'Rose Lykos']]) 
print("Original array:")
print(student)
np.random.shuffle(student[2:8])
print("Shuffle the said array rows starting from 3rd to 9th")
print(student)

Sample Output:

Original array:
[['stident_id' 'Class' 'Name']
 ['01' 'V' 'Debby Pramod']
 ['02' 'V' 'Artemiy Ellie']
 ['03' 'V' 'Baptist Kamal']
 ['04' 'V' 'Lavanya Davide']
 ['05' 'V' 'Fulton Antwan']
 ['06' 'V' 'Euanthe Sandeep']
 ['07' 'V' 'Endzela Sanda']
 ['08' 'V' 'Victoire Waman']
 ['09' 'V' 'Briar Nur']
 ['10' 'V' 'Rose Lykos']]
Shuffle the said array rows starting from 3rd to 9th
[['stident_id' 'Class' 'Name']
 ['01' 'V' 'Debby Pramod']
 ['02' 'V' 'Artemiy Ellie']
 ['03' 'V' 'Baptist Kamal']
 ['07' 'V' 'Endzela Sanda']
 ['04' 'V' 'Lavanya Davide']
 ['06' 'V' 'Euanthe Sandeep']
 ['05' 'V' 'Fulton Antwan']
 ['08' 'V' 'Victoire Waman']
 ['09' 'V' 'Briar Nur']
 ['10' 'V' 'Rose Lykos']]

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a NumPy program to calculate the arithmetic means of corresponding elements of two given arrays of same size.
Next: Write a NumPy program to extract all the rows from a given array where a specific column starts with a given character.

What is the difficulty level of this exercise?

Test your Python skills with w3resource's quiz



Python: Tips of the Day

Set comprehension:

>>> m = {x ** 2 for x in range(5)}
>>> m
{0, 1, 4, 9, 16}