algae预测

lm.predictions.a1 <- predict(final.lm,clean.algae)
algae <- algae[-manyNAs(algae),]
clean.algae <- knnImputation(algae,k=10)
clean.algae
lm.a1 <- lm(a1~.,data=clean.algae[,1:12])
lm.a1
summary(lm.a1)
anova(lm.a1)
lm2.a1 <- update(lm.a1,.~.-season)
lm2.a1
summary(lm2.a1)
anova(lm.a1,lm2.a1)
final.lm <- step(lm.a1)
summary(final.lm)
####回归树
library(rpart)
library(DMwR)#加载这个包,才会有海藻数据集
data(algae)

algae <- algae[-manyNAs(algae),]
rt.a1 <- rpart(a1~.,data=algae[,1:12])
rt.a1
prettyTree(rt.a1)
printcp(rt.a1)
rt2.a1 <- prune(rt.a1,cp=0.08)
rt2.a1
first.tree <- rpart(a1~.,data=algae[,1:12])
snip.rpart(first.tree,c(4,7))
rt.a1 <- rpartXse(a1~.,data=algae[,1:12])
a
rt.a1
prettyTree(first.tree)
snip.rpart(first.tree)
lm.predictions.a1 <- predict(final.lm,clean.algae)
summary(lm.a1)
anova(lm.a1)
lm2.a1 <- update(lm.a1,.~.-season)
summary(lm2.a1)
anova(lm.a1,lm2.a1)
anova(lm2.a1)
#不断重复这个过程,直到没有可剔除的候选系数
final.lm <- step(lm.a1)
summary(final.lm)
library(rpart)
data(algae)
algae <- algae[-manyNAs(algae),]
rt.a1 <- rpart(a1~.,data=algae[,1:12])
rt.a1
prettyTree(rt.a1)
printcp(rt.a1)
rt2.a1 <- prune(rt.a1,cp=0.08)
rt2.a1
rt.a1 <- rpartXse(a1~.,data=algae[,1:12])
rt.a1
first.tree <- rpart(a1~.,data=algae[,1:12])
snip.rpart(first.tree,c(4,7))
my.tree <- snip.rpart(first.tree,c(4,7))
my.tree
prettyTree(first.tree)
snip.rpart(first.tree)
q()
rt.predictions.a1 <- predict(rt.a1,algae)
(mae.a1.lm <- mean(abs(lm.predictions.a1-algae[,"a1"])))
(mae.a1.rt <- mean(abs(rt.predictions.a1-algae[,"a1"])))
#均方误差
(mse.a1.lm <- mean((lm.predictions.a1-algae[,"a1"])^2))
(mse.a1.rt <- mean((rt.predictions.a1-algae[,"a1"])^2))
#平均绝对误差 NMSE
(nmse.a1.lm <- mean((lm.predictions.a1-algae[,‘a1‘])^2)/mean((mean(algae[,‘a1‘])-algae[,‘a1‘])^2))
(nmse.a1.rt <- mean((rt.predictions.a1-algae[,‘a1‘])^2)/mean((mean(algae[,‘a1‘])-a1gae[,‘a1‘])^2))
old.par <- par(mfrow=c(1,2)
plot(lm.predictions.a1,clean.algae[,"a1"],main="Linear Model",xlab="Predictions",ylab="True Values")
lm.predictions.a1
algae[,"a1"]
abline(0,1,lty=2)
plot(rt.predictions.a1,clean.algae[,"a1"],main="Regression Tree",xlab="Predictions",ylab="True Values")
abline(0,1,lty=2)
par(old.par)
algae[identify(lm.predictions.a1,clean.algae[,"a1"]),]
sensible.lm.preictions.a1 <- ifelse(lm.predictions.a1<0,0,lm.predictions.a1)
时间: 2024-09-29 09:30:04

algae预测的相关文章

R语言使用机器学习算法预测股票市场

quantmod 介绍 quantmod 是一个非常强大的金融分析报, 包含数据抓取,清洗,建模等等功能. 1. 获取数据 getSymbols 默认是数据源是yahoo 获取上交所股票为 getSymbols("600030.ss"), 深交所为 getSymbols("000002.sz").  ss表示上交所, sz表示深交所 2. 重命名函数 setSymbolLookup 3. 股息函数 getDividends 4. 除息调整函数 adjustOHLC

简单的预测

1)原油如期破30,还会下,会维持一段时间,然后可能会因为黑天鹅事件往上,这里面是政治而不是供需,老大还是需要小弟的: 2)今年的天气会比较恶劣,粮食会是个大问题: 3)钢铁等金属的需求不太会好转,后面需要的是质量而不是数量: 4)篱笆都已经扎好了,贬值是必然,汇率是社会效率的对比: 5)房价一定会跌,房产税一定会收:不要拿牛刀原来的预测举例,时局是会变的:实业如此之差,无法支撑的: 6)前面说过,未来的10年(现在是9年)是动荡的10年,战争有的时候是无法避免的: 当一次章鱼哥玩玩,就是玩玩:

