根据列表中存储的几个条件标记dataframe中的行

根据列表中存储的几个条件标记dataframe中的行,r,R,我有一个很大的调查数据集。现在我想添加一个专栏,根据参与者对一些问题的回答对他们进行分类 我有以下数据帧(df): (事实上比这宽得多,大约有120列) 我有以下几项我想考虑的项目:(事实上比3个项目要长) 我已经走了这么远: df %>% rowwise() %>% mutate(category = ifelse(selector > 3, TRUE, FALSE) 但这不起作用,因为选择器在这里不是正确的东西。(错误:“大小必须为1而不是3”) 我当然可以这样做: df

我有一个很大的调查数据集。现在我想添加一个专栏,根据参与者对一些问题的回答对他们进行分类

我有以下数据帧(df): (事实上比这宽得多,大约有120列)

我有以下几项我想考虑的项目:(事实上比3个项目要长)

我已经走了这么远:

df %>% rowwise() %>% mutate(category = ifelse(selector > 3, TRUE, FALSE)
但这不起作用,因为选择器在这里不是正确的东西。(错误:“大小必须为1而不是3”) 我当然可以这样做:

df %>% rowwise() %>% mutate(category = ifelse(item1 > 3 | item2 > 3 | item9 > 3, TRUE, FALSE)
但是这会非常繁琐,需要考虑大量的项目。

如何在ifelse()语句中选择来自变量的内容

如何在不为我想考虑的每一列写出一个有条件陈述的情况下实现这个标签?


注:在问题的第一个版本中,我被告知答案是我的,但事实并非如此。这是因为我不想显式地命名条件中的所有列,而是从列表这样的单个位置获取它们。上述问题中的答案仅在您希望对数据集进行子集划分并且没有要检查的大量条件列表时有效。那么我能做什么呢?

df$category 3))
还有一个注意事项:您不需要编写
ifelse(item1>3 | item2>3 | item9>3,TRUE,FALSE)
。您只需编写
item1>3 | item2>3 | item9>3
age item1 item2 item3 ... item9 category
18      0     0     4 ...     0   FALSE
19      0     4     0 ...     0   TRUE
20      4     4     0 ...     4   TRUE
21      0     0     4 ...     0   FALSE
df %>% rowwise() %>% mutate(category = ifelse(selector > 3, TRUE, FALSE)
df %>% rowwise() %>% mutate(category = ifelse(item1 > 3 | item2 > 3 | item9 > 3, TRUE, FALSE)