[英]How can I create a loop to create a new variable for different dataframes
我想知道如何创建一个循环来为 7 个不同的数据帧创建相同的新变量。 目前,我的代码如下所示:
m1_02 <- m1_02 %>% mutate(hhid = xa*10^5 + hoso)
m2_02 <- m2_02 %>% mutate(hhid = xa*10^5 + hoso)
m3_02 <- m3_02 %>% mutate(hhid = xa*10^5 + hoso)
m3_02a <- m3_02a %>% mutate(hhid = xa*10^5 + hoso)
m6a2_02 <- m6a2_02 %>% mutate(hhid = xa*10^5 + hoso)
m6b1_02 <- m6b1_02 %>% mutate(hhid = xa*10^5 + hoso)
m6b2_02 <- m6b2_02 %>% mutate(hhid = xa*10^5 + hoso)
我想知道是否有一种方法可以创建一个循环,该循环可以在相应的数据帧中创建hhid
变量,而不必一个一个地使用mutate
function。
谢谢!
最好将数据集加载到list
,然后立即执行操作并将 output 存储在list
,而不是在全局环境中创建更多对象
library(purrr)
library(dplyr)
lst1 <- mget(ls(pattern = "^m.*\\d+_\\d+$")) %>%
map(~ .x %>%
mutate(hhid = xa * 10^5 + hoso))
如果我们需要更新原来的 object,使用list2env
list
上的 list2env
list2env(lst1, .GlobalEnv)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.