【数据挖掘】一元线性回归在鸢尾花数据集中实战预测(超详细 附源码)

简介: 【数据挖掘】一元线性回归在鸢尾花数据集中实战预测(超详细 附源码)

需要源码请点赞关注收藏后评论区留言并且私信~~~

一、一元线性回归模型的参数估计

一元线性回归模型中参数估计方法有最小二乘法、矩方法和极大似然方法.

最小二乘法(Least Squre Estimation, LSE)又称最小平方法,它通过最小化误差的平方和寻找数据的最佳函数匹配

最小二乘法也是用于拟合回归线最常用的方法。对于观测数据,它通过最小化每个数据点到线的垂直偏差平方和来计算最佳拟合线。因为在相加时,偏差先平方,所以正值和负值没有抵消

要点:

1.自变量与因变量之间必须有线性关系

2.多元回归存在多重共线性,自相关性和异方差性

3.线性回归对异常值非常敏感。它会严重影响回归线,最终影响预测值

4.多重共线性会增加系数估计值的方差,使得在模型轻微变化下,估计非常敏感。结果就是系数估计值不稳定

5.在多个自变量的情况下,我们可以使用向前选择法,向后剔除法和逐步筛选法来选择最重要的自变量

根据微积分求极值原理,通过求偏导并置为0得到

求解方程组得到:

二、一元线性回归模型的误差方差估计

三、一元回归模型的主要统计检验

回归分析要通过样本所估计的参数来代替总体的真实参数,或者说用样本回归线代替总体回归线

尽管从统计性质上已知,如果有足够多的重复抽样,参数的估计值的期望就等于总体的参数真值,但在一次抽样中,估计值不一定就等于该真值。那么在一次抽样中,参数的估计值与真值的差异有多大,是否显著,就需要进一步进行统计检验

在一元回归的统计检验主要包括拟合优度检验,变量显著性检验和残差标准差检验

1. 拟合优度检验

拟合优度检验是用卡方统计量进行统计显著性检验的重要内容之一。它是依据总体分布状况,计算出分类变量中各类别的期望频数,与分布的观察频数进行对比,判断期望频数与观察频数是否有显著差异,从而达到从分类变量进行分析的目的。它是对样本回归直线与样本观测值之间拟合程度的检验

2. 变量的显著性检验(t检验)

显著性检验就是事先对总体(随机变量)的参数或总体分布形式做出一个假设,然后利用样本信息来判断这个假设(备择假设)是否合理,即判断总体的真实情况与原假设是否有显著性差异。显著性检验是针对我们对总体所做的假设进行检验,其原理就是“小概率事件实际不可能性原理”来接受或否定假设

四、一元线性回归对鸢尾花数据集实战

下面使用一元线性回归方法对鸢尾花数据集中的petal-length和petal-width两列数据进行回归分析

 

结果如下

回归线的参数如下

对花萼长度为3.9的花,预测其花萼宽度

部分代码如下

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
froklearn.linear_model import LinearRegression
%matplline
iris = load_iris()   #导入数据集iris
data=pd.DataFrame(iris.data)
data.columns=['sepal-length', 'sepal-width', 'petal-length', 'petal-width']
data.head()   #显示前5行
# 使用sklearn完成一元线性回归
x = data['petal-length'].values
y = data['petal-width'].values
x = x.reshape(len(x),1)
y = y.reshape(len(y),1)
clf = Linea
plt.scatter(x,y,s=50)
plt.plot(x,pre,'r-',linewidth=2)
plt.xlabel('petal-length')
plt.ylabel('petal-width')
for idx, m in enumerate(x):  
    plt.plot([m,m],[y[idx],pre[idx]], 'g-')  
plt.show()

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
3天前
|
人工智能 分布式计算 算法
数据挖掘实战随笔更新清单
这是一系列技术博客的摘要,涵盖了多个主题。包括Elasticsearch实战经验、Maxcompute中的Geohash转换和GPS处理、Python环境配置与管理(如Jupyter、Miniforge、Miniconda)、批量接口调用、多进程CSV图片下载、Excel到Markdown转换、Scikit-learn的异常检测(OC-SVM)和模型总结、人工智能领域的图像分类和识别、文本挖掘算法以及数仓相关的行转列处理。所有文章都在持续更新和补充中。
13 2
|
22天前
|
算法 搜索推荐 数据挖掘
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(续)
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(续)
|
22天前
|
机器学习/深度学习 数据采集 算法
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(二)
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(二)
|
22天前
|
数据可视化 搜索推荐 数据挖掘
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(一)
数据挖掘实战 —— 抖音用户浏览行为数据分析与挖掘(一)
|
22天前
|
算法 数据挖掘 数据库
R语言主成分PCA、决策树、boost预警模型在跨区域犯罪研究数据挖掘分析|数据分享
R语言主成分PCA、决策树、boost预警模型在跨区域犯罪研究数据挖掘分析|数据分享
|
22天前
|
数据可视化 数据挖掘
数据分享|R语言IMDb TOP250电影特征数据挖掘可视化分析受众偏好、排名、投票、评分(下)
数据分享|R语言IMDb TOP250电影特征数据挖掘可视化分析受众偏好、排名、投票、评分