决策树ID3算法预测隐形眼睛类型--python实现

本节讲解如何预测患者需要佩戴的隐形眼镜类型. 1.使用决策树预测隐形眼镜类型的一般流程 (1)收集数据:提供的文本文件(数据来源于UCI数据库) (2)准备数据:解析tab键分隔的数据行 (3)分析数据:快速检查数据,确保正确地解析数据内容,使用createPlot()函数绘制最终的树形图 (4)训练算法:createTree()函数 (5)测试算法:编写测试函数验证决策树可以正确分类给定的数据实例 (6)使用算法:存储数的数据结构,以使下次使用时无需重新构造树 trees.py如下: #!/u

六爻预测等各种预测术的本质探讨之随机数猜想

对于各类预测术,比如六爻术,源于周易八卦.大家对预测术的观点泾渭分明,要么很相信,要么很不屑.或者有些人认为信则有不信则无. 当然我本人是信奉现代科学的,不过预测术确实有不可思议的地方,对过去和未来的分析不是简单的一句"巧合,概率论"能说的过去的.现经过本人的一番分析,试图对各类预测术的本质来个大起底. 其实,预测术不神奇,更不是有什么鬼神之力.而且也不能说古人比现在人更聪明.预测术的外圈是遵循一定规律的一整套规则,这些规则是古代在不停的经验总结中逐步完善的.换句话说,只要你自己能遵循

推荐系统(recommender systems):预测电影评分--构造推荐系统的一种方法:协同过滤(collaborative filtering )

协同过滤(collaborative filtering )能自行学习所要使用的特征 如我们有某一个数据集,我们并不知道特征的值是多少,我们有一些用户对电影的评分,但是我们并不知道每部电影的特征(即每部电影到底有多少浪漫成份,有多少动作成份) 假设我们通过采访用户得到每个用户的喜好,如上图中的Alice喜欢爱情电影,不喜欢动作电影,则我们将θ(1)设为[0,5,0],如此设置θ(2),θ(3),θ(4)的值,这样我们有了每个用户的θ的值以及他们对电影的打分,就可以推断出每部电影的x(特征)的值.

条件随机场(CRF) - 4 - 学习方法和预测算法(维特比算法)

声明: 1,本篇为个人对<2012.李航.统计学习方法.pdf>的学习总结,不得用作商用,欢迎转载,但请注明出处(即:本帖地址). 2,由于本人在学习初始时有很多数学知识都已忘记,所以为了弄懂其中的内容查阅了很多资料,所以里面应该会有引用其他帖子的小部分内容,如果原作者看到可以私信我,我会将您的帖子的地址付到下面. 3,如果有内容错误或不准确欢迎大家指正. 4,如果能帮到你,那真是太好了. 学习方法 条件随机场模型实际上是定义在时序数据上的对数线性模型,其学习方法包括极大似然估计和正则化的极大

银行客户流失预测

针对银行客户流失预测,主要流程分为:特征预处理.特征选择,分类模型选择与训练.主要工作如下: 1:特征预处理与选择 对性别进行哑变量处理: 对是否有****信息将布尔值转换01表示: 画出年龄直方图可以看出大致呈正态分布,对年龄分段处理后缺失值采用插补方式: 资产当前总额=存储类资产当前总额=本币存储当前总金额   月日均余额=存储类资产月日均余额=本币存储月日均余额  分别删除其中两项: 针对*NUM,*DUR,*AMT,*BAL字段分别进行特征提取(SelectKBest)达到降维效果: 最

kaggle首秀之intel癌症预测(续篇)

之前写了这篇文章.现在把他搬到知乎live上了.书非借不能读也,因此搞了点小费用,如果你觉得贵,加我微信我给你发红包返回给你. 最近的空余时间拿去搞kaggle了, 好久没更新文章了.今天写写kaggle首秀的一段baseline吧. 这个题目是intel的癌症预测.我之前本来是想打谷歌的视频多标签分类的,但是那个数据量大,需要用谷歌云,然后呢,需要用双币信用卡注册,结果我的双币信用卡没有开通国外账户,考虑到安全性(去年我一个同事的信用卡直接在澳大利亚被盗刷),就换成了这个比赛了. 这个比赛很简

线性回归的应用——容量预测

一个发展中的电信市场,网络容量往往是线性增加的,我们可以通过拟合历史网络容量指标,来判断未来网络规模,从而提前进行网络扩容,防患于未然. 线性回归实际上是找到一条直线,使得所有观测点y值到直线的离差平方和最小. 一.多元线性回归 多元线性回归使用矩阵方程可以很好的描述: 1. 拟合的p元线性方式格式 2. 回归拟合直线满足观测值与理论值离差平方和最小 3. 分别对p+1个因变量系数Beta求导,得到如下方程组 4. 进一步化简 5. 采用矩阵形式表示方程 6. 则方程系数如下 二.一元线性回归