Adicionar nova coluna à DataFrame existente em Python Pandas
-
[]
Método do operador para adicionar uma nova coluna em Pandas -
df.insert()
Método para adicionar uma nova coluna em Pandas -
df.assign()
Método para adicionar a nova coluna em Pandas -
df.loc()
Método para adicionar uma nova coluna em Pandas
A adição de uma nova coluna ao DataFrame existente é usada com muita freqüência quando se trabalha com grandes conjuntos de dados. Por exemplo, a DataFrame
existente tem colunas First
, Last
e Age
, e precisamos adicionar uma nova coluna city
a ela. Abaixo estão listadas as diferentes maneiras de realizar esta tarefa.
- Método do operador
[]
df.insert()
Métododf.assign()
Métododf.loc()
Método
Utilizaremos o mesmo DataFrame
nas próximas seções como a seguir,
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
print(df)
Resultado:
First Last Age
0 Ali Azmat 30
1 Sharukh Khan 40
2 Linus Torvalds 70
[]
Método do operador para adicionar uma nova coluna em Pandas
Poderíamos utilizar o operador []
para adicionar uma nova coluna ao DataFrame existente.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
city = ["Lahore", "Dehli", "New York"]
df["city"] = city
print(df)
Resultado:
First Last Age city
0 Ali Azmat 30 Lahore
1 Sharukh Khan 40 Dehli
2 Linus Torvalds 70 New York
df.insert()
Método para adicionar uma nova coluna em Pandas
Você pode utilizar a função df.insert()
se quiser adicionar a nova coluna em um índice específico. O primeiro parâmetro da função df.insert()
é o índice de inserção a partir de zero.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df.insert(3, "city", ["Lahore", "Dehli", "New York"], True)
print(df)
Resultado:
First Last Age city
0 Ali Azmat 30 Lahore
1 Sharukh Khan 40 Dehli
2 Linus Torvalds 70 New York
df.assign()
Método para adicionar a nova coluna em Pandas
df.assign()
também pode ser utilizado para adicionar uma nova coluna a um DataFrame existente.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df = df.assign(city=["Lahore", "Dehli", "New York"])
print(df)
Resultado:
First Last Age city
0 Ali Azmat 30 Lahore
1 Sharukh Khan 40 Dehli
2 Linus Torvalds 70 New York
Vamos ver como adicionar múltiplas colunas utilizando df.assign()
. O exemplo abaixo irá adicionar colunas city
e score
.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df = df.assign(city=["Lahore", "Dehli", "New York"], score=[20, 30, 40])
print(df)
Resultado:
First Last Age city score
0 Ali Azmat 30 Lahore 20
1 Sharukh Khan 40 Dehli 30
2 Linus Torvalds 70 New York 40
df.loc()
Método para adicionar uma nova coluna em Pandas
O método df.loc()
também pode adicionar uma nova coluna em um DataFrame existente.
import pandas as pd
data = [["Ali", "Azmat", "30"], ["Sharukh", "Khan", "40"], ["Linus", "Torvalds", "70"]]
df = pd.DataFrame(data, columns=["First", "Last", "Age"])
df.loc[:, "city"] = ["Lahore", "Dehli", "New York"]
print(df)
Resultado:
First Last Age city
0 Ali Azmat 30 Lahore
1 Sharukh Khan 40 Dehli
2 Linus Torvalds 70 New York