Mélanger un tableau en Python
-
Mélanger un tableau en Python en utilisant la méthode
random.shuffle()
-
Mélange d’un tableau en Python en utilisant la méthode
shuffle()
du modulesklearn
Dans ce tutoriel, nous allons examiner les différentes méthodes pour mélanger un tableau en Python. Le brassage d’un tableau consiste à réorganiser les positions des éléments du tableau. L’une des applications de la réorganisation de tableaux est la formation de modèles, où nous devons modifier notre ensemble de données pour améliorer la qualité de la formation du modèle. Il pourrait également être utilisé dans de nombreuses applications statistiques.
Mélanger un tableau en Python en utilisant la méthode random.shuffle()
La méthode random.shuffle()
prend une séquence comme entrée et la mélange. La chose importante à noter ici est que la méthode random.shuffle()
ne retourne pas une nouvelle séquence en sortie mais mélange la séquence originale. Par conséquent, la séquence d’entrée valide ne peut être que des types de données mutables comme un tableau ou une liste, etc.
La méthode random.shuffle()
ne fonctionne que sur les séquences 1D. L’exemple de code ci-dessous montre comment utiliser la méthode random.shuffle()
pour mélanger un tableau en Python.
import random
import numpy as np
mylist = ["apple", "banana", "cherry"]
x = np.array((2, 3, 21, 312, 31, 31, 3123, 131))
print(x)
print(mylist)
random.shuffle(mylist)
random.shuffle(x)
print(x)
print(mylist)
Production :
[ 2 3 21 312 31 31 3123 131]
['apple', 'banana', 'cherry']
[3123 21 312 3 2 131 31 31]
['banana', 'apple', 'cherry']
Mélange d’un tableau en Python en utilisant la méthode shuffle()
du module sklearn
La méthode sklearn.utils.shuffle(array, random_state, n_samples)
prend des séquences indexables comme des tableaux, des listes, ou des cadres de données, etc. avec la même première dimension en entrée et renvoie les copies des séquences mélangées fournies en entrée.
La méthode sklearn.utils.shuffle()
ne modifie pas l’entrée originale mais renvoie la copie mélangée de l’entrée. L’entrée peut être une ou plusieurs séquences. Le paramètre random_state
est utilisé pour contrôler la génération aléatoire des nombres. S’il est défini sur un nombre entier, la méthode retournera la même séquence mélangée à chaque fois. Le paramètre n_samples
représente le nombre d’échantillons, et sa valeur par défaut est égale à la première dimension de l’entrée par défaut et ne doit pas être supérieure à la longueur du/des tableau(x) d’entrée.
sklearn.utils.shuffle()
ne mélangera que les lignes.L’exemple de code ci-dessous montre comment utiliser la méthode sklearn.utils.shuffle()
pour obtenir un ou plusieurs tableaux mélangés en Python.
from sklearn.utils import shuffle
import numpy as np
x = np.array([[1, 2, 3], [6, 7, 8], [9, 10, 12]])
y = ["one", "two", "three"]
z = [4, 5, 6]
print(x)
print(y)
print(z)
x, y, z = shuffle(x, y, z, random_state=0)
print(x)
print(y)
print(z)
Production :
[[ 1 2 3]
[ 6 7 8]
[ 9 10 12]]
['one', 'two', 'three']
[4, 5, 6]
[[ 9 10 12]
[ 6 7 8]
[ 1 2 3]]
['three', 'two', 'one']
[6, 5, 4]
Article connexe - Python Array
- Comment initier un tableau 2-D en Python
- Comment compter les occurrences d'un objet dans un tableau unidimensionnel en Python
- Correction de l'erreur TypeError: iteration over a 0-d array dans Python NumPy
- Décaler ou faire pivoter un tableau en Python
- Écrire un tableau dans un fichier texte en Python
- Fenêtre coulissante en Python