Manipulación de Filas
Al igual que las columnas, las filas en un data frame también pueden ser agregadas o eliminadas.
Agregar filas individuales
Para agregar una sola fila, se puede asignar una nueva entrada al siguiente índice de fila disponible (nrow(data) + 1
). Dado que un data frame puede contener diferentes tipos de valores, la nueva fila debe proporcionarse como una lista (o un data frame).
Por defecto, los valores de texto pueden convertirse en factores al crear data frames. Esto puede causar problemas al agregar nuevas filas. Para evitarlo, establezca stringsAsFactors = FALSE
al crear el data frame.
Ejemplo
123456789name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Add a new row test[nrow(test) + 1, ] <- list('Angela', 35, 'F', 'Accountant') test
Agregar múltiples filas
Otra forma de agregar filas es fusionando dos data frames con las mismas columnas utilizando la función merge()
. Esto permite agregar varias filas a la vez.
Ejemplo
123456789101112name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # New row as data a frame new_person <- data.frame('Angela', 35, 'F', 'Accountant') colnames(new_person) <- colnames(test) # Merge merge(test, new_person, all = T)
Eliminación de filas
Para eliminar filas, utilizar índices negativos dentro de corchetes, como en las matrices.
Ejemplo
12345678name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Remove a row test[-1, ]
Swipe to start coding
Dispone de un data frame llamado store
que contiene información sobre artículos, sus precios y las cantidades vendidas en una pequeña tienda de muebles.
Su tarea es:
- Eliminar la fila correspondiente a
'Dining chair'
(índice 4) del data framestore
. Reasigne el resultado a la variablestore
. - Añadir una nueva fila al data frame
store
utilizando el enfoque delist
con los siguientes datos:
Item | Price | Sold |
---|---|---|
Kitchen cabinet | 70 | 67 |
- Mostrar el data frame modificado.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Can you explain how the merge function works for adding rows?
What happens if the columns in the two data frames don't match?
How do I remove multiple rows at once from a data frame?
Awesome!
Completion rate improved to 2.27
Manipulación de Filas
Desliza para mostrar el menú
Al igual que las columnas, las filas en un data frame también pueden ser agregadas o eliminadas.
Agregar filas individuales
Para agregar una sola fila, se puede asignar una nueva entrada al siguiente índice de fila disponible (nrow(data) + 1
). Dado que un data frame puede contener diferentes tipos de valores, la nueva fila debe proporcionarse como una lista (o un data frame).
Por defecto, los valores de texto pueden convertirse en factores al crear data frames. Esto puede causar problemas al agregar nuevas filas. Para evitarlo, establezca stringsAsFactors = FALSE
al crear el data frame.
Ejemplo
123456789name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Add a new row test[nrow(test) + 1, ] <- list('Angela', 35, 'F', 'Accountant') test
Agregar múltiples filas
Otra forma de agregar filas es fusionando dos data frames con las mismas columnas utilizando la función merge()
. Esto permite agregar varias filas a la vez.
Ejemplo
123456789101112name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # New row as data a frame new_person <- data.frame('Angela', 35, 'F', 'Accountant') colnames(new_person) <- colnames(test) # Merge merge(test, new_person, all = T)
Eliminación de filas
Para eliminar filas, utilizar índices negativos dentro de corchetes, como en las matrices.
Ejemplo
12345678name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Remove a row test[-1, ]
Swipe to start coding
Dispone de un data frame llamado store
que contiene información sobre artículos, sus precios y las cantidades vendidas en una pequeña tienda de muebles.
Su tarea es:
- Eliminar la fila correspondiente a
'Dining chair'
(índice 4) del data framestore
. Reasigne el resultado a la variablestore
. - Añadir una nueva fila al data frame
store
utilizando el enfoque delist
con los siguientes datos:
Item | Price | Sold |
---|---|---|
Kitchen cabinet | 70 | 67 |
- Mostrar el data frame modificado.
Solución
¡Gracias por tus comentarios!
single