Вы находитесь на странице: 1из 14

Lenguaje R

en RStudio

Curso: Machine Learning:

Semana 3: R Básico, funciones básicas.


>> Semana 5: R manejo de vectores, dataframes,
importación y exportación de datos.

Dennis Joel Revilla Vásquez


R y RStudio

Base IDE
R es el lenguaje de programación Rstudio es un programa para manejar
R de manera más cómoda.
R es un programa diseñado para
hacer análisis estadísticos y graficas.

R es un software libre: Gratis para


descargar, instalar y utilizar.
Que es una variable en R.
En este ejercicio vamos a:
1. Realizar operaciones aritméticas en la consola
2. Asignar variables a un script en RStudio, y
3. Identificar distintos tipos de datos en R # observa la clase del resultado
class(resultado)

# primer acertijo de redes sociales # crea una variable con algún nombre
1+1-1*(1+1-1)/1+1*(-1) nombre <- "Joel"

# observa la clase del nombre


# asigna los números a cada fruta class(nombre)
mango <- 10
manzana <- 5 # es 1 mayor que 2
palta <- 15 1>2

# resuelve el complejo acertijo # cual es la clase de esto


resultado <- 2*palta + 4*manzana + 1.5*mango class(1 > 2)

# imprime el resultado por pantalla # suma nombre con resultado


