Este es un problema realmente simple, pero no puedo encontrar la manera de guiarlo. No puedo avanzar hasta que lo resuelva. Soy realmente nuevo en R y en el uso del código, y estoy repasando varios manuales introductorios, pero aún no he encontrado nada para este problema específico.Crear un nuevo marco de datos en R a partir de un marco de datos existente e inadecuado
En general, este es el problema. Digamos que tengo una trama de datos llamada x
que se parece a:
a <- c(1995,1995,1995,1996,1997,1997,1997,1998)
b <- c(1,2,3,1,2,3,4,1)
c <- c(5,7,8,2,4,5,7,8)
(x <- data.frame(a,b,c))
a b c
1 1995 1 5
2 1995 2 7
3 1995 3 9
4 1996 1 2
5 1997 2 4
6 1997 3 5
7 1997 4 7
8 1998 1 8
Hay varias entradas para algunos de los años en la columna a
(es decir, 1995 aparece 3 veces), cuando en realidad sólo quiero una entrada para cada año . Si trato de trazar la columna a
en la columna c
, terminaré con varios puntos para cada fecha, pero eso no es útil. No me importa la columna b, pero Quiero sumar entradas para la columna c
para cada año, de modo que termine con un marco de datos con una entrada para cada año. Teniendo en cuenta los datos anteriores, un marco de datos resultante se vería así:
a c
1 1995 21
2 1996 2
3 1997 16
4 1998 8
¿Alguna idea?
Consejo: evitar llamar a las cosas 'C'. Recuerde que 'c' es una función para crear vectores. – csgillespie
@csgillespie: Eso es cierto para los objetos. No es un problema tan grande para los nombres de columna. –
@Joshua: Cierto, pero (algunas personas) pueden tener la tentación de hacer 'c = df $ c' sin pensar. – csgillespie