ich einen Datenrahmen haben:einige Zeilen in Datenrahmen entfernen
mydata <- data.frame(
x1= as.factor(1:3),
x2= as.factor (4:6),
x3= as.factor(7:9),
x4= as.factor (2:7),
x5= as.factor(1:6),
x6= seq(0,600,len= 600),
x7= seq(0,1,len=600)
)
Und ich möchte einige Zeilen in diese mit bestimmten Bedingungen entfernen. Ich habe es so gemacht:
mydata1 <- mydata%>%
filter(x1==1, x2==4, x3==7, x4==2, x5==1)%>%
anti_join(mydata,., by=c("x1", "x2", "x3", "x4","x5","x6" "x7"))
mydata2 <- mydata1%>%
filter(x1==3, x2==6 x3==9, x4==7, x5==6)%>%
anti_join(mydata1,., by=c("x1", "x2", "x3", "x4","x5","x6", "x7"))
Es gibt viele Zeilen, die ich entfernen möchte. Gibt es einen anderen Weg, dies zu tun?
Warum verwenden Sie hier Faktoren? Faktoren mit ganzzahligen Werten, die nicht den Ebenenzahlen entsprechen, erscheinen als eine riskante und unnötige Komplikation. – Gregor
Eine Basis-R-Option ist 'mydata1 <- mydata [! As.character (Interaktion (mydata [1: 5]))% in%" 1.4.7.2.1 ",]; mydata2 <- mydata1 [! As.character (Interaktion (mydata1 [1: 5]))% in% "1.6.9.7.6",] ' – akrun