La determinación de diferentes filas entre dos conjuntos de datos en R
-
01-10-2019 - |
Pregunta
He dos archivos de datos en formato CSV separado por tabuladores. Los archivos están en el formato siguiente:
EP Code EP Name Address Region ...
101654 Alpha York Street Northwest ...
103628 Beta 5th Avenue South ...
códigos EP son únicos. Lo que quiero hacer es comparar dos archivos con respecto a los códigos del PE, determinar las diferentes filas y escribirlas en un archivo nuevo.
Por ejemplo, File1.csv tiene 800 filas y file2.csv tiene 850 filas. fichero2 podría ser un archivo que incluye por completo fichero1 más 50 filas; o podría ser file1 - 10 rows + 60 rows
. Quiero determinar las diferencias entre dos conjuntos de datos. No estoy interesado en las filas de inversión.
¿Cómo puedo hacer que en R?
Solución
Hay muchas maneras de hacer esto, incluyendo setdiff
, intersect
, la función %in%
, is.element
. Sólo tiene que encontrar el conjunto de intersección y excluye el uso de !
:
diff1 <- file1[setdiff(file1$ep.code, file2$ep.code),]
o
diff2 <- file2[!(intersect(file2$ep.code, file1$ep.code)),]