Comment convertir un tableau de tuples 1D en tableau Numpy 2D ?
Lorsque l'on travaille avec des données en Python, il est souvent nécessaire de transformer et de manipuler des tableaux pour faciliter l'analyse et les calculs. Un scénario courant consiste à convertir un tableau 1D de tuples en un tableau Numpy 2D. Cette conversion permet une indexation, un découpage et une application plus faciles des opérations sur les tableaux.
Dans cet article, nous nous concentrerons sur le processus de conversion consistant à transformer un tableau 1D de tuples en un tableau Numpy.
Tableau 1D de Tuple
Un tableau 1D de tuples fait référence à une structure de données dans laquelle les tuples sont disposés séquentiellement dans un tableau unidimensionnel.
Par exemple, considérons le tableau de tuples 1D suivant :
données=[(1, 2), (3, 4), (5, 6), (7, 8)]
Tableau Numpy 2D
Un tableau Numpy 2D, également connu sous le nom de tableau ou matrice bidimensionnel, est une structure de données fournie par la bibliothèque Numpy en Python. Il étend le concept d'un tableau unidimensionnel en introduisant des dimensions supplémentaires, créant ainsi une structure de lignes et de colonnes semblable à une grille.
Vous trouverez ci-dessous les différentes approches mentionnées dans lesquelles j'ai discuté de différentes approches pour convertir un tableau 1D de tuples en tableau Numpy 2D.
Utilisation de la fonction numpy.array()
Dans cette approche, nous utiliserons la fonction numpy.array() pour convertir le tableau 1D de tuples en un tableau Numpy.
Considérez le code ci-dessous.
Exemple
import numpy as np
# Sample 1D array of tuples
data = [(1, 2), (3, 4), (5, 6), (7, 8)]
# Convert 1D array of tuples to Numpy array
numpy_array = np.array(data)
# Print the Numpy array
print("Converted Numpy array:")
print(numpy_array)
Explication
Nous importons la bibliothèque `numpy` sous le nom `np`.
Nous définissons le tableau 1D de tuples nommé « data ».
En utilisant la fonction `np.array()` et en passant `data` comme argument, nous convertissons le tableau 1D de tuples en un tableau Numpy.
Enfin, nous imprimons le tableau Numpy résultant.
La sortie montre le tableau Numpy converti, où chaque tuple devient une ligne dans le tableau 2D.
Sortir
# Converted Numpy array:
[[1 2]
[3 4]
[5 6]
[7 8]]
Utilisation de la compréhension de liste et de numpy.vstack()
Dans cette approche, nous utiliserons la compréhension de liste pour extraire les éléments des tuples, puis utiliserons numpy.vstack() pour les empiler verticalement dans un tableau Numpy 2D.
Considérez le code ci-dessous.
Exemple
import numpy as np
# Sample 1D array of tuples
data = [(1, 2), (3, 4), (5, 6), (7, 8)]
# Convert 1D array of tuples to Numpy array
numpy_array = np.vstack([np.array(t) for t in data])
# Print the Numpy array
print("Converted Numpy array:")
print(numpy_array)
Explication
Nous importons la bibliothèque `numpy` sous le nom `np`.
Nous définissons le tableau 1D de tuples nommé « data ».
En utilisant la compréhension de liste, nous parcourons chaque tuple « t » dans « data » et le convertissons en un tableau Numpy en utilisant « np.array(t) ».
Nous utilisons ensuite `np.vstack()` pour empiler verticalement les tableaux Numpy résultants dans un tableau Numpy 2D.
Enfin, nous imprimons le tableau Numpy résultant.
La sortie montre le tableau Numpy converti, où chaque tuple devient une ligne dans le tableau 2D.
Sortir
# Converted Numpy array:
[[1 2]
[3 4]
[5 6]
[7 8]]
Utilisation de la fonction numpy.reshape()
Dans cette approche, nous utiliserons la fonction numpy.reshape() pour convertir le tableau 1D de tuples en un tableau Numpy 2D.
Considérez le code ci-dessous.
Exemple
import numpy as np
# Sample 1D array of tuples
data = [(1, 2), (3, 4), (5, 6), (7, 8)]
# Convert 1D array of tuples to Numpy array
numpy_array = np.array(data).reshape((-1, 2))
# Print the Numpy array
print("Converted Numpy array:")
print(numpy_array)
Explication
Nous importons la bibliothèque `numpy` sous le nom `np`.
-
Nous définissons le tableau 1D de tuples nommé « data ».
En utilisant `np.array(data)`, nous convertissons le tableau 1D de tuples en un tableau Numpy.
Nous appliquons ensuite la fonction `reshape((-1, 2))` sur le tableau Numpy, qui le remodèle en un tableau 2D à 2 colonnes, déterminant automatiquement le nombre de lignes.
Enfin, nous imprimons le tableau Numpy résultant.
La sortie montre le tableau Numpy converti, où chaque tuple devient une ligne dans le tableau 2D.
Sortir
# Converted Numpy array:
[[1 2]
[3 4]
[5 6]
[7 8]]
Conclusion
La conversion d'un tableau 1D de tuples en un tableau Numpy 2D est une tâche courante dans la manipulation et l'analyse de données. Dans cet article, nous avons exploré trois approches différentes pour réaliser cette transformation : en utilisant la fonction numpy.array(), en utilisant la compréhension de liste et numpy.vstack(), et en utilisant la fonction numpy.reshape().