我创建了一个数据框列表。 我尝试使用 mutate 和选择命令更改原始数据框。我从所有数据框中创建了一个列表
m <- as.list(paste0(rep("traffic_", 12), 2005:2016))
我试图运行下一个命令:但它仍然不适合我。
foreach(x=iter(m)) %do% { assign(x, mutate(x , date = make_datetime(shana, hodesh, taarich, shaa)) %>%
select( -shana, -hodesh, -taarich, -shaa)) }
这是原始数据框之一
> traffic_2016
shana kvish keta maslul hodesh taarich yom shaa nefah status
1 2016 1 10 1 9 11 1 0 1710 NA
2 2016 1 10 1 9 11 1 1 934 NA
3 2016 1 10 1 9 11 1 2 800 NA
4 2016 1 10 1 9 11 1 3 637 NA
5 2016 1 10 1 9 11 1 4 588 NA
6 2016 1 10 1 9 11 1 5 951 NA
7 2016 1 10 1 9 11 1 6 2312 NA
8 2016 1 10 1 9 11 1 7 3769 NA
9 2016 1 10 1 9 11 1 8 3348 NA
10 2016 1 10 1 9 11 1 9 2788 NA
11 2016 1 10 1 9 11 1 10 2879 NA
答案 0 :(得分:1)
您想要编辑每个原始数据框:
mtcars1 <- mtcars
mtcars2 <- mtcars
m <- list("mtcars1","mtcars2")
您可以使用assign
按名称编辑数据。我使用get
来编辑实际数据:
library(iterators)
library(foreach)
library(dplyr)
foreach(x=iter(m)) %do% { assign(x, mutate(get(x), mpg=mpg+1) %>% select(mpg,cyl)) }
使用您的mutate
:
foreach(x=iter(m)) %do% { assign(x, mutate(get(x) , date = make_datetime(shana, hodesh, taarich, shaa)) %>% select( -shana, -hodesh, -taarich, -shaa)) }