Seleccionar múltiples columnas en Pandas Dataframe
-
Usando la sintaxis
__getitem__
([]
) para seleccionar múltiples columnas -
Usando los métodos
iloc()
yloc()
para seleccionar múltiples columnas en Pandas
Podemos enfrentarnos a problemas al extraer datos de múltiples columnas de un DataFrame de Pandas, principalmente porque tratan el DataFrame como un array bidimensional. Para seleccionar múltiples columnas de un DataFrame, podemos utilizar el método básico de indexación pasando la lista de nombres de columna a la sintaxis getitem
([]
), o los métodos iloc()
y loc()
proporcionados por la biblioteca de Pandas. Para este tutorial, seleccionaremos múltiples columnas del siguiente DataFrame.
Ejemplo de DataFrame:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df)
Resultado:
a b c d
0 0.255086 0.282203 0.342223 0.263599
1 0.744271 0.591687 0.861554 0.871859
2 0.420066 0.713664 0.770193 0.207427
3 0.014447 0.352515 0.535801 0.119759
Usando la sintaxis __getitem__
([]
) para seleccionar múltiples columnas
Al almacenar los nombres de las columnas a extraer en una lista y luego pasarla al []
, podemos seleccionar múltiples columnas del DataFrame. El siguiente código explicará cómo podemos seleccionar las columnas a
y c
del DataFrame previamente mostrado.
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df[["a", "c"]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801
Usando los métodos iloc()
y loc()
para seleccionar múltiples columnas en Pandas
También podemos usar los métodos iloc()
y loc()
para seleccionar múltiples columnas.
Cuando queramos usar los índices de las columnas para extraerlas, podemos usar iloc()
como se muestra en el siguiente ejemplo:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df.iloc[:, [0, 2]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801
De manera similar, podemos usar loc()
cuando queramos seleccionar columnas usando sus nombres como se muestra a continuación:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df.loc[:, ["a", "c"]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArtículo relacionado - Pandas DataFrame
- Cómo obtener las cabeceras de columna de Pandas DataFrame como una lista
- Cómo borrar la columna de Pandas DataFrame
- Cómo convertir la columna del DataFrame a Datetime en Pandas
- Cómo convertir un float en un entero en Pandas DataFrame
- Cómo clasificar Pandas DataFrame por los valores de una columna
- Cómo obtener el agregado de Pandas grupo por y suma