Foro de debate

Join de dos marco de datos

Join de dos marco de datos

by Marlon Pabón -
Number of replies: 1

Tengo el siguiente inconveniente: tengo dos dataframes con la misma estructura (variables) de dos trimestres diferentes, de reportes de gastos de entidades, la cuestión está en que en el siguiente trimestre reporta un mayor número de entidades que el trimestre anterior (el número de filas se incrementa cada trimestre) pero debo hacer un ejercicio tipo panel en donde tenga los registros trimestrales de todo un año solo con las entidades que reportan cada trimestre.

En mi caso son 41.000 registros del primer trimestre  y 45.000 del segundo semestre, el resultado que espero es un panel de dos trimestres con 41000 filas, pero al hacer los join me resultan muchas más. Lo único que necesito es agregar una sola columna de valores del segundo semestre

Quisiera saber como hacer un join que me resulte en un data frame de solo 41000 filas que me traiga los valores del segundo semestre de una sola variable. Gracias


In reply to Marlon Pabón

Re: Join de dos marco de datos

by Manuel Muñoz Márquez -

Buenas:

Lo que tienes que hacer es un merge, usando una columna para emparejar los registros con el mismo nombre en los dos data.frame:

> a <- data.frame(id=c('A', 'C', 'D'), uno=c(1, 3, 4))
> b <- data.frame(id=c('A', 'B', 'C', 'D'), dos=c(1, 2, 3, 4))
> merge(a, b, all = TRUE, by='id')
  id uno dos
1  A   1   1
2  C   3   3
3  D   4   4
4  B  NA   2

Un saludo