Como inserir uma coluna em um dataframe do pandas


Muitas vezes você pode querer inserir uma nova coluna em um DataFrame do pandas. Felizmente, isso é fácil de fazer usando a função pandas insert() , que usa a seguinte sintaxe:

inserir(loc,coluna,valor,allow_duplicates=Falso)

Ouro:

  • loc: índice no qual inserir a coluna. A primeira coluna é 0.
  • coluna: Nome a ser dado à nova coluna.
  • valor: Array de valores para a nova coluna.
  • permitir_duplicates: permitir ou não que o novo nome da coluna corresponda ao nome da coluna existente. O padrão é falso.

Este tutorial mostra vários exemplos de uso prático desta função.

Exemplo 1: Insira uma nova coluna como a primeira coluna

O código a seguir mostra como inserir uma nova coluna como a primeira coluna de um DataFrame existente:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#view DataFrame
df
        points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

#insert new column 'player' as first column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= 0 , column='player', value=player_vals)
df

        player points assists rebounds
0 to 25 5 11
1 B 12 7 8
2 C 15 7 10
3 D 14 9 6
4 E 19 12 6

Exemplo 2: Insira uma nova coluna como coluna do meio

O código a seguir mostra como inserir uma nova coluna como a terceira coluna de um DataFrame existente:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as third column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= 2 , column='player', value=player_vals)
df

        points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

Exemplo 3: Insira uma nova coluna como última coluna

O código a seguir mostra como inserir uma nova coluna como a última coluna de um DataFrame existente:

 import pandas as pd

#createDataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 9, 12],
                   'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as last column
player_vals = ['A', 'B', 'C', 'D', 'E']
df. insert (loc= len (df.columns) , column='player', value=player_vals)
df

        points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

Observe que usar len(df.columns) permite inserir uma nova coluna como a última coluna de qualquer dataFrame, independentemente de quantas colunas ela possa conter.

Você pode encontrar a documentação completa da função insert() aqui .

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *