鲍鱼年龄预测 R语言报告 代码加数据集 3000字
本次数据分析报告是对鲍鱼年龄的进行预测,使用了线性全模型和逐步回归模型,根据AIC最小化,应该选择逐步回归模型,并对测试集进行了预测,lm模型对于本课题的研究都很适宜,拟合效果优良。在进行数据分析时,绘制了每一个变量和因变量的关系, 图形能够清晰地展示数据之间的关系,并更容易观察鲍鱼年龄预测对于餐饮有重要的意义,推动餐饮业的发展。
鲍鱼年龄预测
一、背景与目标
鲍鱼的生长在贝类家族中属于比较慢的种类.从受精卵开始,长到商品规格6-8厘米,通常需要1-4年甚至更长时间.以我国的皱纹鲍为例,大约需要近3年的生长才能达到7厘米左右.鲍鱼的生长速度随年龄的增长呈下降趋势.鲍鱼壳在生长过程中会留下类似树木年轮的生长纹.生长纹的明显与否,与其所处环境季节和摄食饵料的种类有关.在生长快速的季节,生长纹明显,距离较宽;在生长缓慢的季节则相反,生长纹密,距离较近. 有时候从鲍鱼壳的正面生长纹不容易直接判断它的准确年龄.可以将壳面附着的杂藻石灰虫等物清除干净,将鲍鱼壳用电灯光透视看出它们的年轮。本次数据分析的目的的对鲍鱼年龄的进行预测
二、数据说明
(一)数据来源
鲍鱼数据集可以从 UCI 数据仓库中获得,总共4177条数据,每条数据中包含8个特征值,
其 URL 是 http://archive.ics.uci.edu/ml/machine-earning-database/abalone/abalone.data。此数据集数据以逗号分隔,没有列头。每个列的名字存在另外一个文件中。建立预测模型所需的数据包括性别、长度、直径、高度、整体重量、去壳后重量、脏器重量、壳的重量、环数。最后一列“环数”是十分耗时采获得的,需要锯开壳,然后在显微镜下观察得到。这是一个有监督机器学习方法通常需要的准备工作。基于一个已知答案的数据集构建预测模型,然后用这个预测模型预测不知道答案的数据。
(二)变量说明
- 对变量进行说明
No 属性 数据类型 字段描述
1 Sex character 性别
2 Length Numeric 长度
3 Diameter Numeric 直径
4 Height Numeric 高度
5 Whole weight Numeric 整重
6 Shucked weight Numeric 去壳重量
7 Viscera weight Numeric 内脏重量
8 Shell weight Numeric 壳重
9 Rings Numeric 年龄
2.显示部分数据
图2—1
三、数据探索
(一)读取数据
setwd(“D:/作业”)
abalone <- read.csv(“原始数据/abalone.data”)
colnames(abalone) <- c(“Sex”,“Length”,“Diameter_continuous”,“Height”,“Whole_Height”,“Shucked_Height”,“Viscera_Height”,“Shell_Height”,“Rings”)
(二)查看数据整体信息
head(abalone)
得到:
图3—1 导入、查看数据
(三)缺失值探索,异常值探索探索
- 缺失值分析
summary(abalone)
library(mice)
md.pattern(abalone)
四、描述性分析
(一)数据性分析
- 鲍鱼年龄概况
图4—1鲍鱼年龄出现次数(频数)
从图中可以看出,鲍鱼年龄为9-10居多。
2. 鲍鱼年龄分布
图4—2鲍鱼年龄的直方图、核密度曲线与正态分布曲线的比较
(二)图像分析
1.鲍鱼性别与鲍鱼年龄的箱型图
图4—3 鲍鱼性别和鲍鱼年龄关系
从图中可以看出,当日I(婴儿)的年龄最小, 成年和雌性和雄性的年龄差不多大 。
- 鲍鱼长度与鲍鱼年龄的关系散点图
五、相关性分析
(一)相关分析
图5—5 相关性分析
图 正值表示两者呈现正相关,负值代表两者呈现负相关。中白色为无相关性;蓝色越深,正相关性越强;橘色越深,负相关性越强。与鲍鱼年龄较为明显的正相关性的上述变量都满足,分别有如下变量 “Length” “Diameter_continuous”, “Height” , “Whole_Height” , “Shucked_Height”, “Viscera_Height” , “Shell_Height”
(二)训练集和测试集构造
数据来自预处理好的df1 ,一共有3898样本,然后按照训练和测试的比例7:3 划分训练集和测试集 。然后将 训练集导出后保存在Rprogram中,文件名为train.csv, 将测试集导出后保存在Rprogram中,文件名为test.csv:
图6—1 测试集构造
图6—2 训练集构造
六、回归分析
(一)建立模型
采用相关性分析后筛选的变量进行建模,首先投入全部变量,构建全模型。
代码示例:
结果:
图7—1 线性模型summary
基于使AIC达到最小的模型是最优模型的原则,采用step自动进行变量选择。
代码示例:
#基于使AIC达到最小的模型是最优模型的原则进行变量选择,作为最终模型
结果:
图7—2 逐步回归
以上为基于AIC最佳的最终多元线性回归模型。回归模型如下:
Rings = 3.788988 -0.828231 SexI -0.005924 SexM+ 10.887167 Diameter_continuous + 12.113821 Height + 3.715021 Whole_Height -11.675710 Shucked_Height -2.187239 Viscera_Height + 5.952640 * Shell_Height
因此与鲍鱼年龄 Rings 显著相关的因素有: Sex 性别、Length 长度 Diameter 直径, Height 高度 ,Whole weight 整重, Shucked weight 去壳重量,Shell weight 壳重
总体来看,纳入模型的变量解释了鲍鱼年龄54.12%的方差。
(二)模型 验证
下面,需要对构建的模型假设进行检验。
多重共线性:
首先对模型中自变量的多重共线性进行分析,通过方差膨胀因子(Variance Inflation Factor, VIF)对多重共线性程度进行度量。利用car包的vif()函数实现,结果可知所有参数估计的VIF值都远小于10,理想的线性模型其自变量的VIF值非常接近1,因此不存在多重共线性问题。
图7—3 多重共线性检验
残差正态性检验:
绘制残差Q-Q图,结果可知点的分布都在直线附近,可见正态性良好。
图7—4 正态性检验
误差独立性:
通过Durbin-Watson检验分析误差的独立性,结果显示:p值不显著(p=0.76)说明无自相关性,误差项之间独立。滞后项lag=1表明数据集中,每个数据都是与其后一个数据进行比较的。
代码示例:
#误差独立性
durbinWatsonTest(lm2)
结果:
(三)数据预测
图7—6 预测结果
八、总结与建议
本次数据分析报告是对鲍鱼年龄的进行预测,使用了线性全模型和逐步回归模型,根据AIC最小化,应该选择逐步回归模型,并对测试集进行了预测,lm模型对于本课题的研究都很适宜,拟合效果优良。在进行数据分析时,绘制了每一个变量和因变量的关系, 图形能够清晰地展示数据之间的关系,并更容易观察
鲍鱼年龄预测对于餐饮有重要的意义,推动餐饮业的发展。

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)