Oi, Marcelo! Tudo bem?
Sua análise está bem encaminhada! Você já agrupou os dados por bairro e calculou a média do valor de aluguel, ordenando corretamente com ascending=False para ver os bairros com aluguel mais caro. Agora, sobre suas dúvidas:
Sobre o valor elevado em Jacarepaguá
Em casos, como esse, é possível que o valor médio esteja sendo distorcido por outliers (valores extremamente altos). Para validar isso, você pode:
Ver os valores disponíveis para esse bairro:
df_aluguel[df_aluguel['Bairro'] == 'Jacarepaguá']['Valor'].describe()
E até mesmo verificar os valores mais altos:
df_aluguel[df_aluguel['Bairro'] == 'Jacarepaguá'].sort_values('Valor', ascending=False).head()
Se encontrar aluguéis muito acima da média (como casas de luxo ou imóveis comerciais), isso pode estar puxando a média pra cima. Nesse caso, usar a mediana em vez da média pode ser mais representativo:
df_aluguel.groupby('Bairro')[['Valor']].median().sort_values('Valor', ascending=False).head()
Sobre o gráfico ficar do menor para o maior
Se estiver usando plot(kind='barh')
(gráfico horizontal), mesmo que use sort_values(ascending=False)
, o maior valor acaba ficando embaixo. Para corrigir, basta inverter o eixo Y:
import matplotlib.pyplot as plt
media_bairros.plot(kind='barh', figsize=(8, 5))
plt.gca().invert_yaxis() # Faz com que os valores mais altos fiquem no topo
plt.title('Top 5 bairros com maior valor médio de aluguel')
plt.xlabel('Valor médio')
plt.ylabel('Bairro')
plt.tight_layout()
plt.show()
Se estiver usando gráfico vertical (kind='bar'
), a ordem já é respeitada naturalmente e não precisa inverter nada.
Espero ter ajudado.
Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!
Para saber mais:
Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!