R 如何将不同的变量循环到同一个命令
我试图将不同的变量循环到同一个命令中:R 如何将不同的变量循环到同一个命令,r,dataframe,summarize,R,Dataframe,Summarize,我试图将不同的变量循环到同一个命令中: data_aliki %>% group_by(indicator) %>% summarise( total_indicator = n(), yes_knocked1 = sum(knocked1==1, na.rm = TRUE) ) 下面是我要循环的变量和值的列表 behavior_list <- c("knocked1", "questions1", ...) answer_list <-
data_aliki %>%
group_by(indicator) %>%
summarise(
total_indicator = n(),
yes_knocked1 = sum(knocked1==1, na.rm = TRUE)
)
下面是我要循环的变量和值的列表
behavior_list <- c("knocked1", "questions1", ...)
answer_list <- c(0, 1)
answer_label_list <- c("Yes", "No")
我正在试着循环
yes_knocked1 = sum(knocked1==1, na.rm = TRUE)
no_knocked1 = sum(knocked1==0, na.rm = TRUE)
yes_questions1 = sum(questions1==1, na.rm = TRUE)
no_questions1 = sum(questions1==0, na.rm = TRUE)
有没有比复制粘贴更简单的方法?您没有提供可复制的示例,因此我将说明如何在
dplyr
中为mtcars
数据集实现您想要的:
mtcars %>% group_by(cyl) %>%
summarize_at(c("mpg","hp"), list("lt15" = ~sum(. < 15, na.rm = TRUE),
"lt18" = ~sum(. < 18, na.rm = TRUE)))
@陶雪婷很高兴它奏效了。如果你喜欢我的答案,请考虑投票或接受。
cyl mpg_lt15 hp_lt15 mpg_lt18 hp_lt18
<dbl> <int> <int> <int> <int>
1 4 0 0 0 0
2 6 0 0 1 0
3 8 5 0 12 0
data_aliki %>%
group_by(indicator) %>%
summarize_at(c("knocked1","questions1"),
list("yes" = ~sum(. == 1, na.rm = TRUE),
"no" = ~sum(. == 0, na.rm = TRUE))