Obtener la primera fila del Dataframe Pandas

Suraj Joshi 30 enero 2023
  1. Obtener la primera fila de un DataFrame de Pandas usando la propiedad pandas.DataFrame.iloc
  2. Obtener la primera fila de un DataFrame de Pandas en base a una condición especificada
Obtener la primera fila del Dataframe Pandas

Este tutorial explica cómo podemos obtener la primera fila de un DataFrame de Pandas utilizando la propiedad pandas.DataFrame.iloc y el método pandas.DataFrame.head().

Utilizaremos el DataFrame en el siguiente ejemplo para explicar cómo podemos obtener la primera fila de un Pandas DataFrame.

import pandas as pd


df = pd.DataFrame(
    {
        "C_1": ["A", "B", "C", "D"],
        "C_2": [40, 34, 38, 45],
        "C_3": [430, 980, 200, 350],
    }
)

print(df)

Producción :

  C_1  C_2  C_3
0   A   40  430
1   B   34  980
2   C   38  200
3   D   45  350

Obtener la primera fila de un DataFrame de Pandas usando la propiedad pandas.DataFrame.iloc

import pandas as pd


df = pd.DataFrame(
    {
        "C_1": ["A", "B", "C", "D"],
        "C_2": [40, 34, 38, 45],
        "C_3": [430, 980, 200, 350],
    }
)

row_1 = df.iloc[0]

print("The DataFrame is:")
print(df, "\n")

print("The First Row of the DataFrame is:")
print(row_1)

Producción :

The DataFrame is:
  C_1  C_2  C_3
0   A   40  430
1   B   34  980
2   C   38  200
3   D   45  350

The First Row of the DataFrame is:
C_1      A
C_2     40
C_3    430
Name: 0, dtype: object

Muestra la primera fila del DataFrame df. Para seleccionar la primera fila, utilizamos el índice por defecto de la primera fila, es decir, 0 con la propiedad iloc del DataFrame.

Obtener la primera fila de un DataFrame de Pandas utilizando el método pandas.DataFrame.head()

El método pandas.DataFrame.head() devuelve un DataFrame con las 5 primeras filas del DataFrame. También podemos pasar un número como argumento al método pandas.DataFrame.head() que representa el número de filas superiores a seleccionar. Podemos pasar 1 como argumento al método pandas.DataFrame.head() para seleccionar sólo la primera fila del DataFrame.

import pandas as pd


df = pd.DataFrame(
    {
        "C_1": ["A", "B", "C", "D"],
        "C_2": [40, 34, 38, 45],
        "C_3": [430, 980, 200, 350],
    }
)

row_1 = df.head(1)

print("The DataFrame is:")
print(df, "\n")

print("The First Row of the DataFrame is:")
print(row_1)

Producción :

The DataFrame is:
  C_1  C_2  C_3
0   A   40  430
1   B   34  980
2   C   38  200
3   D   45  350

The First Row of the DataFrame is:
  C_1  C_2  C_3
0   A   40  430

Obtener la primera fila de un DataFrame de Pandas en base a una condición especificada

Para extraer la primera fila que satisface las condiciones especificadas de un DataFrame, primero filtramos las filas que satisfacen las condiciones especificadas y luego seleccionamos la primera fila del DataFrame filtrado utilizando los métodos comentados anteriormente.

import pandas as pd


df = pd.DataFrame(
    {
        "C_1": ["A", "B", "C", "D"],
        "C_2": [40, 34, 38, 45],
        "C_3": [430, 980, 500, 350],
    }
)

filtered_df = df[(df.C_2 < 40) & (df.C_3 > 450)]

row_1_filtered = filtered_df.head(1)

print("The DataFrame is:")
print(df, "\n")

print("The Filtered DataFrame is:")
print(filtered_df, "\n")


print("The First Row with C_2 less than 45 and C_3 greater than 450 is:")
print(row_1_filtered)

Resultado:

The DataFrame is:
  C_1  C_2  C_3
0   A   40  430
1   B   34  980
2   C   38  500
3   D   45  350

The Filtered DataFrame is:
  C_1  C_2  C_3
1   B   34  980
2   C   38  500

The First Row with C_2 less than 45 and C_3 greater than 450 is:
  C_1  C_2  C_3
1   B   34  980

Se mostrará la primera fila con el valor de la columna C_2 menor que 45 y el valor de la columna C_3 mayor que 450.

También podemos utilizar el método query() para filtrar las filas del DataFrame.

import pandas as pd


df = pd.DataFrame(
    {
        "C_1": ["A", "B", "C", "D"],
        "C_2": [40, 34, 38, 45],
        "C_3": [430, 980, 500, 350],
    }
)

filtered_df = df.query("(C_2 < 40) & (C_3 > 450)")

row_1_filtered = filtered_df.head(1)

print("The DataFrame is:")
print(df, "\n")

print("The Filtered DataFrame is:")
print(filtered_df, "\n")


print("The First Row with C_2 less than 45 and C_3 greater than 450 is:")
print(row_1_filtered)

Producción :

The DataFrame is:
  C_1  C_2  C_3
0   A   40  430
1   B   34  980
2   C   38  500
3   D   45  350

The Filtered DataFrame is:
  C_1  C_2  C_3
1   B   34  980
2   C   38  500

The First Row with C_2 less than 45 and C_3 greater than 450 is:
  C_1  C_2  C_3
1   B   34  980

Se filtrarán todas las filas con el valor de la columna C_2 menor que 45 y el valor de la columna C_3 mayor que 450 utilizando el método query() y luego se seleccionará la primera fila del filtered_df utilizando el método head().

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Artículo relacionado - Pandas DataFrame Row