não ficou claro porque o comando "dist_freq_qualitativas.rename_axis('Sexo', axis='columns')
" altera o titulo em cima do "index
".
Se eu quisesse alterar outro titulo como ficaria? Frequência ou porcentagem, exemplo.
não ficou claro porque o comando "dist_freq_qualitativas.rename_axis('Sexo', axis='columns')
" altera o titulo em cima do "index
".
Se eu quisesse alterar outro titulo como ficaria? Frequência ou porcentagem, exemplo.
Olá, Matheus, tudo bem?
Para explicar o comando, eu vou mostrar como usar o rename_axis()
tanto para columns
quanto para index
, tudo bem?
O instrutor adicionou a coluna Sexo
através do parâmetro axis='columns'
mais como um efeito visual. Pois o parâmetro axis
em rename_axis()
é responsável por renomear um eixo sendo ele ou o do index ou o das colunas. Para ilustrar esse efeito, vamos utilizá-lo com um outro exemplo de DataFrame:
O nosso Dataframe inicialmente tem o seguinte código e formato:
import pandas as pd
atletas = pd.DataFrame([['Marcos', 9.62], ['Pedro', 9.81], ['João', 9.69],
['Beto', 9.72]], columns = ['Corredor', 'Melhor Tempo'])
atletas
Dataframe original:
Corredor | Melhor Tempo | |
---|---|---|
0 | Marcos | 9.62 |
1 | Pedro | 9.81 |
2 | João | 9.69 |
3 | Beto | 9.72 |
Usando o parâmetro axis = 'columns'
Para dar um título às nossas colunas usamos esse parâmetro. Note que o professor o utilizou na aula como um artifício de manter todos os labels no topo:
atletas = pd.DataFrame([['Marcos', 9.62], ['Pedro', 9.81], ['João', 9.69],
['Beto', 9.72]], columns = ['Corredor', 'Melhor Tempo'])
atletas.rename_axis('id', axis = 'columns', inplace = True)
atletas
Dataframe com o parâmetro axis = 'columns'
:
id | Corredor | Melhor Tempo |
---|---|---|
0 | Marcos | 9.62 |
1 | Pedro | 9.81 |
2 | João | 9.69 |
3 | Beto | 9.72 |
Usando o parâmetro axis = 'index'
Para dar um título ao nosso index
usamos esse parâmetro. Neste caso, ele vai para uma camada abaixo, separando o título do index
dos labels da coluna:
atletas = pd.DataFrame([['Marcos', 9.62], ['Pedro', 9.81], ['João', 9.69],
['Beto', 9.72]], columns = ['Corredor', 'Melhor Tempo'])
atletas.rename_axis('id', axis = 'index', inplace = True)
atletas
Dataframe com o parâmetro axis = 'index'
:
Corredor | Melhor Tempo | |
---|---|---|
id | ||
0 | Marcos | 9.62 |
1 | Pedro | 9.81 |
2 | João | 9.69 |
3 | Beto | 9.72 |
Existem uma série de formas de realizar a mudança dos labels das colunas. A mais adequada para renomear colunas específicas seria através do método .rename()
referindo as colunas que deseja alterar (serve para 1 ou mais colunas):
dados.rename(columns={'nome_antigo_1': 'nome_novo_1', 'nome_antigo_2': 'nome_novo_2'}, inplace=True)
Usando nosso exemplo teríamos:
import pandas as pd
atletas = pd.DataFrame([['Marcos', 9.62], ['Pedro', 9.81], ['João', 9.69],
['Beto', 9.72]], columns = ['Corredor', 'Melhor Tempo'])
atletas.rename(columns={'Melhor Tempo': 'melhor_tempo'}, inplace=True)
atletas
Com a saída:
Corredor | melhor_tempo | |
---|---|---|
0 | Marcos | 9.62 |
1 | Pedro | 9.81 |
2 | João | 9.69 |
3 | Beto | 9.72 |
Espero ter ajudado e qualquer dúvida é só chamar!
Forte abraço!