1
resposta

erro no metodo plot do pareto

Pessoal estou tendo este erro no meu codigo. O que pode ser? Obrigado

ValueError: could not convert string to float: 'Intercept'

codigo:

t_valores = modelo_ajustado_2.tvalues
nome = t_valores.index.tolist()
distribuicao = stats.t(df = 5 )
distribuicao.ppf (q = 1 -0.025)
limite = [distribuicao.ppf(q = 1 - 0.025)] * len(nome)

pareto = sns.barplot(x = t_valores, y = nome)
pareto.figure.set_size_inches(15,6)
pareto.tick_params(labelsize = 20)
pareto.set_xlabel('t-valor', fontsize = 20)

# erro devido a esta linha
pareto.plot(limite, nome, 'r')
1 resposta

Boas Matheus! Tudo bem? Espero que sim!

Aparentemente, o que ocorre é que há algum problema em sua variável t_valores. Para que esse código funcione da maneira com que o professor indicou, o t_valores deve ser uma Series do panda. Isso pode ser verificado através do código:

type(t_valores)

e que deve retornar pandas.core.series.Series. Uma Series é sempre composta por dois vetores, um de indexação e um de dados. Nesse caso, o de indexação é o que extraímos na variável nome, enquanto o de dados é o que está presente em t_valores.values.

Outra possibilidade é tentar realizar o gráfico passando diretamente os valores:

pareto = sns.barplot(x= t_valores.values, y=nome)
pareto.figure.set_size_inches(15,6)
pareto.tick_params(labelsize = 20)
pareto.set_xlabel('t-valor', fontsize = 20)

que retornará o mesmo gráfico.

Espero ter ajudado! Bons estudos!