R 使用case_进行数值计算时

R 使用case_进行数值计算时,r,dataframe,dplyr,case-when,R,Dataframe,Dplyr,Case When,我有以下类型的数据 df%变异(var2=case_当(组==“A”~var1/100,组==“B”~var1/120)) 如果您的数据很大,我建议您创建一个映射表,其中包含每组的系数: mapping_factor <- tibble(Group = c("A", "B"), f = c(100, 120)) 如果您的数据没有那么大,并且您没有许多不同的组属性,您可以在以下情况下使用case\u: df %>% mutate(var2 =

我有以下类型的数据
df%变异(var2=case_当(组==“A”~var1/100,组==“B”~var1/120))

如果您的数据很大,我建议您创建一个映射表,其中包含每组的系数:

mapping_factor <- tibble(Group = c("A", "B"), f = c(100, 120))
如果您的数据没有那么大,并且您没有许多不同的
属性,您可以在以下情况下使用
case\u:

df %>% mutate(var2 = var1 / case_when(Group == "A" ~ 100, 
                                      Group == "B" ~  120))

这两种解决方案都很有效-答案广为接受!我有一个包含多个组的较大数据集。
df %>% mutate(var2 = var1 / case_when(Group == "A" ~ 100, 
                                      Group == "B" ~  120))