Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Análise Exploratória - Gráfico de média de aluguel por bairro está invertido?

Olá pessoal!

Estou fazendo a análise exploratória proposta na aula e repensando a solução apresentada pelo instrutor para a criação do gráfico com os 5 bairros de maior média de aluguel.

O código usado foi:

df.groupby('Bairro')[['Valor']].mean().sort_values('Valor')
df_bairros = df.groupby('Bairro')[['Valor']].mean().sort_values('Valor').head()
df_bairros.plot(kind='barh', figsize=(14,10), color='blue');

Achei que pode haver um problema ali: ao usar .sort_values('Valor') sem especificar ascending=False, o método ordena em ordem crescente por padrão. Assim, o .head() pega os bairros com menor média de aluguel, e não os de maior valor, como pede o desafio.

Isso faria com que o gráfico também ficasse invertido — mostrando os bairros com aluguéis mais baixos como se fossem os mais altos.

Minha pergunta é: essa abordagem não estaria gerando um resultado contrário ao solicitado? E não seria melhor fazer algo assim?

df.groupby('Bairro')['Valor'].mean().sort_values(ascending=False).head()

Alguém mais percebeu isso ou testou outra abordagem?

Ou é algo relacionado a versão do Pandas?

2 respostas
solução!

Oi Carlos, tudo bem?

Sim, se utilizássemos apenas df.groupby('Bairro')[['Valor']].mean().sort_values('Valor').head(), estaríamos pegando os bairros com menor valor médio de aluguel, já que sort_values() por padrão ordena em ordem crescente (ascending=True).

Mas notei que na Opinião do Instrutor, a linha que define df_bairros já inclui o parâmetro ascending=False:

df_bairros = df.groupby('Bairro')[['Valor']].mean().sort_values('Valor', ascending=False).head()

Com isso, o código está correto e atende ao enunciado: ele seleciona os 5 bairros com maior valor médio de aluguel.

Espero ter esclarecido.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Muito obrigado pela atenção e ajuda, Monalisa Silva!

Acabei não percebendo que a solução já estava disponível na seção "Opinião do Instrutor".

Baseei minha observação apenas no notebook desafios_resolvidos.ipynb disponibilizado para download, onde são apresentados os cinco bairros com menores valores, e não os maiores. Segue abaixo a tabela com os resultados encontrados:

BairroValor
Ricardo de Albuquerque340.0
Paciência510.0
Santa Cruz590.0
Cosmos610.0
Inhoaíba650.0

Abraços.