¿Cómo fusionar dos tramas de datos en R?

En este artículo, vamos a ver cómo fusionar dos R dataFrames. La fusión de marcos de datos en R se puede realizar de dos maneras.

  • Combinar columnas
  • Combinar filas

Combinar columnas

De esta forma fusionamos la base de datos horizontalmente. Usamos la función de fusión para fusionar dos marcos por una o más variables clave comunes (es decir, una unión interna).

dataframe_AB = merge(dataframe_A, dataframe_B, by="ID")

A continuación se muestra la implementación:

R

# merging two datasets
authors <- data.frame(
  name = c("kapil", "sachin", "Rahul","Nikhil","Rohan"),
  nationality = c("US","Australia","US","UK","India"),
  retired = c("Yes","No","Yes","No","No"))
  
books <-data.frame( 
  name = c("C", "C++","Java","php",".net","R"),
  title = c("Intro to C","Intro to C++", 
            "Intro to java", "Intro to php", 
            "Intro to .net", "Intro to R"),
  author = c("kapil", "kapil","sachin", "Rahul",
             "Nikhil","Nikhil"))
    
  merge(authors, books, by.x = "name", by.y = "author")

Producción:

Fusión de filas

De esta forma, fusionamos los marcos de datos verticalmente y usamos la función rbind(). rbind significa encuadernación de filas. Los dos marcos de datos deben tener las mismas variables, pero no es necesario que estén en el mismo orden.

Nota: Si dataframe_A tiene variables que dataframe_B no tiene, elimine las variables adicionales en dataframe_A o cree las variables adicionales en dataframe_B y configúrelas en NA.

Como podemos ver en el siguiente diagrama, combina filas de dos marcos de datos.

A continuación se muestra la implementación:

R

# merging two datasets
authors_A <- data.frame(
  name = c("kapil", "sachin", "Rahul"),
  nationality = c("US", "Australia", "US"),
  retired = c("Yes", "No", "Yes"))
  
authors_B <- data.frame(
  name = c("Nikhil", "Rohan"),
  nationality = c("UK", "India"),
  retired = c("No", "No"))
  
rbind(authors_A, authors_B)

Producción:

Publicación traducida automáticamente

Artículo escrito por kapilnama1998 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *