2017-06-23 1 views
0

ID < - c (1: 7)R - alternative à l'utilisation de sous-ensembles pour sqldf

Q1 < - c (12,12,15,14,11,101,1009)

DF4 < - data.frame (ID, Q1)

Voir (DF4)

ID | Q 
1 | 12 
2 | 12 
3 | 15 
4 | 14 
5 | 11 
6 | 101 
7 | 1009 

Avec sqldf I COU ld obtenir un sous-ensemble où les enregistrements ont une valeur Q de 12101 ou 1009

dt4 < - as.data.table (DF4) #chemin convertir DF4 à la table

DF5 < - sqldf ("select * from dt4 où Q1 (12,101,1009) ")

Voir (DF5)

ID | Q 
1 | 12 
2 | 12 
6 | 101 
7 | 1009 

Comment puis-je obtenir même sans utiliser sqldf?

Répondre

1
df4[which(df4$Q1 %in% c(12, 101, 1009)),] 

ou dplyr

library(dplyr) 

df4 %>% filter(Q1 %in% c(12, 101, 1009))