Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

erro ao rodar o modelo.fit

ValueError Traceback (most recent call last) in () 1 modelo = LogisticRegression() ----> 2 modelo.fit(treino,treino_marcacoes)

3 frames /usr/local/lib/python3.6/dist-packages/numpy/core/_asarray.py in asarray(a, dtype, order) 83 84 """ ---> 85 return array(a, dtype, copy=False, order=order) 86 87

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

aparece esse erro mecionado acima quando tento executar o comando seguinte=> modelo.fit(treino,treino_marcacoes) obs : Passo 2 arrays numpy

4 respostas

Olá Carlos tudo bem??

Conforme o erro informado podemos observar que está sinalizando para a formatação do dado que está trabalhando, "ValueError: could not convert string to float: '3.170.480.942'" Você irá precisar converter o dado String para Float.

Para isso faça o seguinte onde encontra-se esta informação 3.170.480.942 siga o exemplo básico de aplicação:

s = '10.5674'

f = float(s)

print(type(f))
print('Float Value =', f)

Espero ter ajudado e qualquer dúvida só colar aqui!

features  = avaliacoes[avaliacoes.columns[1:16]]
gostos = avaliacoes[avaliacoes.columns[16:]]

treino, teste, treino_marcacoes, teste_marcacoes = train_test_split(features, gostos)

treino_marcacoes = treino_marcacoes.values.ravel()
teste_marcacoes = teste_marcacoes.values.ravel()

modelo = LogisticRegression()
modelo.fit(treino,treino_marcacoes)

no metodo modelo.fit passo 2 numpy.ndarray e ele da esse erro.

solução

Olá Carlos,

Acredito que os seus dados foram modificados em algum momento, no dataset da atividade existe o valor 31.70480942 e não 3.170.480.942 como aparece no seu erro (esses pontos impedem o python de converter o valor para float).

Assim sugiro que baixe novamente o dataset avaliacoes_usuario.csv e tente novamente executar o código utilizando o arquivo baixado.

Obs.: O arquivo está com o encoding iso-8859-1, então você tem que passar o parâmetro encoding='iso-8859-1' na leitura do arquivo.

Diz se isso resolve o problema, fico no aguardo!

Deu certo, deve ter modificado em algum momento e não percebi. vlw mesmo