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

Diferença no len da variável bins e labels

Bom dia

Na documentação do pandas é destacado a seguinte orientação. labels: Must be the same length as the resulting bins¹.

Indicando que a variável labels deve ter o mesmo comprimento da variável bins, mas no exercício a variável labels tem três categorias, e a variável classes quatro categorias.

classes = [dados.Altura.min(), 1.65, 1.75, dados.Altura.max()]
labels = ['1 - Baixa', '2 - Média', '3 - Alta']

frequencia = pd.value_counts(
    pd.cut(
        x = dados.Altura,
        bins = classes,
        labels = labels,
        include_lowest = True
    )
)

Queria entender um pouco melhor, a função cut considera as duas variáveis do meio (1.65 e 1.75) como o espaço da média?

Obrigado!

¹disponível em: https://pandas.pydata.org/docs/reference/api/pandas.cut.html?highlight=cut#pandas.cut. Acesso em: 04 Ago. 2020.

1 resposta
solução!

Ola Marcos, tudo bem ? Espero que sim.

A documentação diz que a quantidade de labels deve ser igual a quantidade de bins e a quantidade de bins vai ser o tamanho da nossa lista menos 1.

quantidade de bins = len(classes) - 1

Então na verdade a variável classe , que estamos mandando no parâmetro x da função cut, guarda os intervalos, nesse exemplo temos:

1 - Baixa vai de menor_altura até 1.65

2 - Média vai de 1.65 até 1.75

3 - Alta vai de 1.75 até maior_altura

Por isso o nosso intervalo fica assim:

classes = [dados.Altura.min(), 1.65, 1.75, dados.Altura.max()]

Tem outro exemplo que fiz nesse tópico que acho que pode facilitar o entendimento.

Espero ter ajudado, qualquer duvida não hesite em perguntar.

Bons Estudos.

: )