首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >R语言分段回归数据数据分析案例报告

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

作者头像
拓端
发布2023-08-31 16:41:41
发布2023-08-31 16:41:41
4370
举报
文章被收录于专栏:拓端tecdat拓端tecdat

原文链接:http://tecdat.cn/?p=3805

我们在这里讨论所谓的“分段线性回归模型”,因为它们利用包含虚拟变量的交互项点击文末“阅读原文”获取完整代码数据)。

读取数据

代码语言:javascript
复制
data=read.csv("artificial-cover.csv")

查看部分数据

代码语言:javascript
复制
head(data)

##   tree.cover shurb.grass.cover
## 1       13.2              16.8
## 2       17.2              21.8
## 3       45.4              48.8
## 4       53.6              58.7
## 5       58.5              55.5
## 6       63.3              47.2
代码语言:javascript
复制

###########用lm拟合,主要注意部分是bs(age,knots=c(...))这部分把自变量分成不同部分
fit =lm(tree.cover~bs(shurb.grass.cover ,knots
############进行预测,预测数据也要分区
pred= predict (fit , newdata =list(shurb.grass.cover =data$shurb.grass.cover),se=T)
#############然后画图
plot(fit)

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

代码语言:javascript
复制
qplot(x, y) + geom_smooth()  # 总趋势

相关视频

散点图分为两部分

我们可以将原始散点图分为两部分,并拟合两条单独但相连的线。估计的分段式函数连接,在描述数据趋势方面做得更好。


01

02

03

04

因此,让我们为这些数据建立一个分段线性回归模型并可视化:

代码语言:javascript
复制
0) + geom_smooth() + theme(panel.background = element_rect(fill = 'white', colour = 'black'))
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 拓端数据部落 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原文链接:http://tecdat.cn/?p=3805
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档