¿Qué es un marco de datos?
UNA. marco de datos es una lista de vectores de igual longitud. Solo hay un tipo de datos en una matriz y un marco de datos acepta diferentes tipos de datos (numéricos, caracteres, factores, etc.).
En este tutorial, aprenderá:
Cómo crear un marco de datos
Podemos crear una base de datos en R ejecutando las variables a, b, c, da en la función data.frame (). Podemos crear una base de datos R y nombrar las columnas con el nombre () y especificar el nombre de las variables.
data.frame(df, stringsAsFactors = TRUE)
Argumentos:
- df: Puede ser una matriz convertida como marco de datos o como una colección de variables para unir
- stringsAsFactors: Convierte la cadena en un factor por defecto
Podemos crear una base de datos en R para nuestro primer conjunto de datos combinando cuatro variables de la misma longitud.
# Create a, b, c, d variables a <- c(10,20,30,40) b <- c('book', 'pen', 'textbook', 'pencil_case') c <- c(TRUE,FALSE,TRUE,FALSE) d <- c(2.5, 8, 10, 7) # Join the variables to create a data frame df <- data.frame(a,b,c,d) df
Producción:
## a b c d ## 1 1 book TRUE 2.5 ## 2 2 pen TRUE 8.0 ## 3 3 textbook TRUE 10.0 ## 4 4 pencil_case FALSE 7.0
Podemos ver que los encabezados de las columnas tienen el mismo nombre que las variables. Podemos cambiar el nombre de la columna en R con los nombres de las funciones (). Echa un vistazo a la base de datos de creación de R de muestra a continuación:
# Name the data frame names(df) <- c('ID', 'items', 'store', 'price') df
Producción:
## ID items store price ## 1 10 book TRUE 2.5 ## 2 20 pen FALSE 8.0 ## 3 30 textbook TRUE 10.0 ## 4 40 pencil_case FALSE 7.0
# Print the structure str(df)
Producción:
## 'data.frame': 4 obs. of 4 variables: ## $ ID : num 10 20 30 40 ## $ items: Factor w/ 4 levels "book","pen","pencil_case",..: 1 2 4 3 ## $ store: logi TRUE FALSE TRUE FALSE ## $ price: num 2.5 8 10 7
De forma predeterminada, un marco de datos variable devuelve un factor cableado.
Marco de datos de corte
Se pueden obtener los valores SLICE de Data Framework. Seleccionamos las filas y columnas para volver a paréntesis bajo el nombre del marco de datos.
Un marco de datos consta de filas y columnas, df[A, B]. A representa las filas y B representa las columnas. Podemos deslizarnos especificando las filas y / o columnas.
De la imagen 1, la parte izquierda muestra el capas, y la parte correcta es la columnas. Tenga en cuenta que el símbolo es: recurso a. Por ejemplo, 1: 3 está destinado a seleccionar valores de 1 a 3.
En el siguiente diagrama mostraremos cómo acceder a las diferentes selecciones del marco de datos:
- La flecha amarilla selecciona el aparte 1 en columna 2
- La flecha verde selecciona el capas 1 a 2
- La flecha roja selecciona el columna 1
- La flecha azul selecciona el capas 1 a 3 y columnas 3 hasta 4
Tenga en cuenta que si dejamos la parte izquierda en blanco, seleccionamos R. todas las capas. Por analogía, si dejamos la parte derecha en blanco, R seleccionará. todas las columnas.
Podemos ejecutar el código en la consola:
## Select row 1 in column 2 df[1,2]
Producción:
## [1] book ## Levels: book pen pencil_case textbook
## Select Rows 1 to 2 df[1:2,]
Producción:
## ID items store price ## 1 10 book TRUE 2.5 ## 2 20 pen FALSE 8.0
## Select Columns 1 df[,1]
Producción:
## [1] 10 20 30 40
## Select Rows 1 to 3 and columns 3 to 4 df[1:3, 3:4]
Producción:
## store price ## 1 TRUE 2.5 ## 2 FALSE 8.0 ## 3 TRUE 10.0
También es posible seleccionar las columnas con sus nombres. Por ejemplo, el siguiente código tiene dos columnas: ID y repositorio.
# Slice with columns name df[, c('ID', 'store')]
Producción:
## ID store ## 1 10 TRUE ## 2 20 FALSE ## 3 30 TRUE ## 4 40 FALSE
Agregar columna al marco de datos
También puede agregar una columna a un marco de datos. Debe usar el símbolo $ para adjuntar la variable de marco de datos R y agregar una columna a una base de datos en R.
# Create a new vector quantity <- c(10, 35, 40, 5) # Add `quantity` to the `df` data frame df$quantity <- quantity df
Producción:
## ID items store price quantity ## 1 10 book TRUE 2.5 10 ## 2 20 pen FALSE 8.0 35 ## 3 30 textbook TRUE 10.0 40 ## 4 40 pencil_case FALSE 7.0 5
Nota: El número de elementos en el vector debe ser igual al número de elementos en el marco de datos. Ejecute la siguiente declaración para agregar la columna a la base de datos R.
quantity <- c(10, 35, 40) # Add `quantity` to the `df` data frame df$quantity <- quantity
Da un error:
Error in `$<-.data.frame`(`*tmp*`, quantity, value = c(10, 35, 40)) replacement has 3 rows, data has 4
Seleccionar columna de marco de datos
A veces necesitamos almacenar una columna de un marco de datos para uso futuro o trabajar en una columna. Podemos usar el signo $ para seleccionar la columna de un marco de datos.
# Select the column ID df$ID
Producción:
## [1] 1 2 3 4
Marco de datos de subtrama
En la sección anterior, seleccionamos una columna completa incondicionalmente. lata subconjunto basado en si una condición particular era verdadera o no.
Usamos la función de subconjunto ().
subset(x, condition) arguments: - x: data frame used to perform the subset - condition: define the conditional statement
Solo queremos devolver los artículos con precio superior a 10, podemos hacer:
# Select price above 5 subset(df, subset = price > 5)
Producción:
ID items store price 2 20 pen FALSE 8 3 30 textbook TRUE 10 4 40 pencil_case FALSE 7