Puisque le ndarray de numpy et la liste construite en Python étaient foirés, j'ai essayé de résumer chaque dimension et taille à ma manière. Ceci est un résumé des débutants.
À la suite de Google, la principale méthode d'acquisition de taille était d'utiliser la fonction len (), la fonction np.shape () et la variable d'instance ndarray.shape.
En conclusion, je pense que ce serait bon marché si vous utilisez ** np.shape (). De plus, j'ai pensé qu'il serait bon de se rappeler que le type de liste intégré ** réalise une représentation de tableau à deux dimensions en utilisant la notation d'inclusion de liste **.
Comment obtenir la taille | type ndarray | Type de liste intégré |
---|---|---|
len() | 1 dimension seulement | 1 dimension seulement |
np.shape() | n dimensions | n dimensions |
ndarray.shape | n dimensions | - ※ |
De plus, bien sûr, la représentation de sortie n'a pas changé en fonction du type et de la dimension.
dimension | type ndarray | Type de liste intégré |
---|---|---|
1 dimension | (3, ) | (3, ) |
2D | (3, 4) | (3, 4) ※ |
La fonction numpy.array () semble être un outil pratique pour créer facilement ndarray.
Puisqu'il s'agit d'un type numpy.ndarray, ** il n'y a pas de ,
entre les nombres **.
import numpy as np
A_np = np.array([5, 2], dtype=int)
B_np = np.array([10, 9], dtype=int)
C_np = np.array([1, 11], dtype=int)
D_np = np.array([9, 1], dtype=int)
#Résultat de la substitution
A_np : [5 2]
B_np : [10 9]
C_np : [ 1 11]
D_np : [9 1]
#Taille du tableau
A_np.shape : (2,)
B_np.shape : (2,)
C_np.shape : (2,)
D_np.shape : (2,)
Python intégré
Puisqu'il s'agit d'un format de liste intégré, **, ʻest inséré entre les nombres **.
A = [5, 2]
B = [10, 9]
C = [1, 11]
D = [9, 1]
#Résultat de la substitution
A : [5, 2]
B : [10, 9]
C : [1, 11]
D : [9, 1]
#Taille np.shape()Version de fonction
np.shape(A) : (2,)
np.shape(B) : (2,)
np.shape(C) : (2,)
np.shape(D) : (2,)
#Taille len()Version de fonction
len(A) : 2
len(B) : 2
len(C) : 2
len(D) : 2
La 2ème dimension de la liste intégrée utilise la "notation d'inclusion de liste".
A = [[12, -8, 4], [0, 6, -10]
#Résultat de la substitution
[[12, -8, 4], [0, 6, -10]
La sortie de la variable intégrée len () a 2 éléments dans la liste.
#Taille
len(A) : 2
Tout d'abord, le type de liste intégré reste
A = [[12, -8, 4], [0, 6, -10]]
A :
[[12, -8, 4], [0, 6, -10]]
np.shape(A) : (2, 3)
Deuxièmement, convertir en type ndarray
Puisque le type de liste intégré est changé en type dumpy.ndarray, le ,
entre les nombres disparaît.
A = [[12, -8, 4], [0, 6, -10]
A_np = np.array(A)
A_np :
[[ 12 -8 4]
[ 0 6 -10]]
A_np.shape : (2, 3)
Lorsque vous souhaitez utiliser un tableau à deux dimensions avec le type de liste intégré, cela semble gênant lorsque le nombre d'éléments de chaque élément est différent. Plus précisément,
A = [[12, -8, 4], [0, 6, -10, 2]]
Pour le moment, il s'agit d'un tableau bidimensionnel de type liste intégré avec deux éléments de type liste à l'intérieur.
Les longueurs de ces éléments sont différentes.
Le résultat à ce moment est
len(A) : 2
np.shape(A) : (2,)
Même si converti en numpy.ndarray
A_np = np.array(A)
A_np :
[[12, -8, 4] [0, 6, -10, 2]]
np.shape(A_np) : (2,)
Les ,
entre les nombres ne sont pas partis, et les éléments sont un tableau de type ndarray de type liste (?).
Je suis désolé si j'ai dit quelque chose d'étrange. Je ne suis pas confiant.
À propos, np.array ([[12, -8, 4] [0, 6, -10, 2]], dtype = int)
a entraîné une erreur.
En d'autres termes, les notations d'inclusion de liste avec différents nombres d'éléments renvoient la longueur de la liste car la taille ne peut pas être mesurée comme une matrice. Eh bien, est-ce naturel?
Recommended Posts