在我的数据集中,我有一个选择所有问题,其中"否"是一个回答。我希望能够确定是否有任何参与者单击了"否"(child_tasks_2___0),然后单击了另一个答案。
以下是一些数据:
child_tasks_2___0 child_tasks_2___1 child_tasks_2___2 child_tasks_2___3 child_tasks_2___4
1 0 1 0
0 0
2 1 1 0 0 0
3 1 0 0 0 0
4 1 0 0 1 1
5 1 0 0 0 0
我试了这个代码:
results <- survey_all %>%
filter(child_tasks_2___0==1 &
if_any (child_tasks_2___1:child_tasks_2___4)== 1)
但是,它仅过滤掉子任务2___0 == 1
1条答案
按热度按时间bxgwgixi1#
如果行中的任何列中存在任何非0值,则
if_any(cols)
将始终返回TRUE。如果要与特定值进行比较,请使用lambda表达式在每列中进行比较在OP的代码中,if_any
返回所有TRUE,然后当它与1
比较时,它执行TRUE == 1
,当1
被强制为TRUE时,TRUE == 1
返回TRUE