GAM衍生于R

问题描述

我每小时记录6个不同的水温时间序列,它们的总绝对温度和日变化都不同。我的目的是比较每小时温度的影响,以形成整个时期的趋势。我已经使用GAM对每个网站的趋势进行了建模:

g<-gam(temperature~s(progr_num,bs="cr",k=length(unique(data.st$day))+2),data=data.st,method="REML") 其中,progr_num是从POSIXct系列获得的数值。结数等于记录的天数+2(以tot计为10)。

在我遵循以下代码获取每小时小时的冷杉派生值之后(它们来自https://fromthebottomoftheheap.net/2014/05/15/identifying-periods-of-change-with-gams/https://www.frontiersin.org/articles/10.3389/fevo.2018.00149/full#h7):

want <- seq(1,nrow(data.st),length.out =length(data.st$progr_num))
pdat<-with(data.st,data.frame(progr_num = progr_num[want]))
p_t <- predict(g,newdata = pdat,type = "terms",se.fit = TRUE)
pdat<- transform(pdat,p_t = p_t$fit[,1],se_t = p_t$se.fit[,1])
df.res <- df.residual(g)
crit.t <- qt(0.025,df.res,lower.tail = FALSE)
pdat <- transform(pdat,upper_t = p_t + (crit.t * se_t),lower_t = p_t - (crit.t * se_t))
g.d <- fderiv(g,newdata=pdat,n=length(want))

我有1个问题: 每个点的一阶导数的值为0。我肯定没有得到什么。但是经过多次阅读和尝试,我无法解决问题。 我希望能提供一些输入来了解这是与代码相关的问题,还是我通常不会对此计算有所了解的问题。非常感谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)