Pular para o conteúdo

Tutorial Fácil para Iniciantes: Como Adicionar Linhas a um DataFrame Usando Pandas

[

Pandas - Adicionar uma linha a um dataframe

Introdução

Neste tutorial, vamos aprender como adicionar uma nova linha a um dataframe usando a biblioteca Pandas. Pandas é uma biblioteca popular de análise de dados em Python que fornece uma estrutura de dados flexível chamada dataframe.

Sumário

  1. Introdução
  2. Requisitos
  3. Criando um dataframe vazio
  4. Adicionando uma linha com valores específicos
  5. Adicionando uma linha usando dicionário
  6. Adicionando uma linha de dataframe a partir de outro dataframe
  7. Adicionando múltiplas linhas de uma só vez
  8. Atualizando as linhas existentes
  9. Utilizando o método append
  10. Utilizando o método loc
  11. Conclusão

Requisitos

Antes de começarmos, você precisará ter o Pandas instalado em sua máquina. Você pode instalá-lo usando o seguinte comando:

Terminal window
pip install pandas

Certifique-se também de ter o Python instalado corretamente em seu sistema.

Criando um dataframe vazio

Podemos criar um dataframe vazio usando a classe DataFrame do Pandas. O exemplo a seguir ilustra como fazer isso:

import pandas as pd
df = pd.DataFrame(columns=['Nome', 'Idade', 'Cidade']) # cria um dataframe vazio
print(df)

O código acima cria um dataframe vazio com as colunas ‘Nome’, ‘Idade’ e ‘Cidade’. A saída será a seguinte:

Empty DataFrame
Columns: [Nome, Idade, Cidade]
Index: []

Adicionando uma linha com valores específicos

Se quisermos adicionar uma linha com valores específicos ao dataframe, podemos usar o método loc. O exemplo abaixo demonstra como fazer isso:

import pandas as pd
df = pd.DataFrame(columns=['Nome', 'Idade', 'Cidade'])
df.loc[0] = ['João', 25, 'São Paulo']
print(df)

O código acima adiciona uma nova linha ao dataframe com os valores ‘João’, 25 e ‘São Paulo’ nas colunas ‘Nome’, ‘Idade’ e ‘Cidade’, respectivamente. A saída será a seguinte:

Nome Idade Cidade
0 João 25 São Paulo

Adicionando uma linha usando dicionário

Outra forma de adicionar uma linha ao dataframe é usando um dicionário. O exemplo a seguir mostra como fazer isso:

import pandas as pd
df = pd.DataFrame(columns=['Nome', 'Idade', 'Cidade'])
linha = {'Nome': 'Maria', 'Idade': 30, 'Cidade': 'Rio de Janeiro'}
df = df.append(linha, ignore_index=True)
print(df)

O código acima adiciona uma nova linha ao dataframe com os valores do dicionário linha. A opção ignore_index=True nos ajuda a redefinir o índice do dataframe. A saída será a seguinte:

Nome Idade Cidade
0 Maria 30 Rio de Janeiro

Adicionando uma linha de dataframe a partir de outro dataframe

Também podemos adicionar uma linha a partir de outro dataframe. Veja o exemplo abaixo:

import pandas as pd
df1 = pd.DataFrame({'Nome': ['João'], 'Idade': [25], 'Cidade': ['São Paulo']})
df2 = pd.DataFrame({'Nome': ['Maria'], 'Idade': [30], 'Cidade': ['Rio de Janeiro']})
df3 = df1.append(df2, ignore_index=True)
print(df3)

O código acima cria dois dataframes (df1 e df2) e, em seguida, adiciona o conteúdo do dataframe df2 ao dataframe df1. A opção ignore_index=True é utilizada novamente para redefinir o índice do dataframe resultante. A saída será como a seguinte:

Nome Idade Cidade
0 João 25 São Paulo
1 Maria 30 Rio de Janeiro

Adicionando múltiplas linhas de uma só vez

Para adicionar várias linhas ao dataframe de uma só vez, podemos fazer uso do método append em conjunto com uma lista de dicionários. Veja o exemplo a seguir:

import pandas as pd
df = pd.DataFrame(columns=['Nome', 'Idade', 'Cidade'])
linhas = [
{'Nome': 'João', 'Idade': 25, 'Cidade': 'São Paulo'},
{'Nome': 'Maria', 'Idade': 30, 'Cidade': 'Rio de Janeiro'},
{'Nome': 'José', 'Idade': 35, 'Cidade': 'Belo Horizonte'}
]
df = df.append(linhas, ignore_index=True)
print(df)

Neste exemplo, criamos uma lista de dicionários chamada linhas que contém as informações das novas linhas a serem adicionadas. Em seguida, usamos o método append para adicionar todas essas linhas ao dataframe. A saída será:

Nome Idade Cidade
0 João 25 São Paulo
1 Maria 30 Rio de Janeiro
2 José 35 Belo Horizonte

Atualizando as linhas existentes

Para atualizar as linhas existentes em um dataframe, podemos fazer referência à linha pelo índice ou por alguma condição. O exemplo abaixo demonstra como atualizar uma linha com base em seu índice:

import pandas as pd
df = pd.DataFrame({'Nome': ['João', 'Maria', 'José'],
'Idade': [25, 30, 35],
'Cidade': ['São Paulo', 'Rio de Janeiro', 'Belo Horizonte']})
df.loc[1] = ['Ana', 28, 'Curitiba'] # Atualiza a linha de índice 1
print(df)

Neste exemplo, alteramos os valores da segunda linha para ‘Ana’, 28 e ‘Curitiba’, respectivamente. O dataframe será atualizado da seguinte forma:

Nome Idade Cidade
0 João 25 São Paulo
1 Ana 28 Curitiba
2 José 35 Belo Horizonte

Utilizando o método append

O método append pode ser usado para adicionar linhas a um dataframe existente. Veja o exemplo abaixo:

import pandas as pd
df1 = pd.DataFrame({'Nome': ['João'], 'Idade': [25], 'Cidade': ['São Paulo']})
df2 = pd.DataFrame({'Nome': ['Maria', 'José'], 'Idade': [30, 35], 'Cidade': ['Rio de Janeiro', 'Belo Horizonte']})
df1 = df1.append(df2, ignore_index=True)
print(df1)

O código acima cria dois dataframes (df1 e df2) e, em seguida, adiciona o conteúdo do dataframe df2 ao dataframe df1 usando o método append. A opção ignore_index=True é usada mais uma vez para redefinir o índice. A saída será como a seguinte:

Nome Idade Cidade
0 João 25 São Paulo
1 Maria 30 Rio de Janeiro
2 José 35 Belo Horizonte

Utilizando o método loc

Outra maneira de adicionar linhas a um dataframe é usando o método loc. Veja o exemplo abaixo:

import pandas as pd
df = pd.DataFrame(columns=['Nome', 'Idade', 'Cidade'])
df.loc[0, 'Nome'] = 'João'
df.loc[0, 'Idade'] = 25
df.loc[0, 'Cidade'] = 'São Paulo'
print(df)

No exemplo acima, usamos o método loc para acessar uma localização específica no dataframe e, em seguida, atribuímos valores às colunas desejadas. A saída será:

Nome Idade Cidade
0 João 25 São Paulo

Conclusão

Neste tutorial, aprendemos a adicionar uma nova linha a um dataframe usando a biblioteca Pandas em Python. Vimos várias maneiras de realizar essa tarefa, incluindo adicionar linhas com valores específicos, usar dicionários, adicionar linhas de um dataframe a outro, adicionar múltiplas linhas de uma só vez e atualizar linhas existentes. Esperamos que você encontre este tutorial útil e que agora esteja mais confortável para manipular dados em Pandas.

FAQs

1. Posso adicionar uma linha com valores ausentes a um dataframe?

Sim, você pode adicionar uma linha com valores ausentes a um dataframe definindo as colunas relevantes como NaN ou None.

2. É possível adicionar linhas em um local específico do dataframe?

Não, por padrão, as linhas são sempre adicionadas ao final do dataframe. No entanto, você pode reordenar as linhas posteriormente se desejar.

3. Como faço para adicionar uma linha em um dataframe existente sem alterar o índice?

Você pode usar a opção ignore_index=False ao adicionar a linha usando o método append.

4. Posso adicionar uma linha a um dataframe usando uma condição como critério de seleção?

Sim, você pode usar uma condição como critério para selecionar a linha que deseja atualizar ou adicionar.

5. Existe uma maneira de adicionar uma linha a um dataframe sem criar um novo dataframe?

Não, o Pandas não permite adicionar uma linha diretamente ao dataframe sem usar um objeto intermediário.