Pandas iteram sobre linhas

Pandas iteram sobre linhas
Ao longo deste artigo, descobriremos vários métodos e técnicas que podemos usar para iterar sobre linhas em um quadro de dados de pandas.

Amostra de dataframe

Vamos começar definindo uma amostra de dados de dados. Depois disso, sinta -se à vontade para usar seu quadro de dados como achar melhor.

df = pd.Quadro de dados(
'db': ['mysql', 'postgresql', 'redis', 'mongodb', 'servidor sql'],
'Port': [3306, 5480, 3309, 9001, 5500],
'Registros': [12000, 2344, 4500, 90000, 1000]
)
df

O código acima deve criar um quadro de dados simples, como mostrado abaixo:

Método 1 - Linhas iteradas usando o iterrows ()

Os pandas nos fornecem o método iterrows () que nos permite iterar sobre as linhas de um quadro de dados. A função retorna um par de índice e linha como uma série.

Podemos usar essa função para iterar sobre as linhas, como mostrado no exemplo abaixo:

Para _, linha em df.iterrows ():
print (f "linha \ n")

No código de exemplo acima, usamos a função iterrows () para buscar cada linha do quadro de dados. O código acima deve retornar:

Observe que o _ no loop representa o índice da coluna no DataFrame.

Método 2 - Linhas iteradas usando itetuples ()

O método itertUples () em pandas nos permite iterar sobre as linhas de um quadro de dados de pandas. A função retorna um objeto para nos permitir iterar sobre as tuplas nomeadas para cada linha no quadro de dados.

A função também permite preservar o tipo de dados enquanto itera. Portanto, é considerado mais rápido que o iterrows ().

Um exemplo de ilustração é mostrado no código abaixo:

para linha em df.itertUples ():
Imprimir (linha)

O código acima deve retornar tuplas para cada linha no quadro de dados. Um exemplo de saída é como mostrado:

Para excluir o índice do resultado, podemos definir o parâmetro de índice como false. Um exemplo é como mostrado:

para linha em df.itertuplos (index = false):
Imprimir (linha)

O código acima deve retornar:

Pensamentos

Os pandas geralmente desencorajam a iteração de um quadro de dados. Além disso, nunca modifique os dados enquanto itera, pois a iteração retorna uma cópia dos dados e não uma visualização.

Se você deseja modificar os dados enquanto itera, pode optar por outras opções, como:

  1. Lista compreensões
  2. Vetorização
  3. Rotinas de Cython.