Maison  >  Article  >  développement back-end  >  Discussion détaillée sur les méthodes de remodelage, de fusion et de fractionnement de tableaux dans Numpy

Discussion détaillée sur les méthodes de remodelage, de fusion et de fractionnement de tableaux dans Numpy

不言
不言original
2018-04-17 10:52:522326parcourir

L'article suivant partagera avec vous une discussion détaillée des méthodes de remodelage, de fusion et de fractionnement de tableaux dans Numpy. Il a une bonne valeur de référence et j'espère qu'il sera utile à tout le monde. Jetons un coup d'oeil ensemble

1. Remodelage du tableau

1.1 Convertir un tableau à une dimension en un tableau à deux dimensions. tableau dimensionnel

Cela peut être réalisé grâce à la fonction reshape(). Supposons que les données soient un tableau unidimensionnel de type numpy.array([0, 1, 2, 3, 4). , 5, 6, 7, 8, 9]), convertissez-le maintenant en un tableau bidimensionnel à 2 lignes et 5 colonnes. Le code est le suivant :

data.reshape((2,5))

.

où est la forme du paramètre Une dimension peut être -1, ce qui signifie que la taille de la dimension est déduite des données elles-mêmes, donc le code ci-dessus est équivalent à :

data.reshape((2,-1))

1.2 Convertir un tableau bidimensionnel en un tableau unidimensionnel

L'opération de conversion d'un Un tableau multidimensionnel en un tableau unidimensionnel est généralement appelé aplatissement ou effilochage, il y a donc deux fonctions parmi lesquelles choisir. Le code d'exécution est le suivant :

data.ravel() # 不会产生源数据的副本
data.flatten() # 总是返回数据的副本

Je ne comprends pas très bien la différence entre ces deux points. Si quelqu'un sait quoi dire, les commentaires et échanges sont les bienvenus.

2. Fusion et fractionnement de tableaux

2.1 Fusion de tableaux

Numpy propose de nombreuses méthodes de fusion de tableaux. Nous présentons ici uniquement la méthode la plus couramment utilisée, la méthode de concaténation. Le code est le suivant :

arr1 = np.array([[1,2,3], [4,5,6]])
arr2 = np.array([[7,8,9], [10,11,12]])
data = np.concatenate([arr1, arr2], axis=0) # axis参数指明合并的轴向,0表示按行,1表示按列

2.2 Fractionnement des tableaux

Ici, nous introduisons uniquement la fonction de fractionnement

np.split(data, [1 ], axis =0)#data est le tableau divisé, [1] est le numéro de ligne ou de colonne divisé, l'axe indique la division par colonne ou par ligne (la valeur par défaut est 0, c'est-à-dire divisée par ligne)

Recommandations associées :

Exemples d'affectation unifiée d'éléments de tableau dans numpy

Une brève discussion de plusieurs méthodes de tri de numpy arrays_python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn