English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La forme du tableau est le nombre d'éléments dans chaque dimension.
Imprimer 2-forme du tableau D :
import numpy as np arr = np.array([1, 2, 3, 4], [5, 6, 7, 8]) print(arr.shape)
Résultat de l'exécution
(2, 4)
l'exemple précédent retourne (2, 4) ce qui signifie que le tableau a 2 dimensions, chaque dimension a 4 éléments.
en utilisant la valeur de ndmin 1,2,3,4 la création d'un vecteur de 5 tableaux de dimensions, et vérifiez que la valeur de la dernière dimension est 4:
import numpy as np arr = np.array([1, 2, 3, 4], ndmin=5) print(arr) print('shape of array :', arr.shape)
Résultat de l'exécution
[[[[[1 2 3 4]]]] shape of array : (1, 1, 1, 1, 4)
entier à chaque index indique le nombre d'éléments possédés par la dimension correspondante.
l'index dans l'exemple précédent 4nos valeurs sont 4donc on peut dire que le 5 dimensions ( 4 + 1 ème) dimension a 4 éléments.
La forme du tableau est le nombre d'éléments dans chaque dimension. En modifiant la forme du tableau, nous pouvons ajouter ou supprimer des dimensions ou modifier le nombre d'éléments dans chaque dimension.
D 12 元素 de 1-D Tableau converti en 2-Tableau D。
La dimension la plus externe aura 4 tableaux, chacun contenant 3 tableaux, chacun contenant
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]] newarr = arr.reshape(4, 3) print(newarr)
Résultat de l'exécution
[[ 1 2 3] [ 4 5 6] [ 7 8 9] [10 11 12]]
D 12 元素 de 1-D Tableau converti en 3-Tableau D。
Transformez les éléments suivants en 2 dimensions, la dimension la plus externe aura 3 tableaux, chacun contenant 2 tableaux, chacun contenant
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]] newarr = arr.reshape(2, 3, 2) print(newarr)
Résultat de l'exécution
[[[ 1 2] [ 3 4] [ 5 6]] [[ 7 8] [ 9 10] [11 12]]
Un tableau peut-il être modifié en n'importe quelle forme ?
Oui, tant que le nombre d'éléments nécessaires pour le redimensionnement est égal dans les deux formes. 8 éléments, mais nous ne pouvons pas le redimensionner en 1Nous pouvons transformer 2 lignes 2D tableau. 4 D tableau. 3 éléments, mais nous ne pouvons pas le redimensionner en 3 lignes 2D tableau, car cela nécessitera 3x3 = 9 éléments.
Tentez à transformer un tableau composé de 8 元素 de 1Tableau D converti en chaque dimension ayant 3 元素 de 2Tableau D(将产生错误):
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]] newarr = arr.reshape(3, 3) print(newarr)
Résultat de l'exécution
Traceback (most recent call last): Fichier "test.py", ligne 5, in
您可以使用一个“未知”维度。
这意味着您不必在 reshape 方法中为维度之一指定确切的数字。
传递 -1 作为值,NumPy 将为您计算该数字。
将 8 元素 de 1D Tableau converti en 2x2 元素的 3Tableau D:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]] newarr = arr.reshape(2, 2, -1) print(newarr)
Résultat de l'exécution
[[[1 2] [3 4]] [[5 6] [7 8]]
展平数组(Flattening the arrays)是指将多维数组转换为 1Tableau D。
我们可以使用 reshape(-1) 来做到这一点。
Convertissez le tableau en 1Tableau D:
import numpy as np arr = np.array([1, 2, 3], [4, 5, 6]) newarr = arr.reshape(-1) print(newarr)
Résultat de l'exécution
[1 2 3 4 5 6]
有许多功能可以更改 numpy flatten、ravel 中数组形状,还可以重新排列元素 rot90、flip、fliplr、flipud 等。这些功能属于 numpy 的中级至高级部分。