English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
El Data Frame (Data frame) se puede entender como la "tabla" común.
El Data Frame es una estructura de datos en R, es una lista bidimensional especial.
Cada columna del Data Frame tiene un nombre único, la longitud es igual, el tipo de datos de la columna debe ser consistente, los tipos de datos de diferentes columnas pueden ser diferentes.
R Data Frame se crea utilizando la función data.frame(), el formato de sintaxis es el siguiente:
data.frame(…, row.names = NULL, check.rows = FALSE, check.names = TRUE, fix.empty.names = TRUE, stringsAsFactors = default.stringsAsFactors())
...: Vector de columnas, puede ser de cualquier tipo (característico, numérico, lógico), generalmente se representa en forma de tag = value, también puede ser value.
row.names: El nombre de la fila, por defecto NULL, puede establecerse como un número individual, una cadena o un vector de cadenas y números.
check.rows: Detecta si los nombres de las filas y la longitud son consistentes.
check.names: Detecta si los nombres de las variables de la tabla de datos son válidos.
fix.empty.names: Establece si los parámetros sin nombre se configuran automáticamente con nombres.
stringsAsFactors: Booleano, si los caracteres se convierten en factores, factory-El valor predeterminado de fresh es TRUE, se puede modificar configurando la opción (stringsAsFactors=FALSE).
A continuación, se crea una tabla de datos simple que contiene nombre, N° de empleado, salario:
table = data.frame( nombre = c("Zhang San", "Li Si"), Número de empleado = c("001","002 Salario = c(1000, 2000) ) print(table) # Ver datos de table
执行以上代码输出结果为:
Nombre Número de empleado Salario 1 Zhang San 001 1000 2 Li Si 002 2000
La estructura de datos de la tabla de datos se puede obtener a través de str() La función para mostrar es:
table = data.frame( nombre = c("Zhang San", "Li Si"), Número de empleado = c("001","002 Salario = c(1000, 2000) ) # Obtener estructura de datos str(table)
执行以上代码输出结果为:
'data.frame': 2 obs. of 3 variables: $ Nombre: chr "Zhang San" "Li Si" $ N° de empleado: chr "001" "002" $ Salario mensual: num 1000 2000
summary() Se puede mostrar la información resumida de la tabla de datos:
table = data.frame( nombre = c("Zhang San", "Li Si"), Número de empleado = c("001","002 Salario = c(1000, 2000) ) # Mostrar resumen print(summary(table))
执行以上代码输出结果为:
Nombre N° de empleado Salario mensual Longitud:2 Longitud:2 Mín. :1000 Clase :carácter Clase :carácter 1st Qu.:1250 Modo :carácter Modo :carácter Mediana :1500 Promedio :1500 3rd Qu.:1750 Máx. :2000
También podemos extraer columnas específicas:
table = data.frame( nombre = c("Zhang San", "Li Si"), Número de empleado = c("001","002 Salario = c(1000, 2000) ) # Extraer columnas específicas result <- data.frame(table$nombre,table$salario) print(result)
执行以上代码输出结果为:
table.nombre table.salario 1 Zhang San 1000 2 Li Si 2000
Las dos primeras filas se muestran en la siguiente forma:
table = data.frame( Nombre = c("Zhang San", "Li Si","Wang Wu"), Número de empleado = c("001","002","003 Salario = c(1000, 2000,3000) ) print(table) # Extraer las dos primeras filas print("---Salida de las dos primeras filas----)", result <- table[1:2,] print(result)
执行以上代码输出结果为:
Nombre Número de empleado Salario 1 Zhang San 001 1000 2 Li Si 002 2000 3 Wang Wu 003 3000 [1] "---Salida de las dos primeras filas----" Nombre Número de empleado Salario 1 Zhang San 001 1000 2 Li Si 002 2000
Podemos leer los datos de una columna específica de una fila específica de la tabla en una forma similar a un sistema de coordenadas, a continuación, leemos el renglón 2 、3 # Leer el renglón 1 、2 Datos de columna::
table = data.frame( Nombre = c("Zhang San", "Li Si","Wang Wu"), Número de empleado = c("001","002","003 Salario = c(1000, 2000,3000) ) # Leer el renglón 2 、3 # Leer el renglón 1 、2 Datos de columna: result <- table[c(2,3),c(1,2)] print(result)
执行以上代码输出结果为:
Nombre N° de empleado 2 Li Si 002 3 Wang Wu 003
Podemos expandir la tabla de datos existente, en el siguiente ejemplo agregamos una columna de departamento:
table = data.frame( Nombre = c("Zhang San", "Li Si","Wang Wu"), Número de empleado = c("001","002","003 Salario = c(1000, 2000,3000) ) # Agregar columna de departamento table$departamento <- c("Operación","Técnico","Edición") print(table)
执行以上代码输出结果为:
Nombre N° de empleado Salario mensual Departamento 1 Zhang San 001 1000 Operación 2 Li Si 002 2000 技术 3 Wang Wu 003 3000 编辑
我们可以使用 cbind() 函数将多个向量合成一个数据框:
# 创建向量 sites <- c("Google","w3codebox","Taobao") likes <- c(222,111,123) url <- c("www.google.com","es.oldtoolbag.com,"www.taobao.com") # 将向量组合成数据框 addresses <- cbind(sites,likes,url) # 查看数据框 print(addresses)
执行以上代码输出结果为:
sitios me gusta url [1,] "Google" "222" "www.google.com" [2,] "w3codebox "111" "es.oldtoolbag.com" [3,] "Taobao" "123" "www.taobao.com"
如果要对两个数据框进行合并可以使用 rbind() 函数:
table = data.frame( Nombre = c("Zhang San", "Li Si","Wang Wu"), Número de empleado = c("001","002","003 Salario = c(1000, 2000,3000) ) newtable = data.frame( Nombre = c("Xiao Ming", "Principiante"), Número de empleado = c("101102 Salario = c(5000, 7000) ) # 合并两个数据框 result <- rbind(table,newtable) print(result)
执行以上代码输出结果为:
Nombre Número de empleado Salario 1 Zhang San 001 1000 2 Li Si 002 2000 3 Wang Wu 003 3000 4 Xiao Ming 101 5000 5 Principiante 102 7000