利用sklearn编写线性回归

这篇博客介绍了如何利用sklearn库构建线性回归模型。首先,通过生成随机数据来建立基础线性模型,然后引入随机扰动使得模型更复杂。接着,对数据进行预处理,包括划分训练集和测试集,以及处理缺失值。文中提到了两种处理空值的方法,一种是使用pandas的fillna、interpolate和dropna函数,另一种是直接用sklearn构建线性回归模型时处理缺失值。

21.11.22学习内容:(代码均可运行)

首先生成随机数据

#生成随机实验数据
import numpy as np
X=[i for i in range(20)]
X=np.reshape(X,(10,2))#转化为,十个样本,每个样本两个特征值,10*2=20
print('X[:,0]= ',X[:,0])
x[:,n]、x[n,:]、x[:,m:n]三者区别如下
'''
X = np.array([[0,1,2],[3,4,5],[6,7,8],[9,10,11],[12,13,14],[15,16,17],[18,19,20]]) 
x[:,n]表示在全部数组(维)中取第n个数据,直观来说,x[:,n]就是取所有集合的第n个数据,
x[n,:]表示在n个数组(维)中取全部数据,直观来说,x[n,:]就是取第n集合的所有数据,
x[:,m:n],即取所有数据集的第m到n-1列数据
print(x[n,:])
'''

 建立基础线性模型,y=ax+b

#矩阵乘法,例如np.dot(X,X.T)
y=np.dot(X,[3,4])+2
print('y= ',y)
运行结果:
X[:,0]=  [ 0  2  4  6  8 10 12 14 16 18]
y=  [  6  20  34  48  62  76  90 104 118 132]

这时生成图片可以看到,模型过于简单

 因此,我们加

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值