Obter a Primeira Fila de Pandas de Dataframe

  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

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().

Artigo relacionado - Pandas DataFrame Row

  • Pandas Largar Linhas Duplicadas
  • Pandas Remover Linhas