~~557 2021-09-09 16:49 采纳率: 76.7%
浏览 673
已结题

python时间序列预测的真实值和预测值的对比图怎么画

img


类似于这种图,怎么在lasso回归之后画出这种图,下面是代码



```python
import pandas as pd
import numpy as np
from sklearn import model_selection
from sklearn.linear_model import Lasso, LassoCV
from sklearn.metrics import mean_squared_error
import matplotlib.pyplot as plt

data = pd.read_csv(r'')

#拆分为训练集和测试集
predictors = data.columns[1:]
x_train, x_test, y_train, y_test = model_selection.train_test_split(data[predictors], data.fuel,
                                                               test_size=0.25, random_state=1234)
#构造不同的lambda值
Lambdas = np.logspace(-7, -1, 200)
#设置交叉验证的参数,使用均方误差评估
lasso_cv = LassoCV(alphas=Lambdas, normalize=True, cv=10, max_iter=10000)
lasso_cv.fit(x_train, y_train)

#基于最佳lambda值建模
lasso = Lasso(alpha=lasso_cv.alpha_, normalize=True, max_iter=10000)
lasso.fit(x_train, y_train)
#打印回归系数
print('最优参数:', lasso_cv.alpha_)
print(pd.Series(index=['Intercept']+x_train.columns.tolist(),
                data=[lasso.intercept_]+lasso.coef_.tolist()))

#模型评估
lasso_pred = lasso.predict(x_test)
#均方误差
MSE = mean_squared_error(y_test, lasso_pred)
print('均方误差:', MSE)

train_score = lasso.score(x_train, y_train)  # 模型对训练样本得准确性
test_score = lasso.score(x_test, y_test)  # 模型对测试集的准确性
print(train_score)
print(test_score)

  • 写回答

2条回答 默认 最新

  • CSDN专家-HGJ 2021-09-09 22:49
    关注

    原值和预测值都与时间保持一一对应,设定时间为横轴,保持date要与pre,acc长度一致,试一试看。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月17日
  • 已采纳回答 9月9日
  • 创建了问题 9月9日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