У меня есть большой набор данных, который я пытаюсь фильтровать на основе значения из двух отдельных столбцов. Для каждой строки у меня есть столбец, показывающий их общее количество (tot) и столбец, показывающий общее количество раз, когда тип образца был просмотрен (tot.type).Выбор строк на основе нескольких условий с использованием OR вместо AND в R
Я хочу отфильтровать свои данные на основе обоих (tot) и (tot.type), где (tot) ИЛИ (tot.type) должно быть больше или равно 2, например.
Все примеры, которые я нашел для фильтрации на основе нескольких значений с помощью «И», но ничего, где вы используете «ИЛИ» ...
Example data:
name = c("A","B","C","D","E")
rx = c(1,0,2,1,1)
ry = c(0,1,1,0,0)
rz = c(0,0,2,2,3)
type = c("p","q","r","p","r")
tot = c(1,1,5,3,4)
tot.type = c(2,1,2,2,2)
test = data.frame(name,rx,ry,rz,tot,tot.type)
В этом примере я не отбросит строку B, и держать остальных ,
Я отфильтровал данные на 2 отдельных набора данных на основе только одного столбца или другого, а затем объединил их, но это можно сделать в одной строке, которая генерирует один набор данных, а не делает два отдельных и объединяет их позже?
Спасибо, это работает отлично. Так просто, но так сложно найти ответ самостоятельно. –
Кстати, это условие «или» имеет альтернативную формулировку: 'подмножество (test, pmax (tot, tot.type)> = 2)' Как правило, мышление о математике может помочь упростить вычисления. – Frank
@Frank, хорошее предложение. – BrodieG