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

Erro no último código da aula

Tive um problema com o ultimo pedaço de codigo:

#pra deixar as coisas mais claras, a gente começa um df do zero
texugo = pd.DataFrame()

for tipo in grupo_tipo.groups.keys():
    eh_tipo = dados['Tipo'] == tipo
    eh_dentro_do_limite = (dados['Valor'] >= limite_inferior) & (dados['Valor'] <= limite_superior)
    selecao = (eh_tipo) & (eh_dentro_do_limite)
    dados_selecao = dados[selecao]
    texugo = pd.concat([texugo, dados_selecao])

Aparentemente, o código é igual ao do professor, mas não roda aqui, recebo uma exceção de "Cannot convert ndarray to boolblock", averiguando mais profundamente, vi que o erro está na linha que selecao é criado.

Testei mais algumas coisas, vi que eh_tipo é uma serie, mas eh_dentro_do_limite é um Dataframe quando averiguo os tipos, o que não faz sentido pra mim, se os 2 tem metodos similares de criação.

Alguém sabe o que está acontecendo?

2 respostas
solução!

Oi Gabriel,

pelo que o vi vc está com um erro na linha:

eh_dentro_do_limite = (dados['Valor'] >= limite_inferior) & (dados['Valor'] <= limite_superior)

O correto é:

eh_dentro_do_limite = (dados['Valor'] >= limite_inferior[tipo]) & (dados['Valor'] <= limite_superior[tipo])

Repare os [] após limite_inferior.

abs

Deu certo professor! Obrigado!