根据条件时的情况循环创建新变量

问题描述 投票:0回答:1

我是R的新手,正在尝试建立一个循环,在此循环中,根据条件创建一个新变量。

for(i in 2:10){

  variable_1 <- paste0("a_", i)

  variable_2 <- paste0("b_", i)

  variable_3 <- paste0("c_", i)

  data1 <- data1 %>%
  mutate_(variable_3 = case_when(is.na(variable_1) & !is.na(variable_2) ~ 0,
                                 TRUE ~ 1))
}

当我运行此代码时,只能看到一个名为variable_3的新变量,而不是创建c_2:c_10。有人可以帮我提供这段代码,并解释为什么它不起作用吗?

非常感谢大家

丹妮尔

r loops case-when
1个回答
0
投票

[我们可能需要进行赋值:=,求值(!!lhs:=上的表达式,以及将列对象转换为字符串转换为符号(sym),然后求值([C0 ])

!!
© www.soinside.com 2019 - 2024. All rights reserved.