What's this Comment mélanger le ndarray de Numpy. L'indexation de ndarray est pour référence uniquement, vous devez donc en faire une copie et l'attribuer ensuite.
shuffle_ndarray.py
import numpy
import random
#Tout d'abord, créez une matrice appropriée
a = [
[1, 2, 3],
[5, 6, 7],
[9, 10, 11],
[12, 13, 14]
]
nda = numpy.array(a)
#Aléatoire (deux fois le nombre de lignes)
for i in range(nda.shape[0] * 2) :
index_a = random.randint(0, nda.shape[0]-1)
index_b = random.randint(0, nda.shape[0]-1)
#Pour référence, les deux seront le même élément
#nda[index_a], nda[index_b] = nda[index_b], nda[index_a]
#Faites une copie, puis remplacez chaque
nda[index_a], nda[index_b] = numpy.array(nda[index_b]), numpy.array(nda[index_a])
Recommended Posts