Obter a Primeira Fila de Pandas de Dataframe

Suraj Joshi 30 janeiro 2023
  1. Obter a primeira fila de um Pandas DataFrame utilizando pandas.DataFrame.iloc Propriedade
  2. Obter a primeira fila de um DataFrame Pandas com base na Condição Especificada
Obter a Primeira Fila de Pandas de Dataframe

Este tutorial explica como podemos obter a primeira linha de um Pandas DataFrame utilizando a propriedade pandas.DataFrame.iloc e o método pandas.DataFrame.head().

Utilizaremos o DataFrame no exemplo abaixo para explicar como podemos obter a primeira fila a partir de um 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)

Resultado:

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

Obter a primeira fila de um Pandas DataFrame utilizando pandas.DataFrame.iloc Propriedade

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)

Resultado:

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

Apresenta a primeira linha da DataFrame df. Para seleccionar a primeira linha, utilizamos o índice padrão da primeira linha, isto é, 0 com a propriedade iloc do DataFrame.

Obter a primeira linha de um DataFrame Pandas Utilizando o método pandas.DataFrame.head()

O método pandas.DataFrame.head() devolve um DataFrame com mais de 5 linhas do topo do DataFrame. Podemos também passar um número como argumento ao método pandas.DataFrame.head() que representa o número de filas do topo a ser seleccionado. Podemos passar 1 como argumento para o método pandas.DataFrame.head() para seleccionar apenas a primeira fila do 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)

Resultado:

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

Obter a primeira fila de um DataFrame Pandas com base na Condição Especificada

Para extrair a primeira fila que satisfaz as condições especificadas de um DataFrame, primeiro filtramos as filas que satisfazem as condições especificadas e depois seleccionamos a primeira fila do DataFrame filtrado usando os métodos discutidos acima.

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

Irá exibir a primeira linha com o valor da coluna C_2 inferior a 45 e valor da coluna C_3 superior a 450.

Também podemos utilizar o método query() para filtrar as filas da 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)

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

Filtrará todas as linhas com um valor da coluna C_2 inferior a 45 e valor da coluna C_3 superior a 450 utilizando o método query() e depois seleccionar a primeira linha do filtered_df utilizando o método head().

Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Artigo relacionado - Pandas DataFrame Row