Hoy vamos a explicar cómo seleccionar las primeras o últimas filas de un DataFrame, para lo que usaremos las métodos head()
y tail()
.
Conjunto de datos de ejemplo
En esta ocasión vamos a utilizar el conjunto de datos planets
que podemos encontrar en la librería Seaborn. Para importarlos solamente hay que utilizar la función load_dataset()
con el nombre de conjunto de datos cómo parámetro. Así se puede cargar los datos en la variable planets
con el siguiente código.
import pandas as pd from seaborn import load_dataset planets = load_dataset("planets")
En el caso de que necesitemos sacar este conjunto de datos por pantalla veremos que no es práctico. El conjunto consta de 1035 filas y seis columnas. Por fortuna los objetos DataFrame de Pandas cuentan con los métodos head()
y tail()
que permiten obtener un subconjunto de los objetos con las primeras o últimas filas respectivamente. Conjuntos más pequeños con los que es más fácil visualizar la forma de los datos.
Consultar las primeras filas con el método head()
El método head()
de los DataFrame Pandas es de la siguiente forma
DataFrame.head(n=5)
Un método que tiene un único parámetro opcional, el número de filas que se desean extraer del DataFrame original. Por defecto el valor es cinco. Una cantidad habitualmente suficiente para hacerse una idea del contenido de los datos. Así si se llama a este método sin parámetros se obtienen los cinco primeros registros.
planets.head()
method number orbital_period mass distance year 0 Radial Velocity 1 269.300 7.10 77.40 2006 1 Radial Velocity 1 874.774 2.21 56.95 2008 2 Radial Velocity 1 763.000 2.60 19.84 2011 3 Radial Velocity 1 326.030 19.40 110.62 2007 4 Radial Velocity 1 516.220 10.50 119.47 2009
Aunque también, si solamente se desean tres, el comportamiento por defecto se puede cambiar fácilmente con el único parámetro.
planets.head(3)
method number orbital_period mass distance year 0 Radial Velocity 1 269.300 7.10 77.40 2006 1 Radial Velocity 1 874.774 2.21 56.95 2008 2 Radial Velocity 1 763.000 2.60 19.84 2011
Seleccionar las primeras filas de unas columnas específicas
El método también está disponible al seleccionar las columnas de un DataFrame, ya que este también es un objeto de tipo DataFrame. Así que, para obtener las primeras filas de, por ejemplo, las columnas distance
y year
solamente se tienen que seleccionar estas y llamar al método head()
planets[['distance', 'year']].head(n=3)
distance year 0 77.40 2006 1 56.95 2008 2 19.84 2011
Consultar las últimas filas con el método tail()
El método tail()
funciona de forma análoga a head()
con la diferencia, tal como su nombre indica, de obtener las últimas filas en lugar de las primeras.
DataFrame.tail(n=5)
Así que para obtener las últimas tres filas de conjunto de datos de los planetas solamente se tiene que ejecutar la siguiente línea
planets.tail(3)
method number orbital_period mass distance year 1032 Transit 1 3.191524 NaN 174.0 2007 1033 Transit 1 4.125083 NaN 293.0 2008 1034 Transit 1 4.187757 NaN 260.0 2008
Pudiéndose utilizar exactamente igual que head()
para obtener los últimos registros de solo un subconjunto de columnas.
Conclusiones
En esta ocasión hemos visto cómo funcionan un par de métodos sencillos para obtener las primeras o últimas filas de un DataFrame Pandas. Métodos que son muy útiles para visualizar el contenido de los conjuntos de datos.