Como redefinir um índice no pandas dataframe (com exemplos)


Você pode usar a seguinte sintaxe para redefinir um índice em um DataFrame do pandas:

 df. reset_index (drop= True , place= True )

Observe os seguintes argumentos:

  • drop : especificar True evita que o pandas salve o índice original como uma coluna no DataFrame.
  • inplace : especificar True permite que o pandas substitua o índice no DataFrame original em vez de criar uma cópia do DataFrame.

Os exemplos a seguir mostram como usar essa sintaxe na prática.

Exemplo 1: redefinir o índice e excluir o índice antigo

Suponha que temos o seguinte DataFrame do pandas:

 import pandas as pd

#define DataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]},
                   index=[0, 4, 3, 5, 2, 1, 7, 6])

#view DataFrame
print (df)

   points assists rebounds
0 25 5 11
4 12 7 8
3 15 7 10
5 14 9 6
2 19 12 6
1 23 9 5
7 25 9 9
6 29 4 12

O código a seguir mostra como redefinir o índice do DataFrame e remover completamente o índice antigo:

 #reset indexes
df. reset_index (drop= True , place= True )

#view updated DataFrame
print (df)

   points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12

Observe que o índice foi redefinido e os valores do índice agora variam de 0 a 7.

Exemplo 2: Redefina o índice e mantenha o índice antigo como uma coluna

Suponha que temos o seguinte DataFrame do pandas:

 import pandas as pd

#define DataFrame
df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]},
                   index=['A', 'C', 'D', 'B', 'E', 'G', 'F', 'H'])

#view DataFrame
print (df)

   points assists rebounds
A 25 5 11
C 12 7 8
D 15 7 10
B 14 9 6
E 19 12 6
G 23 9 5
F 25 9 9
H 29 4 12

O código a seguir mostra como redefinir o índice do DataFrame e manter o índice antigo como uma coluna no DataFrame:

 #reset index and retain old index as a column
df. reset_index (inplace= True )

#view updated DataFrame
print (df)

  index points assists rebounds
0 to 25 5 11
1 C 12 7 8
2 D 15 7 10
3 B 14 9 6
4 E 19 12 6
5G 23 9 5
6 F 25 9 9
7:29 4 12

Observe que o índice foi redefinido e os valores do índice agora variam de 0 a 7.

Observe também que o índice antigo (com as letras) é preservado como uma nova coluna no DataFrame chamada “índice”.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:

Como converter índice em coluna no Pandas
Como definir coluna como índice no Pandas
Como renomear o índice no Pandas

Add a Comment

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