it-swarm.it

Filtraggio di un frame di dati in base ai valori in una colonna

Sto lavorando con il set di dati LearnBayes. Per coloro che vogliono vedere i dati reali:

install.packages('LearnBayes')

Sto cercando di filtrare le righe in base al valore nelle colonne. Ad esempio, se il valore della colonna è "acqua", allora voglio quella riga. Se il valore della colonna è "latte", allora non lo voglio. In definitiva, sto cercando di filtrare tutti gli individui che bevono la colonna è "acqua".

90
user722224

Il comando subset non è necessario. Basta usare l'indicizzazione della cornice dati

studentdata[studentdata$Drink == 'water',]

Leggi l'avviso da ?subset

Questa è una funzione di convenienza pensata per l'uso interattivo. Per la programmazione è meglio usare le funzioni di subsetting standard come '[', e in particolare la valutazione non standard dell'argomento 'sottoinsieme' può avere conseguenze impreviste.

195
adamleerich

Prova questo:

subset(studentdata, Drink=='water')

quello dovrebbe farlo.

64
Dave Kincaid

Ho pensato di aggiornarlo con una soluzione dplyr

library(dplyr)    
filter(studentdata, Drink == "water")
33
rrs