0
为了确定冠军模型,我正在构建数十个预测模型。我正在处理千兆字节的数据,因此跟踪运行时间非常重要。在R中管理多个模型和运行时间
我想以列表式格式构建我的所有模型,所以我不必在全局环境中管理所有不同的模型名称。但是,看起来每个模型获得计时的唯一方法是使用单独的命名对象。
这里有一个基本的方法是什么方法我在寻找:
library(tidyverse)
# Basic Approach
Time_1 <- system.time(
Model_1 <- lm(am ~ disp, mtcars)
)
Time_2 <- system.time(
Model_2 <- lm(am ~ disp + cyl, mtcars)
)
# etc. for dozens more
Time_List <-
mget(ls(pattern = "Time")) %>%
bind_rows()
然而,正如你所看到的,我必须手动命名每个模型和时间记录。我正在寻找的东西类似于使用以下代码生成的表格,其中“xxx”是运行时间的实际记录。
# Tribble Output
tribble(
~Model_Name, ~Model_Function, ~Run_Time,
"Model_1", lm(am ~ disp, mtcars), "xxx",
"Model_2", lm(am ~ disp + cyl, mtcars), "xxx"
)
# A tibble: 2 × 3
Model_Name Model_Function Run_Time
<chr> <list> <chr>
1 Model_1 <S3: lm> xxx
2 Model_2 <S3: lm> xxx
我很感激任何提供的输入,无论使用什么软件包。
太好了!我不再在工作,但我会调查一次,我回来。 –