sábado, 5 de dezembro de 2020

Adicionando nova coluna ao DataFrame existente no Pandas

Vamos discutir como adicionar novas colunas ao DataFrame existente no Pandas. Existem várias maneiras de fazermos essa tarefa.

Método #1: Declarando uma nova lista como uma coluna.

# Importa o módulo pandas
import pandas as pd

# Defina um dicionário contendo dados de Alunos
data = {
        'Nome': ['Jai', 'Princi', 'Gaurav', 'Anuj'],
        'Altura': [5.1, 6.2, 5.1, 5.2],
        'Qualificação': ['Msc', 'MA', 'Msc', 'Msc']
        }

# Converta o dicionário em DataFrame
df = pd.DataFrame(data)

# Declare uma lista que deve ser convertida em uma coluna
address = ['Delhi', 'Bangalore', 'Chennai', 'Patna']

# Usando 'Address' como o nome da coluna
# e igualando-o à lista
df['Address'] = address

# observe o resultado
print(df)

Resultado:

     Nome  Altura Qualificação    Address
0     Jai     5.1          Msc      Delhi
1  Princi     6.2           MA  Bangalore
2  Gaurav     5.1          Msc    Chennai
3    Anuj     5.2          Msc      Patna

Observe que o comprimento da sua lista deve corresponder ao comprimento da coluna do índice, caso contrário, ele mostrará um erro.

Método #2: usando DataFrame.insert()

Isso dá a liberdade de adicionar uma coluna em qualquer posição que quisermos e não apenas no final. Ele também fornece opções diferentes para inserir os valores da coluna.

# Importa o módulo pandas
import pandas as pd

# Defina um dicionário contendo dados de Alunos
data = {
        'Nome': ['Jai', 'Princi', 'Gaurav', 'Anuj'],
        'Altura': [5.1, 6.2, 5.1, 5.2],
        'Qualificação': ['Msc', 'MA', 'Msc', 'Msc']
        }

# Converta o dicionário em DataFrame
df = pd.DataFrame(data)

# Usando DataFrame.insert() para adicionar uma coluna
df.insert(2, "Idade", [21, 23, 24, 21], True)

# observe o resultado
print(df)

Resultado:

     Nome  Altura  Idade Qualificação
0     Jai     5.1     21          Msc
1  Princi     6.2     23           MA
2  Gaurav     5.1     24          Msc
3    Anuj     5.2     21          Msc

Método #3: Usando o método Dataframe.assign()

Este método criará um novo dataframe com uma nova coluna adicionada ao antigo dataframe.

# Importa o módulo pandas
import pandas as pd

# Defina um dicionário contendo dados de Alunos
data = {
        'Nome': ['Jai', 'Princi', 'Gaurav', 'Anuj'],
        'Altura': [5.1, 6.2, 5.1, 5.2],
        'Qualificação': ['Msc', 'MA', 'Msc', 'Msc']
        }

# Converta o dicionário em DataFrame
df = pd.DataFrame(data)

# Usando 'endereço' como o nome da coluna e igualando-a à lista
df2 = df.assign(endereço = ['Delhi', 'Bangalore', 'Chennai', 'Patna'])

# observe o resultado
print(df2)

Resultado:

     Nome  Altura Qualificação   endereço
0     Jai     5.1          Msc      Delhi
1  Princi     6.2           MA  Bangalore
2  Gaurav     5.1          Msc    Chennai
3    Anuj     5.2          Msc      Patna

Método #4: usando um dicionário

Podemos usar um dicionário Python para adicionar uma nova coluna no DataFrame do pandas. Use uma coluna existente como os valores-chave e seus respectivos valores serão os valores da nova coluna.

# Importa o módulo pandas
import pandas as pd

# Defina um dicionário contendo dados de Alunos
data = {
        'Nome': ['Jai', 'Princi', 'Gaurav', 'Anuj'],
        'Altura': [5.1, 6.2, 5.1, 5.2],
        'Qualificação': ['Msc', 'MA', 'Msc', 'Msc']
        }

# Converta o dicionário em DataFrame
df = pd.DataFrame(data)

# Defina um dicionário com os valores-chave de
# uma coluna existente e seus respectivos
# pares de valores como os valores para nossa nova coluna.
endereço = {
            'Delhi': 'Jai', 'Bangalore': 'Princi',
            'Patna': 'Gaurav', 'Chennai': 'Anuj'
            }

# Converta o dicionário em DataFrame
df = pd.DataFrame(data)

# Forneça 'Endereço' como o nome da coluna
df['Endereço'] = endereço

# Observe a saída
print(df)

Resultado:

     Nome  Altura Qualificação   Endereço
0     Jai     5.1          Msc      Delhi
1  Princi     6.2           MA  Bangalore
2  Gaurav     5.1          Msc      Patna
3    Anuj     5.2          Msc    Chennai

Artigo escrito por Chaitanya Tyagi e traduzido por Acervo Lima de Adding new column to existing DataFrame in Pandas

0 comentários:

Postar um comentário