mgcv:如何获得样条方程
mgcv: How to get spline equations
可能我不是唯一一个提出以下有关 mgcv::gam
中估计方程的问题的人。
好吧,我已经在网上冲浪了,但没有得到关于我应该如何将以下输出 转化为完整方程式 的明确答案,我随后可以将其用于任何其他分析软件,尤其是 GIS 软件,以便 map/project 使用预测变量 X1 和 X2 将方程space 推到某个地理区域 space:
family = gaussian(link = "identity")
smooth class = p-spline
下面是样条函数系数的转置输出:
**Intercept** 2.121
**s(X1).1** -1.23E-07
**s(X1).2** 1.86E-07
**s(X1).3** -7.33E-08
**s(X2).1** -2.51E-08
**s(X2).2** 3.08E-07
**s(X2).3** -3.00E-08
很明显,输出意味着:
Y = 2.121 + (-1.231e-07 * s(X1).1) + (1.856e-07 * s(X1).2) + (-7.331e-08 * s(X1).3)…..
如何从数学上解释 s(Xi).j?换句话说,您能否建议如何从 mgcv::gam
?
中提取 p 样条的精确完整方程?
这给出了 mgcv
中 P 样条曲线的一些必要背景: 但您的问题不是重复的。很可能你已经看过这个话题。
精确的数学公式很难看,因为 B 样条构造是递归的。
另一件事是 mgcv
对平滑函数施加数值居中。这是 运行 时间的重新参数化。转换后的基础不会有漂亮的公式,即使原始基础有。
嗯,mgcv
是为 R 编写的,因此模型估计和预测预计将在 R 中处理。在我的链接答案中有方便的通用函数来执行此操作。它们不能导出到您想要的软件。
我能想到的一个可能的补救办法是,用线性插值法逼近这些基,然后导出插值函数。
可能我不是唯一一个提出以下有关 mgcv::gam
中估计方程的问题的人。
好吧,我已经在网上冲浪了,但没有得到关于我应该如何将以下输出 转化为完整方程式 的明确答案,我随后可以将其用于任何其他分析软件,尤其是 GIS 软件,以便 map/project 使用预测变量 X1 和 X2 将方程space 推到某个地理区域 space:
family = gaussian(link = "identity")
smooth class = p-spline
下面是样条函数系数的转置输出:
**Intercept** 2.121
**s(X1).1** -1.23E-07
**s(X1).2** 1.86E-07
**s(X1).3** -7.33E-08
**s(X2).1** -2.51E-08
**s(X2).2** 3.08E-07
**s(X2).3** -3.00E-08
很明显,输出意味着: Y = 2.121 + (-1.231e-07 * s(X1).1) + (1.856e-07 * s(X1).2) + (-7.331e-08 * s(X1).3)…..
如何从数学上解释 s(Xi).j?换句话说,您能否建议如何从 mgcv::gam
?
这给出了 mgcv
中 P 样条曲线的一些必要背景:
精确的数学公式很难看,因为 B 样条构造是递归的。
另一件事是 mgcv
对平滑函数施加数值居中。这是 运行 时间的重新参数化。转换后的基础不会有漂亮的公式,即使原始基础有。
嗯,mgcv
是为 R 编写的,因此模型估计和预测预计将在 R 中处理。在我的链接答案中有方便的通用函数来执行此操作。它们不能导出到您想要的软件。
我能想到的一个可能的补救办法是,用线性插值法逼近这些基,然后导出插值函数。