resultado nombre + resultado
Estudiar que es una vector en R. # sumar 2 a la puntuacion
En este ejercicio vamos a: puntuacion + 2
1. Crear vectores en un script
# dividir la puntuacion entre 2
2. Realizar operaciones aritméticas con vectores puntuacion/2
3. Seleccionar elementos en un vector
# crear vector caracter con nombre de las peliculas # crea la puntuacion de Joel
nombre <- c("Shrek", "Shrek 2", "Shrek Tercero", "Shrek: puntuacion_de_joel <- c(10, 9, 6, 7)
Felices por siempre")
# calcular diferencia entre puntuaciones
puntuacion_de_joel - puntuacion
# crear vector numerico con puntuacion de las peliculas
puntuacion <- c(7.9, 7.2, 6.1, 6.3) # calcular la longitud del vector
length(puntuacion)
# crear vector logico sobre si la pelicula es posterior a 2005
posterior_2005 <- c(FALSE, FALSE, TRUE, TRUE) # calcular el promedio del vector puntuacion
mean(puntuacion)
## seleccion basada en posicion
# seleccionar la tercera pelicula # mostrar condicion para ver TRUE/FALSE
nombre[3] puntuacion_baja
# seleccionar la primera y la ultima pelicula
nombre[c(1, 4)]
# mostrar puntuaciones bajas
puntuacion[puntuacion_baja]
## seleccion basada en condicion lógica
# crear condicion logica # mostrar nombres de peliculas con puntuaciones bajas
puntuacion_baja <- puntuacion < 7 nombre[puntuacion_baja]
Estudiar que es una matriz en R.
En este ejercicio vamos a: # resta 5 a la matriz
1. Crear matrices en un script peliculas - 5
2. Realizar oprEaciones aritmeticas con matrices
3. Seleccionar elementos en una matriz # sumar matriz consigo misma
# crear vectores para las columnas de la matriz peliculas + peliculas
warner <- c(20, 20, 16, 17, 17, 22, 17, 18, 19)
disney <- c(11, 13, 11, 8, 12, 11, 12, 8, 10)
fox <- c(18, 15, 15, 15, 16, 17, 15, 13, 11) # multiplicar la matriz consigo mismo
# fuente https://www.the-numbers.com/market/ peliculas * peliculas
# seleccionar un elemento de la matriz
# creando matriz a partir de vectores peliculas[3, 2]
peliculas <- matrix(c(warner, disney, fox), peliculas['2012', 'disney']
nrow = 9,
ncol = 3)
# imprimir matriz en consola # seleccionar mas de un elemento de la matriz
peliculas peliculas[c(3,4), c(2,3)]
peliculas[c(3,4), c('disney', 'fox')]
# agregar nombres de columnas
colnames(peliculas) <- c('warner', 'disney', 'fox') # seleccionar una fila o renglon
peliculas[3,]
# agregar nombres de filas/renglones
peliculas['2012',]
rownames(peliculas) <- c('2010', '2011', '2012', '2013', '2014', '2015',
'2016', '2017', '2018')
# seleccionar una columna
# imprimir matriz por segunda vez peliculas[, 2]
peliculas peliculas[, 'disney']
Estudiar que son factores en R.
En este ejercicio vamos a:
1. Crear factores en R
2. Recodificar niveles de un factor # creando factor recodificado
3. Ordenar niveles de un factor tallas_recodificado <- factor(tallas,
levels = c("g", "m", "M", "S"),
# crear vector de ventas labels = c("G", "M", "M", "S"))
tallas <- c('m', 'g', 'S', 'S','m', 'M')
# graficando ventas_recodificado
# intentar graficar plot(tallas_recodificado)
plot(tallas)

# crear factor de un vector # ordenando niveles (copiar factor anterior)


tallas_factor <- factor(tallas) tallas_ordenado <- factor(tallas,
ordered = TRUE,
# graficar factor levels = c("S", "m", "M", "g"),
plot(tallas_factor) labels = c("S", "M", "M", "G"))

# mirar niveles de factor # viendo el orden en los niveles


levels(tallas_factor) tallas_ordenado

# graficando el factor ordenado


plot(tallas_ordenado)
Estudiar que son dataframes en R.
En este ejercicio vamos a:
# seleccionar un elemento del dataframe
1. Crear dataframes en R
peliculas_df[3, 2]
2. Ordenar dataframes por columnas
peliculas_df[3, 'PUNTUACION']
3. Seleccionar elementos de un dataframe
# vectores sobre peliculas de Shrek # seleccionar más de un elemento del dataframe
nombre <- c("Shrek", "Shrek 2", "Shrek Tercero“ peliculas_df[c(3,4), c(2,3)]
, "Shrek: Felices por siempre") peliculas_df[c(3,4), c('PUNTUACION', 'POSTERIOR_2005')]
puntuacion <- c(7.9, 7.2, 6.1, 6.3)
posterior_2005 <- c(FALSE, FALSE, TRUE, TRUE) # seleccionar una fila o renglon del dataframe
# crear dataframe de vectores peliculas_df[3,]
peliculas_df <- data.frame(nombre,
puntuacion, # seleccionar una columna del dataframe
posterior_2005) peliculas_df[, 2]
peliculas_df[, 'PUNTUACION']
# mostrar dataframe peliculas_df$PUNTUACION
head(peliculas_df)

# cambiar nombre de dataframe


names(peliculas_df) <- c('NOMBRE',
'PUNTUACION',
'POSTERIOR_2005')

# mostrar dataframe (si­, otra vez)


peliculas_df
# mostrar el dataframe
peliculas_df

# mostrar el indice de la columna de puntuacion con order


order(peliculas_df$PUNTUACION)

# funcion order (menor a mayor)


orden_menor_mayor <- order(peliculas_df$PUNTUACION,
decreasing = FALSE)

# mostrar el dataframe ordenado


peliculas_df[orden_menor_mayor, ]

# funcion order (mayor a menor)


orden_mayor_menor <- order(peliculas_df$PUNTUACION,
decreasing = TRUE)

# mostrar el dataframe ordenado


peliculas_df[orden_mayor_menor, ]

# guardar el dataframe ordenado


df_ordenado <- peliculas_df[orden_mayor_menor, ]
Estudiar que son las listas en R
En este ejercicio vamos a:
1. Crear listas en R
2. Seleccionar elementos de una lista
3. Identificar listas en R
# Cargando datos anteriores
# informacion peliculas shrek.
nombre <- c("Shrek", "Shrek 2", "Shrek Tercero", "Shrek: Felices
por siempre")
puntuacion <- c(7.9, 7.2, 6.1, 6.3)
posterior_2005 <- c(FALSE, FALSE, TRUE, TRUE)
# informacion estrenos de peliculaswarner <- c(20, 20, 16, 17,
17, 22, 17, 18, 19)
disney <- c(11, 13, 11, 8, 12, 11, 12, 8, 10)
fox <- c(18, 15, 15, 15, 16, 17, 15, 13, 11)

# crear diferentes estructuras de datos en R


vector_titulos <- nombre
matriz_peliculas <- matrix(c(warner, disney, fox),
nrow = 9,
ncol = 3)
peliculas_df <- data.frame(nombre,
puntuacion,
posterior_2005)
# crear lista en R
lista_curso <- list(vector_titulos,
matriz_peliculas)

# mostrar lista # agregar dataframe a lista


lista_curso lista_curso[['dataframe']] <- peliculas_df

# cambiar nombre de dataframe # revisar que está el dataframe


names(lista_curso) <- c('vector', lista_curso
'matriz')
# eliminar un elemento de lista
# mostrar lista (si, otra vez) lista_curso[['vector']] <- NULL
lista_curso
# Seleccionar vector de la lista # revisar que no está el vector
lista_curso[['vector']] # recomiendo usar este lista_curso
lista_curso$vector # no recomiendo usar este porque confunde
con df

# Seleccionar el tercer elemento del vector de la lista


lista_curso[['vector']][3]

# Seleccionar fila 5 y columna 3 de la matriz de la lista


lista_curso[['matriz']][5,3]
Importar DATOS
Exportar DATOS
library(writexl)

write_xlsx(x = peliculas_df, path = "Pelis.xlsx", col_names = TRUE)

x = data a exportar
path = nombre
Gracias.