En este artículo, cubriremos cómo extraer una columna en particular de una array 1-D de tuplas en python .
Ejemplo
Entrada: [(18.18,2.27,3.23),(36.43,34.24,6.6),(5.25,6.16,7.7),(7.37,28.8,8.9)]
Salida: [3.23, 6.6, 7.7, 8.9]
Explicación: extrayendo la tercera columna de la array 1D de tuplas.
Método 1: Usando Slice
Como primer paso, primero definamos una array 1D de tuplas con cada tupla que tiene 3 elementos, si consideramos estos 3 elementos como 3 columnas, podemos usar la técnica de corte para extraer una columna en particular.
Python3
import numpy as np # define a 1d array of tuples arr = np.array([(18.18, 2.27, 3.23), (36.43, 34.24, 6.6), (5.25, 6.16, 7.7), (7.37, 28.8, 8.9)]) # slice the array by passing the # column number arr[:, 2]
Producción:
array([3.23, 6.6 , 7.7 , 8.9 ])
Método 2: Usando la función lambda
En este ejemplo, estamos tomando un marco de datos de pandas y una de las columnas es una array de tuplas, podemos dividir esa columna en particular y aplicar una función lambda para extraer una columna en particular de la tupla de una array.
Python3
import numpy as np import pandas as pd data = pd.DataFrame({'approval': [10, 20, 30, 40, 50], 'temperature': [(18.18, 2.27, 3.23), (36.43, 34.24, 6.6), (5.25, 6.16, 7.7), (7.37, 28.8, 8.9), (12, 23, 3)]}) res = data['temperature'].apply(lambda x: x[2]).values print(data) print(res)
Producción:
approval temperature 0 10 (18.18, 2.27, 3.23) 1 20 (36.43, 34.24, 6.6) 2 30 (5.25, 6.16, 7.7) 3 40 (7.37, 28.8, 8.9) 4 50 (12, 23, 3 The output for extracting 3rd column from the array of tuples [3.23 6.6 7.7 8.9 3. ]
Publicación traducida automáticamente
Artículo escrito por jssuriyakumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA