1
resposta

Não vale a pena comentar no material sobre o método right no pd.cut? Senti falta.

Se modificarmos ligeiramente o exemplo da aula:

  1. Adicionando informações Atividade: Classificando Alunos
df = pd.DataFrame(
    {
        'alunos': ['Juca', 'Zeca', 'Ana', 'Rita', 'Lia', 'Beto'],
        'notas': [8., 6.999999999, 10., 7., 6., 0.]
    }
).set_index('alunos')

notas = [0,5.9,6.9,11]
rotulos = ['Reprovado','Recuperacao','Aprovado']
df['resultado'] = pd.cut(x=df.notas, bins=notas, labels=rotulos, include_lowest=True)
df

Claramente eh mais simples, excluir o limite superior, para não precisar se preocupar com arredondamento. Na minha cabeça faria mais sentido:

import pandas as pd
from pandasgui import show
import numpy as np

pd.options.display.float_format = '{:,.12f}'.format

menor_valor = np.finfo(np.float32).eps
notas = [0,6,7,10 +menor_valor ]
rotulos = ['Reprovado','Recuperacao','Aprovado']
df['resultado'] = pd.cut(x=df.notas, bins=notas, labels=rotulos, include_lowest=True, right=False)
df

Insira aqui a descrição dessa imagem para ajudar na acessibilidadeFica a sugestão!

1 resposta

Olá Hildermes, tudo bem? Espero que sim!

Ótima sugestão Hildermes, o parâmetro right facilita bastante no momento de escolher os limites dos intervalos.

É sempre bom checar a documentação para encontrar métodos que podem facilitar o processo de solução dos problemas.

Obrigado por compartilhar aqui no fórum, dessa forma mais pessoas conseguem utilizar essa abordagem.

Bons estudos!