Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Divergências nos resultados da aula 'Percentual dos tipos de imóveis'

Olá.

Conforme executei o passo a passo da aula, ocorreu uma diferença entre os meus resultados e o do curso, e não consigo descobrir porque.

Em '06 Percentual dos tipos de imóveis', na segunda linha de código os resultados começaram a ter pequenas divergências.

df.Tipo.value_counts()

Resultado:

| **Tipo** |  | 
| Apartamento | 19532 |
| Casa de condomínio     | 996     |
| Casa     | 967     |
| Quitinete    | 836     |
| Flat     | 476     |
| Casa da vila     | 249     |
| Loft     | 51     |
| Studio     | 4     |
Name: **count**, dtype: int64
df.Tipo.value_counts(normalize=True)

Resultado:

| **Tipo** |  | 
| Apartamento | 0.845139 |
| Casa de condomínio     | 0.043096     |
| Casa     | 0.041842     |
| Quitinete    | 0.036173     |
| Flat     | 0.020596     |
| Casa da vila     | 0.010774     |
| Loft     | 0.002207     |
| Studio     | 0.000173     |
Name: **proportion**, dtype: float64

E quando executo o código abaixo, o nome 'Tipo' fica centralizado sobre a tabela, e não especificando o nome da coluna com a porcentagem dos imóveis.

df.Tipo.value_counts(normalize=True).to_frame()

Então quando tento executar o código para organizar os valores (abaixo) por ordem numérica, não funciona, já que não reconhece a coluna, e ele reproduz a mesma tabela novamente.

df.Tipo.value_counts(normalize=True).to_frame().sort_values('Tipo')

É uma diferença de versão, ou fiz algo errado em algum lugar e nao estou achando?

1 resposta
solução!

Oii, Julia! Tudo bem?

Não se preocupe, pois você não fez nada de errado. E, sim, é uma atualização da biblioteca. Agora, aparece o Tipocentralizado (como você bem destacou) e a coluna que possuem os valores recebeu o nome de proportion.

Captura de tela mostrando um codigo utilizado no google colab para converter uma serie em um df. Na primeira linha temos o codigo de conversão e abaixo o resultado. Tendo destaque a coluna Tipo se referindo a Apartamento, Casa de condominio, Casa, Quitinete e assim por diante. E na sua lateral a coluna com a nova nominação proportion, com os valores.

Nesse caso, para seguir obtendo os resultados como o da aula (sem a inversão), para a ordenação, você pode usar o código substituindo o parâmetro Tipo para proportion:

df.Tipo.value_counts(normalize=True).to_frame().sort_values('proportion')

E para a plotagem, seguimos o mesmo lógica de substituição do parâmetro em sort_values, xlabel, como segue o exemplo:

df_percentual_tipo = df.Tipo.value_counts(normalize=True).to_frame().sort_values('proportion')

df_percentual_tipo.plot(kind='bar', figsize=(14,10), color='pink',
                        xlabel = 'proportion', ylabel='Percentual');

Resultado:

Captura de tela mostrando a plotagem do grafico gerada após a inserção do código mencionado anteriomente. Na imagem possui um quadrado branco, na lateral esquerda temos os valores de percentual e na linha inferior os de proportion.

Realize os testes e observe se funciona como esperado.

Qualquer dúvida, conte conosco.

Bons estudos, Julia!