尝试使用r中的模型预测列中的值



我先声明一下,我对R没有什么经验,非常感谢大家提供的任何帮助。

我有一个数据帧(我认为)的值:

输入图片描述

我正在尝试预测"predbfwdth"的每个值。列,使用我从其他数据和"ThatwgFAC"的值创建的模型。和"ThalwgSlop".

模型名称为" model ";它是一个广义的加性模型,所以我会用predict。gam。我认为代码应该是这样的:

PredBFwdth = predict.gam(Model, ThalwgFAC, ThalwgSlop)

显然这不起作用。我需要使用ThalwgFAC和ThalwgSlop列以及模型中的相应值对数据中的每一行进行预测。有人能帮忙吗?我四处寻找答案,但其他人问题的代码对我来说是无法破译的。(

我强烈建议提供足够的数据和代码来创建一个可重复的示例。这意味着你的数据可能看起来像一个样本,你正在尝试什么代码,以方便帮助。

首先,我将从data。frame

中的一些假数据开始
dat <- data.frame(
ThalwgFAC = rnorm(100,3,5),
ThalwgSlop = rnorm(100,3,2),
ThalwgEv = rnorm(100,2,2)
)

接下来,拟合模型

library(mgcv)
fit <- gam(ThalwgEv ~ s(ThalwgFAC) + s(ThalwgSlop), data = dat)

现在关于预测新数据的问题,您可以将新数据(作为数据帧)提供给predict函数并指定要使用哪个模型(上面的fit对象)。这假定数据帧包含与模型使用的相同的变量名(例如,ThalwgFAC和ThalwgSlop)。

dat2 <- data.frame(

ThalwgFAC = rnorm(100,3,5),
ThalwgSlop = rnorm(100,3,2),
ThalwgEv = rnorm(100,2,2)
)
pred <- predict(fit, newdata = dat2)

predict函数将拾取fit对象的类,因此不需要指定要使用的方法(即predict.gam)。

相关内容

  • 没有找到相关文章

最新更新