Some logical arguments of the R language to filter data are important to know:
!x
= > not x
x | y
= > x OU y
x & y
= > x E y
isTRUE(x)
= > test if X is TRUE
Filtering data with multiple conditions can be done in different ways:
dados
NOME VALOR
1 LEITO 1001 10
2 LEITO 1002 20
3 LEITO 1003 30
4 LEITO 50 40
5 LEITO 60 50
using which()
:
dados[which(dados$NOME == "LEITO 1001" | dados$NOME == "LEITO 1002" | dados$NOME == "LEITO 1003"),]
Using the subset()
function:
subset(dados, NOME == "LEITO 1001" | NOME == "LEITO 1002" | NOME == "LEITO 1003")
Using dplyr
:
library(dplyr)
filter(dados, NOME == "LEITO 1001" | NOME == "LEITO 1002" | NOME == "LEITO 1003")
Using sqldf
:
library(sqldf)
sqldf('SELECT *
FROM dados
WHERE NOME == "LEITO 1001" OR NOME == "LEITO 1002" OR NOME == "LEITO 1003"')
Result:
NOME VALOR
1 LEITO 1001 10
2 LEITO 1002 20
3 LEITO 1003 30