mgcv中的循环自适应样条

问题描述

我想将GAM拟合到具有循环预测变量的数据中,并且在周期的特定部分中大部分摆动。

有什么方法可以使循环样条曲线(bs ='cc'或'cp')自适应? ...或等效地使一个自适应样条(bs ='ad')循环吗?

解决方法

是;在 mgcv 中的自适应样条基础中已经允许这样做。

自适应样条曲线的默认基础是P样条曲线。您可以切换到该样条曲线的循环版本,也可以使用循环三次样条。

要使其正常工作,您必须将信息传递给平滑函数的xt参数,同时保留bs = "ad"作为自适应基础。

对于循环P样条曲线,您会这样做

y ~ s(x,bs = "ad",xt = list(bs = "cp"))

对于循环三次样条曲线,您将使用

y ~ s(x,xt = list(bs = "cc"))

xt参数通常用于这种情况,其中基础具有可以配置的其他选项。 fs的基础类似,其中xt允许您控制用于随机平滑的基础。

要查看的另一个参数是m;其中k指定实际平滑的基础尺寸,可以使用m设置自适应部​​分的基础,其中m越高,表示惩罚范围内潜在的变化越大。 x,就像k允许在x上顺利滚动一样。

这些详细信息在?smooth.construct.ad.smooth.spec(或?adaptive.smooth中作为该页面的更简单快捷方式)中进行了讨论。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...