zusammenführen - r zeilen löschen




Löschen Sie redundante Spalten in R (2)

Ich habe etwas ähnliches:

date        pgm      in.x     logs       out.y
20130514    na       12       j1         12
20131204    z2       03       j1         03
20130516    a01      04       j0         04
20130628    z1       05       j2         05

Ich habe bemerkt, dass die Werte für In und Out immer gleich sind, daher möchte ich die Spalte out.y löschen. Und ich habe andere Spalten wie diese Ich möchte in der Lage sein, .y Spalten zu erkennen, die .x Spalten entsprechen und lösche sie, nachdem ich die Zusammenführung gemacht habe.


Diese Antworten unserer Kollegen sind zweifellos richtig, aber eine einfachere Art und Weise ist:

dataframe[,5]  <- NULL

Ich habe eine weitere Variable zu Ihrem Datenrahmen erstellt, die eine Kopie von out.y ist

x <- data.frame(date  = c("20130514","20131204","20130516","20130628"),
  pgm = c(NA, "z2", "a01", "z1"), in.x= c(12, 3, 4, 5), out.y= c(12, 3, 4, 5),new.y = c(12, 3, 4, 5))

y <- x[grepl(".x|.y",colnames(x))]

 in.x out.y new.y
1   12    12    12
2    3     3     3
3    4     4     4
4    5     5     5

y$in.x==y[,c("out.y","new.y")]
     out.y new.y
[1,]  TRUE  TRUE
[2,]  TRUE  TRUE
[3,]  TRUE  TRUE
[4,]  TRUE  TRUE

x <- x[,1:3]

      date  pgm in.x
1 20130514 <NA>   12
2 20131204   z2    3
3 20130516  a01    4
4 20130628   z1    5






merge