小编CJ9*_*CJ9的帖子

stat_smooth gam 与 gam {mgcv} 不同

我在 ggplot2 中使用 stat_smooth 函数,决定我想要“拟合优度”,并为此使用了 mgvc gam。我突然想到我应该检查以确保它们是相同的模型(stat_smooth vs mgvc gam),所以我使用下面的代码进行检查。从表面上看,它们有不同的结果,正如情节所证明的那样(情节:stat_smoother gam (red), mgcv gam (black))。但是,我不知道为什么他们有不同的结果。两者之间的某些默认参数是否不同?是不是 gam 是在数字 x 上运行而 stat_smooth 是在 POSIXct x 上运行的(如果是这样 - 我不知道该怎么办)?看起来 stat_smooth 更平滑,但 k 值是相同的...

我认为有几篇关于如何在 ggplot2 中绘制 gam 输出的帖子,但我真的很想知道为什么 stat_smooth 和 mgcv 首先给出不同的结果。我对 GAM(和 R)很陌生,所以很可能我错过了一些简单的东西。但是,我在问之前确实谷歌并搜索了这个论坛。

我的数据有点大,无法轻松共享,所以我使用了一个示例数据集 - 我已经将源代码放在代码中,以及dput()下面的所有内容,然后是我的sessionInfo()

我试图提出一个质量问题,但这只是我的第二个问题。曾经。所以,建设性的批评是值得赞赏的。

谢谢!

library(readxl)
library(data.table)
library(ggplot2)
library(scales)
library(mgcv)

stackOF_data <- read_excel("mean-daily-flow-cumecs-vatnsdals.xlsx", sheet = "Data")
stackOF_data <- data.table(stackOF_data)
stackOF_data <- stackOF_data[,.(timeseries=as.POSIXct(Date,format("%Y-%m-%d")),mdf)]

a <- stackOF_data[,.(x=as.numeric(timeseries),y=mdf)]
a1 <- gam(y~s(x, k=100, bs="cs"),data=a) 
a2=data.table(gam_mdf= …
Run Code Online (Sandbox Code Playgroud)

r smoothing ggplot2 gam mgcv

7
推荐指数
1
解决办法
3151
查看次数

标签 统计

gam ×1

ggplot2 ×1

mgcv ×1

r ×1

smoothing ×1