R语言进行曲线/直线趋势线拟合并计算P值、添加置信区间

R语言进行曲线/直线趋势线拟合并计算P值、添加置信区间

8/26/2021 3:39:51 PM


在对一些时间序列数据进行线性拟合的时候,最方便的是在Excel中添趋势线,同时显示公式与R值,但是我们需要对其进行P值计算以检验该趋势是否具有显著性,此外,置信区间也是一个需要考虑是否进行显示的问题。

library(basicTrendline) 
library(readxl)
#读取的excel文件中只有两列数据,"year"和"area"
data <- read_excel("D:/00GBAWater/06CODE/df.xlsx")
x <- c(1, 3, 6,  9,  13,   17)
y <- c(5, 8, 11, 13, 13.2, 13.5)

直线拟合:默认(自动添加95%置信区间)

trendline(data$year,data$area, model="line2P", ePos.x = "topleft", summary=TRUE, eDigit=5)

使用

trendline(x, y, model = "line2P", Pvalue.corrected = TRUE,
        linecolor = "blue", lty = 1, lwd = 1, 
        show.equation = TRUE, show.Rpvalue = TRUE, 
        Rname = 1, Pname = 0, xname = "x", yname = "y",
        yhat = FALSE, 
        summary = TRUE, 
        ePos.x = NULL, ePos.y = NULL, text.col = "black", eDigit = 5, eSize = 1, 
        CI.fill = TRUE, CI.level = 0.95, CI.color = "grey",    CI.alpha = 1, CI.lty = 1, CI.lwd = 1, 
        las = 1, xlab = NULL, ylab = NULL, ...)

主要参数设置

model = "xxx"

  • “line2P” (formula as: y=a*x+b),
  • “line3P” (y=ax2+bx+c),
  • “log2P” (y=a*ln(x)+b),
  • “exp2P” (y=aebx),
  • “exp3P” (y=aebx+c),
  • “power2P” (y=a*xb),
  • “power3P” (y=a*xb+c).

参考链接:

http://blog.sciencenet.cn/blog-651374-1126673.html

posted @   icydengyw  阅读(3117)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示