R语言分段回归 数据分析 案例报告(附代码数据)_第1页
R语言分段回归 数据分析 案例报告(附代码数据)_第2页
R语言分段回归 数据分析 案例报告(附代码数据)_第3页
R语言分段回归 数据分析 案例报告(附代码数据)_第4页
R语言分段回归 数据分析 案例报告(附代码数据)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

R语言分段回归数据数据分析案例报告

#读取数据

data=read.csv("artificial-cover.csv")

#查看部分数据

head(data)##tree.covershurb.grass.cover

##113.216.8

##217.221.8

##345.448.8

##453.658.7

##558.555.5

##663.347.2#######先调用spline包

library(splines)

###########用lm拟合,主要注意部分是bs(age,knots=c(...))这部分把自变量分成不同部分

fit=lm(tree.cover~bs(shurb.grass.cover,knots=c(25,40,60)),data=data)

############进行预测,预测数据也要分区

pred=predict(fit,newdata=list(shurb.grass.cover=data$shurb.grass.cover),se=T)

#############然后画图

plot(fit)#可以构造一个相对复杂的LOWESS模型(span参数取小一些),然后和一个简单的模型比较,如:

x<-data$shurb.grass.cover

y<-data$tree.cover

plot(x,y,type="l",col=2)fit3=loess(y~x,span=0.2)

fit4=loess(y~1+x+I(x>30)+I((x-30)*(x>30)),

span=1,degree=1)

par(mar=c(4,4,0,0),family="serif",mgp=c(2,1,0))

plot(x,y,pch=20,col="darkgray")

lines(x,fitted(fit3),lwd=2,col=2)

lines(x,fitted(fit4),lwd=2,lty=2)

library(ggplot2)##Warning:package'ggplot2'wasbuiltunderRversion3.3.3qplot(x,y)+geom_smooth()#总趋势##`geom_smooth()`usingmethod='loess'qplot(x,y,group=x>30)+geom_smooth()+theme(panel.background=element_rect(fill='white',colour='black'))#按30前后分组##`geom_smooth()`usingmethod='loess'#其他数据

#读取数据

data=read.csv("其他数据.csv")

#查看部分数据

data=data[,1:4]

head(data)##yearSoilvegetationSEM

##11999-3.483724-2.5288362.681003

##21999-3.452582-2.4180492.348640

##31999-3.350827-2.5905522.696037

##41999-3.740395-2.9338483.627112

##51999-3.465906-2.6942112.333755

##61999-3.381802-2.7881542.656276#####因变量Soil

#######先调用spline包

library(splines)

###########用lm拟合,主要注意部分是bs(age,knots=c(...))这部分把自变量分成不同部分

fit=lm(Soil~bs(vegetation,knots=c(-2,0,1)),data=data)

############进行预测,预测数据也要分区

pred=predict(fit,newdata=list(vegetation=data$vegetation),se=T)

#############然后画图

plot(fit)#可以构造一个相对复杂的LOWESS模型(span参数取小一些),然后和一个简单的模型比较,如:

x<-data$vegetation

y<-data$Soil

plot(x,y,type="l",col=2)fit3=loess(y~x,span=0.2)

fit4=loess(y~1+x+I(x>0)+I((x-0)*(x>0)),

span=1,degree=1)

par(mar=c(4,4,0,0),family="serif",mgp=c(2,1,0))

plot(x,y,pch=20,col="darkgray")

lines(x,fitted(fit3),lwd=2,col=2)

lines(x,fitted(fit4),lwd=2,lty=2)library(ggplot2)

qplot(x,y)+geom_smooth()+theme(panel.background=element_rect(fill='white',colour='black'))#按30前后分组##`geom_smooth()`usingmethod='loess'#总趋势

qplot(x,y,group=x>0)+geom_smooth()+theme(panel.background=element_rect(fill='white',colour='black'))#按30前后分组##`geom_smooth()`usingmethod='loess'#按0前后分组

#####因变量SEM

#######先调用spline包

library(splines)

###########用lm拟合,主要注意部分是bs(age,knots=c(...))这部分把自变量分成不同部分

fit=lm(SEM~bs(vegetation,knots=c(-2,0,1)),data=data)

############进行预测,预测数据也要分区

pred=predict(fit,newdata=list(vegetation=data$vegetation),se=T)

#############然后画图

plot(fit)#可以构造一个相对复杂的LOWESS模型(span参数取小一些),然后和一个简单的模型比较,如:

x<-data$vegetation

y<-data$SEM

plot(x,y,type="l",col=2)fit3=loess(y~x,span=0.2)

fit4=loess(y~1+x+I(x>0)+I((x-0)*(x>0)),

span=1,degree=1)

par(mar=c(4,4,0,0),family="serif",mgp=c(2,1,0))

plot(x,y,pch=20,col="darkgray")

lines(x,fitted(fit3),lwd=2,col=2)

lines(x,fitted(fit4),lwd=2,lty=2)library(ggplot2)

qplot(x,y)+geom_smooth()+theme(panel.background=element_rect(fill='white',colour='black'))#按30前后分组##`geom_smooth()`usingmethod='

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论