拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 将回圈与函式创建的堆栈资料帧相结合

将回圈与函式创建的堆栈资料帧相结合

白鹭 - 2022-01-23 1949 0 0

我正在使用 BaseballR 包进行一些分析,并希望能够通过使用回圈来组合资料帧。

例如,以下代码使用standings_on_date_bref 函式为我提供了指定日期的磁区排名表(加上手动添加这些排名日期的列):

library("baseballr")
library("dplyr")
standings_on_date_bref(date = "04-28-2021", division = "NL West") %>%
mutate(date = "04-28-2021")
Tm值 WL% 日期
SFG 0.640 04-28-2021
小伙子 0.640 04-28-2021
社会发展计划 0.538 04-28-2021
ARI 0.500 04-28-2021
上校 0.375 04-28-2021

但是,我有兴趣获得整个天数范围内的排名(最终将成为行数 = 5 个团队 * x 天数的资料框),例如 04-28-2021 到 04-29-2021,我希望它看起来像这样:

Tm值 WL% 日期
SFG 0.640 04-28-2021
小伙子 0.640 04-28-2021
社会发展计划 0.538 04-28-2021
ARI 0.500 04-28-2021
上校 0.375 04-28-2021
SFG 0.640 04-29-2021
小伙子 0.615 04-29-2021
社会发展计划 0.538 04-29-2021
ARI 0.520 04-29-2021
上校 0.360 04-29-2021

我试图通过实作某种回圈来做到这一点。到目前为止,这是我想出的,但最终它只是给了我结束日期的排名。

start <- as.Date("04-01-21",format="%m-%d-%y")
end   <- as.Date("04-03-21",format="%m-%d-%y")

theDate <- start

while (theDate <= end)
{
  all_standings <- standings_on_date_bref(date = theDate, division = "NL West") %>%
    mutate(date = theDate)
  theDate <- theDate   1    
}

uj5u.com热心网友回复:

您可以尝试purrr使用map_dfr功能可以很好地做到这一点

library(baseballr)
library(dplyr)
library(purrr)

date_seq <- seq(as.Date("04-01-21",format="%m-%d-%y"), 
                as.Date("04-03-21",format="%m-%d-%y"), by = "1 day")

map_dfr(.x = date_seq,
        .f = function(x) {
          standings_on_date_bref(date = x, division = "NL West") %>%
            mutate(date = x)
        })
#> # A tibble: 15 x 9
#>    Tm        W     L `W-L%` GB       RS    RA `pythW-L%` date      
#>    <chr> <int> <int>  <dbl> <chr> <int> <int>      <dbl> <date>    
#>  1 SDP       1     0  1     --        8     7      0.561 2021-04-01
#>  2 COL       1     0  1     --        8     5      0.703 2021-04-01
#>  3 ARI       0     1  0     1.0       7     8      0.439 2021-04-01
#>  4 SFG       0     1  0     1.0       7     8      0.439 2021-04-01
#>  5 LAD       0     1  0     1.0       5     8      0.297 2021-04-01
#>  6 SDP       2     0  1     --       12     9      0.629 2021-04-02
#>  7 COL       1     1  0.5   1.0      14    16      0.439 2021-04-02
#>  8 SFG       1     1  0.5   1.0      13    11      0.576 2021-04-02
#>  9 LAD       1     1  0.5   1.0      16    14      0.561 2021-04-02
#> 10 ARI       0     2  0     2.0       9    12      0.371 2021-04-02
#> 11 SDP       3     0  1     --       19     9      0.797 2021-04-03
#> 12 LAD       2     1  0.667 1.0      22    19      0.567 2021-04-03
#> 13 COL       1     2  0.333 2.0      19    22      0.433 2021-04-03
#> 14 SFG       1     2  0.333 2.0      13    15      0.435 2021-04-03
#> 15 ARI       0     3  0     3.0       9    19      0.203 2021-04-03

reprex 包(v2.0.1)于 2022 年 1 月 2 日创建

标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *