线性回归-代码(线性回归-交叉验证)

这篇博客展示了如何运用线性回归算法预测产品销量,并通过代码实现数据处理和模型训练。文章中包含了线性回归模型的构建过程,以及使用交叉验证来评估模型的性能。内容以Python为编程语言,探讨了数据结构与算法在人工智能预测任务中的应用。
摘要由CSDN通过智能技术生成

 该代码为利用线性回归预测销量 折线图

#!/usr/bin/python
# -*- coding:utf-8 -*-

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import Lasso, Ridge
from sklearn.model_selection import GridSearchCV


if __name__ == "__main__":
    # pandas读入
    data = pd.read_csv('Advertising.csv')    # TV、Radio、Newspaper、Sales
    x = data[['TV', 'Radio', 'Newspaper']]
    y = data['Sales']

    x_train, x_test, y_train, y_test = train_test_split(x, y, random_state=1,train_size=0.8) # random_state表示给定一个随机种子,数字任意; train_size=0.8表示训练数据80%,默认75%,若train_size=100表示训练数据100个    
    # model = Lasso() #Lasso回归使用L1正则
    model = Ridge()#Ridge回归使用L2正则  其实需要参数alpha,表示正则项里的 lamda
    alpha_can = np.lo
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个基于 scikit-learn 库实现的交叉验证线性回归预测股价的代码示例: ```python import numpy as np import pandas as pd from sklearn.linear_model import LinearRegression from sklearn.model_selection import TimeSeriesSplit # 读取股票数据 stock_data = pd.read_csv('stock_data.csv') # 提取特征和目标变量 X = stock_data[['feature1', 'feature2', ...]] y = stock_data['target'] # 创建时间序列交叉验证对象 tscv = TimeSeriesSplit(n_splits=5) # 创建线性回归对象 lr = LinearRegression() # 进行交叉验证 scores = [] for train_index, test_index in tscv.split(X): # 划分训练集和测试集 X_train, X_test = X.iloc[train_index], X.iloc[test_index] y_train, y_test = y.iloc[train_index], y.iloc[test_index] # 训练模型 lr.fit(X_train, y_train) # 测试模型 score = lr.score(X_test, y_test) scores.append(score) # 输出交叉验证结果 print('R-squared:', np.mean(scores)) ``` 在上述代码中,我们首先读取了股票数据,提取了特征和目标变量。然后创建了一个时间序列交叉验证对象,这里我们设置了 n_splits=5,表示将样本分成 5 个连续的时间段,每次用其中一个作为测试集,其他做为训练集。接着创建了一个线性回归对象,然后进行交叉验证,每次将训练集和测试集划分出来,对模型进行训练和测试,并记录得分。最后输出交叉验证结果,这里我们计算了每个测试集上的 R-squared 值的平均值作为最终结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值