Un DataFrame es una estructura de datos con dos dimensiones en la cual se puede guardar datos de distintos tipos (como caractéres, enteros, valores de punto flotante, factores y más) en columnas. Es similar a una hoja de cálculo o una tabla de SQL.
Para crear un dataframe en R usaremos la funcion data.frame() y le pasaremos como parametros vectores con los datos que queremos que contenga nuestro dataframe como se muestra a continuacion:
library("dplyr")
## Warning: package 'dplyr' was built under R version 4.1.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
nombres = c("Gaby", "Diego", "Joel")
calif = c(90, 95, 100)
genero = c("femenino", "masculino", "masculino")
dataf = data.frame(nombres, calif, genero)
dataf
## nombres calif genero
## 1 Gaby 90 femenino
## 2 Diego 95 masculino
## 3 Joel 100 masculino
Podemos aplicar diferentes filtros como por ejemplo seleccionar solo una columna o varias columnas del dataframe.
nombres = c("Gaby", "Diego", "Joel")
calif = c(90, 95, 100)
genero = c("femenino", "masculino", "masculino")
dataf1 = data.frame(nombres, calif, genero)
seleccion = select(dataf1, calif, genero)
seleccion
## calif genero
## 1 90 femenino
## 2 95 masculino
## 3 100 masculino
En el siguiente ejemplo crearemos un dataframe con 3 diferentes columnas; materias, calificaciones y docentes y con estos datos obtendremos el promedio final.
materia = c("Internet de las cosas", "Desarrollo de aplicaciones moviles",
"Ciencia de los datos", "inteligencia de negocios",
"Analisis de datos sociales", "Ingles", "Taller de emprendimiento",
"Estrategias de gestion de servicios")
calificacion = c(100, 100, 95, 100, 100, 90, 100, 93)
docente = c("Sergio Valdez Rodela", "Juan Carlos Morales Ponce",
"Oscar Daniel Hernandez Olvera", "Maria de la Luz Valdez Lares",
"Sergio Valdez Rodela", "Olga Lidia de la Cruz Garcia",
"Karina", "Christian Fernando Martinez Vargas")
datafr2 = data.frame(materia, calificacion, docente)
datafr2
## materia calificacion
## 1 Internet de las cosas 100
## 2 Desarrollo de aplicaciones moviles 100
## 3 Ciencia de los datos 95
## 4 inteligencia de negocios 100
## 5 Analisis de datos sociales 100
## 6 Ingles 90
## 7 Taller de emprendimiento 100
## 8 Estrategias de gestion de servicios 93
## docente
## 1 Sergio Valdez Rodela
## 2 Juan Carlos Morales Ponce
## 3 Oscar Daniel Hernandez Olvera
## 4 Maria de la Luz Valdez Lares
## 5 Sergio Valdez Rodela
## 6 Olga Lidia de la Cruz Garcia
## 7 Karina
## 8 Christian Fernando Martinez Vargas
seleccion2 = select(datafr2, calificacion)
suma = sum(seleccion2)
promedio = suma/8
promedio
## [1] 97.25
usamos la funcion sum para sumar todos los campos de la columna calificacion y despues de ello este resultado lo dividimos entre 8 que es el total de materias y asi obtener el promedio final.