1
resposta

Mão na massa: analisando o perfil das pessoas responsáveis

sexo = {0: 'Masculino', 1: 'Feminino'}

cor = {0:'Indígena', 2:'Branca', 4:'Preta', 6:'Amarela', 8:'Parda'}

anos_de_estudo = {1:'Sem instrução e menos de 1 ano', 2:'1 ano', 3:'2 anos', 4:'3 anos', 5:'4 anos', 6:'5 anos',
    7:'6 anos', 8:'7 anos', 9:'8 anos', 10:'9 anos', 11:'10 anos', 12:'11 anos', 13:'12 anos',14:'13 anos',
    15:'14 anos', 16:'15 anos ou mais', 17:'Não determinados'
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

dados['Cat.Sexo'] = pd.Categorical(
    dados['Sexo'],
    categories=[0,1],
   ordered=True
  )
dados['Cat.Sexo']  = dados['Cat.Sexo'].map(sexo)
dados.head()
dados_distintos = dados[['Sexo', 'Cat.Sexo']].drop_duplicates()
dados_distintos

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

freq_relativa = round(pd.crosstab(dados['Cat.Sexo'], dados['Cat.Cor'], normalize = 'all') * 100,2)
freq_relativa

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

ticket_medio = round(pd.crosstab(dados['Cat.Sexo'], dados['Cat.Cor'], values=dados['Renda'], aggfunc='mean'), 2)

ticket_medio

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

dados['Cat.Sexo'] = pd.Categorical(dados['Sexo'], categories=[0, 1], ordered=True)
dados['Cat.Cor'] = pd.Categorical(dados['Cor'], categories=[0, 2, 4, 6, 8], ordered=True)

dados['Cat.Sexo'] = dados['Cat.Sexo'].map(sexo)
dados['Cat.Cor'] = dados['Cat.Cor'].map(cor)
tabela_cruzada = pd.pivot_table(dados, values='Renda', index='Cat.Sexo', columns='Cat.Cor', aggfunc='mean')
# Exibindo a tabela cruzada
dados.head()

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Oi, Thamiris! Tudo bom?

Excelente! Siga praticando com os desafios e sempre compartilhe conosco.

Você soube aplicar categorias ordenadas de forma eficiente, aproveitou o mapeamento com dicionários para tornar os dados mais legíveis e entendeu como o uso de tabelas cruzadas é essencial para análises comparativas entre grupos.

Como dica adicional, experimente utilizar pd.crosstab() com o parâmetro normalize='index' quando quiser observar a frequência relativa.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!