Olá Marcos,
Os dois são equivalentes sim como você percebeu, mas tem algumas diferenças no funcionamento de cada um. O score()
vai receber os valores de x
e y
, vai aplicar o fit()
no modelo e então vai executar o r2_score()
por trás utilizando o y_real
e o y_previsto
.
Resumindo as diferenças:
# score recebe o x e o y
modelo.score(X_test, y_test)
# r2_core recebe o y real e o y previsto
metrics.r2_score(y_test, y_previsto)
Olha se esse tópico te ajuda sobre o score
e o r2_score
.
Assim o erro deve estar acontecendo porque você está passando os valores de y
para o modelo.score()
, e o que essa função espera é que seja passado o valor de x
e o valor de y
Exemplo:
modelo.score(X_test, y_test)
Espero ter ajudado, qualquer dúvida é só falar!