Warunkowo Usuń wiersze ramki danych za pomocą R [duplikat]

Możliwy duplikat:
usuwanie określonych wierszy z ramki danych

Tutaj wpisz opis obrazka

Używając R, Jak mogę zapisać następującą logikę do ramki danych: Jeśli kolumna A = B i Kolumna E = 0, Usuń wiersz

Z góry dzięki!
 79
r
Author: Community, 2011-11-04

3 answers

Indeks logiczny:

d<-d[!(d$A=="B" & d$E==0),]
 211
Author: mbq,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-04 09:04:01

Podzbiór jest najbezpieczniejszą i najłatwiejszą odpowiedzią.

subset(dataframe, A==B & E!=0)

Przykład rzeczywistych danych z mtcars

subset(mtcars, cyl==6 & am!=0)
 66
Author: Tyler Rinker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-04 13:36:15

Użyj funkcji which:

A <- c('a','a','b','b','b')
B <- c(1,0,1,1,0)
d <- data.frame(A, B)

r <- with(d, which(B==0, arr.ind=TRUE))
newd <- d[-r, ]
 2
Author: Manuel Ramón,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-11-04 05:33:01