/ / ¿Cómo puedo unir y agregar columnas en R? - r

¿Cómo puedo unir y agregar columnas en R? - r

Tengo dos marcos de datos.

Seasons Frequency
DJF 1
JJA 10
MAM 20
SON 30

Y

Seasons Frequency
DJF 1
JJA 10
MAM 20
SON 30

¿Cómo puedo combinar estos dos dfs, al mismo tiempo que agrego los valores de frecuencia?

Salida prevista:

Seasons Frequency
DJF 2
JJA 20
MAM 40
SON 60

Respuestas

1 para la respuesta № 1

Usando el paquete plyr

require(plyr)
ddply(rbind(df1, df2),
.(Seasons),
summarize,
Frequency=sum(Frequency))

0 para la respuesta № 2

Si están en orden, sin etiquetas faltantes, simplemente puede agregar la segunda columna.

df1$Frequency <- df1$Frequency + df2$Frequency)

De lo contrario, puede fusionarse en los valores de las estaciones, luego sumar los dos y eliminar la columna extraña.

final.df <- merge(df1, df2, by="Seasons")
final.df$Frequency <- final.df$Frequency.x + final.df$Frequency.y
final.df$Frequency.x <- NULL
final.df$Frequency.y <- NULL

0 para la respuesta № 3

Dado que 2 marcos de datos tienen una estructura idéntica, un código de una línea de base R también lo hará:

> df3 = data.frame(Seasons = df1$Seasons, Frequency = df1$Frequency+df2$Frequency)
> df3
Seasons Frequency
1     DJF         2
2     JJA        20
3     MAM        40
4     SON        60