Obtenez la première ligne de pandas Dataframe

Suraj Joshi 30 janvier 2023
  1. Obtenir la première ligne d’un Pandas DataFrame en utilisant la propriété pandas.DataFrame.iloc
  2. Obtenir la première ligne d’un DataFrame Pandas en fonction de la condition spécifiée
Obtenez la première ligne de pandas Dataframe

Ce tutoriel explique comment nous pouvons obtenir la première ligne d’une Pandas DataFrame en utilisant la propriété pandas.DataFrame.iloc et la méthode pandas.DataFrame.head().

Nous utiliserons le DataFrame dans l’exemple ci-dessous pour expliquer comment nous pouvons obtenir la première ligne d’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)

Production :

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

Obtenir la première ligne d’un Pandas DataFrame en utilisant la propriété 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)

Production :

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

Il affiche la première ligne du DataFrame df. Pour sélectionner la première ligne, nous utilisons l’index par défaut de la première ligne, c’est-à-dire 0 avec la propriété iloc du DataFrame.

Obtenir la première ligne d’un DataFrame de Pandas en utilisant la méthode pandas.DataFrame.head()

La méthode pandas.DataFrame.head() renvoie un DataFrame avec les 5 premières lignes du DataFrame. Nous pouvons également passer un nombre en argument à la méthode pandas.DataFrame.head() représentant le nombre de lignes les plus hautes à sélectionner. Nous pouvons passer 1 en argument à la méthode pandas.DataFrame.head() pour ne sélectionner que la première ligne du 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)

Production :

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

Obtenir la première ligne d’un DataFrame Pandas en fonction de la condition spécifiée

Pour extraire la première ligne remplissant les conditions spécifiées d’un DataFrame, nous filtrons d’abord les lignes remplissant les conditions spécifiées, puis nous sélectionnons la première ligne du DataFrame filtré en utilisant les méthodes discutées ci-dessus.

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)

Production :

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

Il affichera la première ligne avec la valeur de la colonne C_2 inférieure à 45 et la valeur de la colonne C_3 supérieure à 450.

Nous pouvons également utiliser la méthode query() pour filtrer les lignes du 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)

Production :

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

Il va filtrer toutes les lignes avec la valeur de la colonne C_2 inférieure à 45 et la valeur de la colonne C_3 supérieure à 450 en utilisant la méthode query() et ensuite sélectionner la première ligne du filtered_df en utilisant la méthode head().

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Article connexe - Pandas DataFrame Row