【问题标题】:Writing a loop in R that updates a model在 R 中编写一个更新模型的循环
【发布时间】:2014-04-18 12:23:39
【问题描述】:

我正在寻找一种向模型添加项的方法。这是我目前拥有的:

model = lm(min.temp ~ latitude + longitude)
for (i in 1:10) {

    model = update(model, .~.+I(latitude^i))

    //do calculations on the current model here..

}

问题是,当我运行这个函数然后总结最终模型时,它只包括纬度、经度和纬度^i。我想要获得的是显示纬度、经度、纬度^1、纬度^2、纬度^3、...纬度^10的最终模型。

这是我需要的循环的简化版本。基本上我想添加一个取决于它添加的特定循环的术语。我不知道如何获得价值而不是“i”。

谢谢!

【问题讨论】:

    标签: r variables loops formula lm


    【解决方案1】:

    试试这个:

    update(lm1,as.formula(paste0(".~.+I(latitude^",i,")")))
    

    您的代码不起作用,因为它是公式,而 R 将其视为“原样”。它不会将变量 i 解析为值 1,2,...10。因此,您需要先将 i 与公式的其余部分一起粘贴,然后告诉 R 它是公式。

    【讨论】:

      猜你喜欢
      • 2016-10-17
      • 2015-11-01
      • 2021-02-17
      • 1970-01-01
      • 2022-06-15
      • 1970-01-01
      • 2018-06-21
      • 2020-04-25
      • 2021-11-15
      相关资源
      最近更新 更多