Datatable 如何使用gam()拟合广义相加模型,其中所有列始终用作预测值(模型拟合中没有硬编码部分)
我在Datatable 如何使用gam()拟合广义相加模型,其中所有列始终用作预测值(模型拟合中没有硬编码部分),datatable,forecasting,gam,forecast,columnname,Datatable,Forecasting,Gam,Forecast,Columnname,我在R中有一个列车数据表,它总是有不同的列,例如,现在数据表有以下列名: library(mgcv) dt.train <- c("DE", "DEWind", "DESolar", "DEConsumption", "DETemperature", "DENuclear", "DELignite") 列名目前是硬编码的
R
中有一个列车数据表,它总是有不同的列,例如,现在数据表有以下列名:
library(mgcv)
dt.train <- c("DE", "DEWind", "DESolar", "DEConsumption", "DETemperature",
"DENuclear", "DELignite")
列名目前是硬编码的,但我不想一直更改它,我想让程序识别有多少列,并使模型与现有列相匹配。因此,我想要这样的东西(它适用于stats::lm()
或stats::glm()
):
fitModel出于统计原因,我不建议您这样做,但是
nms
fitModel <- mgcv::gam(DE ~ s(DEWind)+s(DESolar)+s(DEConsumption)+s(DETemperature)+
s(DENuclear)+s(DELignite),
data = dt.train)
fitModel <- mgcv::gam(DE ~ .-1, data = dt.train)
> rhs
[1] "s(DEWind) + s(DESolar) + s(DEConsumption) + s(DETemperature) + s(DENuclear) + s(DELignite)"
> fml
[1] "DE ~ s(DEWind) + s(DESolar) + s(DEConsumption) + s(DETemperature) + s(DENuclear) + s(DELignite)"
> fml
DE ~ s(DEWind) + s(DESolar) + s(DEConsumption) + s(DETemperature) +
s(DENuclear) + s(DELignite)