R 中的 GAM:计算单个项的贡献
GAMs in R: calculating the contribution of individual terms
假设我在 R 中使用 mgcv
包的 gam
函数计算了一个 GAM。我可以获得给定数据集的模型预测值,如下所示:
# Load data
data("mtcars")
# Fit model
g <- gam(mpg ~ s(disp, k = 3) + s(hp, k = 3), data = mtcars)
# Get values for given data set
predict(g)
现在,我感兴趣的是每个预测变量对每个预测值的贡献有多大。因此,对于数据集中的第一辆车 Mazda RX4,mpg
的预测值中有多少是由于 disp
的项,有多少是由于 hp
的项。有没有一种简单的方法可以从模型中提取这些信息?
答案是predict(g, type = "terms")
假设我在 R 中使用 mgcv
包的 gam
函数计算了一个 GAM。我可以获得给定数据集的模型预测值,如下所示:
# Load data
data("mtcars")
# Fit model
g <- gam(mpg ~ s(disp, k = 3) + s(hp, k = 3), data = mtcars)
# Get values for given data set
predict(g)
现在,我感兴趣的是每个预测变量对每个预测值的贡献有多大。因此,对于数据集中的第一辆车 Mazda RX4,mpg
的预测值中有多少是由于 disp
的项,有多少是由于 hp
的项。有没有一种简单的方法可以从模型中提取这些信息?
答案是predict(g, type = "terms")