当我在套索回归中拆分训练和测试集时,R ^ 2为负

问题描述

我尝试使用原油价格运行套索回归,当我分成火车和测试集时,我无法洗牌训练和测试集

2020年的原油价格,由于COVID-19而非常奇怪

但是我想知道如何解决火车和测试仪上的错误,我需要在不打乱的情况下使用它

# Import Libraries

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
#%matplotlib inline 
plt.style.use('ggplot') 
import warnings; warnings.simplefilter('ignore')

# Read data from CSV to Pandas 
df = pd.read_csv('https://www.kaggle.com/yothinpukongnin/crude-oil-price?select=DB_2.csv
',index_col=0)
#df = df.iloc[ 0:108,: ]
X = df.drop(['Dubai','EU_RUB'],axis=1)
y = df['Dubai']

# Split Train and Test Set
from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.20,random_state=7,shuffle = False)

#Lasso Regression 
from sklearn.linear_model import Lasso
reg = Lasso(alpha=0.5)
reg.fit(X_train,y_train)

#R^esults from traditional Lasso
from sklearn.metrics import mean_squared_error
print('Lasso Regression: R^2 score on training set',reg.score(X_train,y_train)*100)
print('Lasso Regression: R^2 score on test set',reg.score(X_test,y_test)*100)

测试集的R平方= -356

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)