web-dev-qa-db-fra.com

Supprimer conditionnellement les lignes de la trame de données avec R

Duplicate possible:
Suppression de lignes spécifiques d'un bloc de données

enter image description here

Avec R, comment puis-je écrire la logique suivante dans la base de données: SI la colonne A = B et la colonne E = 0, supprime la ligne

103
AME

Indice logique:

d<-d[!(d$A=="B" & d$E==0),]
254
mbq

Subset est votre réponse la plus sûre et la plus simple.

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

Exemple de données réelles avec mtcars

subset(mtcars, cyl==6 & am!=0)
78
Tyler Rinker

Utilisez la fonction qui:

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, ]
3
Manuel Ramón