¿Cómo añadir observaciones a una trama de datos en r
Conforme pasa el tiempo, pueden aparecer y necesita ser añadido al conjunto de datos en R. Al igual que las matrices de nuevos datos, tramas de datos se pueden añadir usando el rbind ()
Conteúdo
Adición de una sola observación
Dicen que la abuela y Geraldine jugó otro partido con su equipo, y desea añadir el número de canastas que hicieron. los rbind () función le permite hacer tan fácilmente:
> Resultado lt; - rbind (baskets.df, c (7, 4))> resultGranny Geraldine1st 12 52a 43a 4 5 24 6 45a 9126a 3 977 4
La trama de datos resultado ahora tiene una observación adicional en comparación con baskets.df. rbind () puede tomar múltiples argumentos, siempre y cuando sean compatibles. En este caso, se enlaza un vector c (7, 4) en la parte inferior de la trama de datos.
Tenga en cuenta que R, de forma predeterminada, establece el número de fila como el nombre de la fila para las filas añadidas. Se utiliza el rownames () función para ajustar esto, o se puede especificar de inmediato el nombre disputa entre comillas en el rbind () función:
> Baskets.df lt; - rbind (baskets.df, " séptimo " = C (7, 4))
Tenga en cuenta que debe utilizar comillas alrededor séptimo, ya que comienza con un número. Sin comillas, R no lo reconoce como un nombre. Si marca el objeto baskets.df ahora, se ve la observación adicional en la parte inferior con el nombre de la fila correcta:
> Baskets.dfGranny Geraldine1st 12 52a 43a 4 5 24 6 45a 9126a 3 97a 7 4
Alternativamente, puede utilizar la indexación añadir una observación adicional. Sigue leyendo para ver cómo.
Adición de una serie de nuevas observaciones utilizando rbind
Si necesita añadir varias nuevas observaciones de una trama de datos, haciendo de él uno por uno no es del todo práctico. Afortunadamente, puede utilizar rbind () adjuntar una matriz o una trama de datos con nuevas observaciones a la trama de datos original. El juego de las columnas se realiza por su nombre, por lo que necesita para asegurarse de que las columnas de la matriz o de las variables en el marco de datos con nuevas observaciones coinciden con los nombres de las variables en la estructura de datos original.
Vamos a añadir otros dos resultados de los juegos de la trama de datos baskets.df. En primer lugar, que la construcción de un nuevo marco de datos con el número de cestas de la abuelita y Geraldine anotó, así:
> New.baskets lt; - data.frame (Granny = c (3, 8), Geraldine = c (9, 4))
Si utiliza el data.frame () la función de construir una nueva trama de datos, puede establecer de inmediato los nombres de las variables mediante la especificación de ellos en la llamada a la función, como en el ejemplo anterior. Ese código crea una trama de datos con las variables de la abuelita y Geraldine, donde cada variable contiene el vector dado después del signo igual.
Para ser capaz de unirse a la trama de datos new.baskets a la original baskets.df, usted tiene que asegurarse de que los nombres de las variables coinciden exactamente, incluyendo el caso.
A continuación, agregar los nombres de fila opcionales y los nombres de las columnas necesarias con el siguiente código:
> Rownames (new.baskets) lt; - c (" # 148 ;, octavo " novena ")
Para añadir la matriz a la trama de datos, sólo tiene que hacer lo siguiente:
> Baskets.df lt; - rbind (baskets.df, new.baskets)
Usted puede tratar de usted a hacer lo mismo utilizando una trama de datos en lugar de una matriz.
Adición de una serie de valores utilizando índices
También puede utilizar los índices para agregar un conjunto de nuevas observaciones a la vez. Usted obtiene exactamente el mismo resultado si se cambia todo el código anterior en esta línea simple:
> Baskets.df [c (" # 148 ;, octavo " novena "),] lt; - matriz (c (3, 8, 9, 4), ncol = 2)
Con este código, haga lo siguiente:
Crear una matriz con dos columnas.
Crear un vector con los nombres de fila Octavo y Noveno.
Utilice este vector como índices de fila de la trama de datos baskets.df.
Asignar los valores de la matriz a las filas con nombres Octavo y Noveno. Debido a estas filas no existen todavía, R los crea automáticamente.
En realidad, no es necesario para construir la matriz de primera sólo puede utilizar un vector en su lugar. Exactamente igual que con las matrices, las tramas de datos se llenan por columnas. Así, el siguiente código le da exactamente el mismo resultado:
> Baskets.df [c (" # 148 ;, octavo " novena "),] lt; - c (3, 8, 9, 4)
Este proceso sólo funciona para las tramas de datos, sin embargo. Si usted trata de hacer lo mismo con las matrices, se obtiene un error. En el caso de matrices, sólo se puede utilizar índices que ya existen en el objeto original.
Tiene varias opciones igualmente válidos para agregar observaciones a una trama de datos. La opción que elija depende de su elección personal y la situación. Si usted tiene un marco de matriz o de datos con observaciones adicionales, puede utilizar rbind (). Si usted tiene un vector con los nombres de fila y un conjunto de valores, utilizando los índices puede ser más fácil.