Você está na página 1de 24

R

Leonardo Navarro, Geólogo (Área de procesos)

5 de Marzo de 2019
Contenido
• Estructura del curso
• Qué es R
• Motivación y ventajas
• Cómo funciona
• Rstudio e interfaz gráfica
• Cómo se ve un archivo R
• Tipos de datos en R
• Funciones
• Paquetes y librería
• Práctica

© Arcadis 2015
Estructura del curso
• 4 Clases de 1 hora.
• Martes 5, 12, 19, 26 de marzo 2019

Objetivo del curso


• Optimizar
• Ser capaz de manipular datos (típicamente en planillas Excel) rápidamente.
• Automatizar procesos que realizamos muchas veces (en el año o en una simple
tarea).
• Rápida visualización de datos
• Generar una aplicación web que procese datos (en R, usando paquete Shiny)

© Arcadis 2015 03 June 2019 3


Qué es R
R is ‘GNU S’, a freely available language and environment for statistical
computing and graphics which provides a wide variety of statistical and
graphical techniques: linear and nonlinear modelling, statistical tests, time
series analysis, classification, clustering, etc. Please consult the R project
homepage for further information.

CRAN is a network of ftp and web servers around the world that store identical,
up-to-date, versions of code and documentation for R.

https://cran.r-project.org/

CRAN : The Comprehensive R Archive Network


© Arcadis 2015 03 June 2019 4
Motivación
¿Para/por qué aprender R?

• Porque no necesitamos tener conocimientos


previos de programación

• Por que es fácil!

• Nos permitirá guardar en “rutinas R” procesos


que volveremos a ocupar.

• Para visualizar datos de una forma muy rápida.

• La automatización en rutinas nos permitirá


realizar incorporación de nuevos datos, o
modificaciones/revisiones rápidamente.

• Es gratis!

© Arcadis 2015 03 June 2019 5


Ventajas
Se crea un archivo R (que es una serie de instrucciones) en un orden lógico,
que cualquier persona puede revisar y editar. (Esto no es así en Excel)

Se puede ir comentando (Y debería ser así),

para una mejor comprensión de lo realizado.

Las instrucciones se ejecutan las veces que nosotros queramos, y que


explicitemos.

© Arcadis 2015 03 June 2019 6


Motivación
R tiene que ser utilizado como complemento a Excel, y no son excluyentes:
Ejemplo A:

Calcular el promedio de 300 datos: Usar Excel

Calcular el promedio de 300 datos en 300 archivos Excel, con 20 hojas cada
uno. Usar R

Ejemplo B: Realizar un gráfico scatter, usar Excel


Realizar 100 gráficos scatter, usar R

© Arcadis 2015 03 June 2019 7


Motivación
R también nos será útil cuando manipulamos muchas filas de datos, que es
cuando Excel ya empieza a “quedarse pegado”

© Arcadis 2015 03 June 2019 8


Como funciona R

Interfaz gráfica

Se genera una rutina (archivo


de texto) que funcione
correctamente en lenguaje R.
“archivo.R”

R es el motor, ejecuta
el archivo R.

© Arcadis 2015 03 June 2019 9


RStudio: Interfaz gráfica

Área del texto de nuestro Variables de entorno: Aquí


archivo R. se pueden visualizar las
variables, funciones, que
vamos creando o cargando

Salida de plots: Si
graficamos algo, aquí se va
Terminal de R a visualizar.

© Arcadis 2015 03 June 2019 10


Cómo se ve un archivo R
setwd(‘C:/R/R/Clase1’)
library(readxl)
Aliaga <- read_excel('Base_datos_Aliaga_2016.xlsx’)
library(ggplot2)
ggplot(Aliaga)+geom_point(aes(x=XCOO,y=YCOO))
ggsave('Grafico1.svg')

Se puede crear/editar un archivo R en un block de notas


común y corriente, pero RStudio nos permite escribir el
código de una manera rápida y simple, así como navegar en
las variables creadas y ver en “tiempo real” los gráficos
creados.
© Arcadis 2015 03 June 2019 11
© Arcadis 2015 03 June 2019 12
Tipos de datos en R
Los datos más básicos son:
Numerics: 12, 5, 20, 100, 12.0 ,12.3 , 3213.76
Characters: ‘A’, ‘Hola’, ‘chao’, ‘ASDFSDADASDSA’
Boolean: Dos valores posibles, TRUE, o FALSE. Ejemplo:
5==5, 5!=5, ‘A’ == ‘B’, TRUE == FALSE

POSIXlt y POSIXct: Tiempo y calendario.


Fecha = as.POSIXct(“2019-03-31 23:59:59", tz = "UTC")
Ejemplo:
z <- 1472562988 # ways to convert this as.POSIXct(z, origin = "1960-01-01") #
local as.POSIXct(z, origin = "1960-01-01", tz = "GMT")

Ojo! R utiliza el punto como separador decimal.


© Arcadis 2015 03 June 2019 13
Tipos de datos en R

Factors: Son variables categóricas en R. Un concepto que no revisaremos en


este curso, pero para mayor información ver material suplementario.

Ojo! R utiliza el punto como separador decimal.


© Arcadis 2015 03 June 2019 14
Tipos de datos en R
Vectores
a <- c(1,2,5.3,6,-2,4) # vector numérico
b <- c("one","two","three") # vector de character
c <- c(TRUE,TRUE,TRUE,FALSE,TRUE,FALSE) #vector
lógico
a[1] # esto es igual a 1
b[3] # esto es igual a ‘three’
Matrices
Las matrices son “tablas” de dos dimensiones, que solo
pueden tener un “tipo” de datos (o son todos numéricos, o
caracteres, o lógicos).
X[1,2] #corresponde en la figura a 26: [fila, columna]

Arrays (Arreglos)
Son matrices de más de 2 dimensiones
X[1,2,5] #se podría pensar en este caso como una
coordenada X, Y, y Z.

© Arcadis 2015 03 June 2019 15


Tipos de datos en R
DataFrames
Los DataFrames son como “matrices” pero cada columna de los DF pueden ser distintos tipos de
datos.
Una columna puede ser de tiempo (POSIXct), otra puede ser de texto (characters), y varias más
numéricas.
Los archivos Excel, al ser importados (o cargados a R), son almacenados en un dataframe.
Para acceder a los datos tenemos distintas maneras:
DF[1,1] #en el ejemplo es ‘TFSC’
DF[,1] #en el ejemplo es la primera columna
DF[,c(1,2,4:8)] #en el ejemplo son las columnas enumeradas, se introduce como vector.
DF$Last #en el ejemplo es la columna con el nombre ‘Last’
DF$NuevaColumna <- DF$Last*2 + 100 #se crea una nueva columna

© Arcadis 2015 03 June 2019 16


Tipos de datos en R
Lists
Las listas ( o lists) son estructuras de datos que pueden tener distintos tipos de datos (u objetos). En
la práctica es como un vector, pero puede tener distintos tipos de datos.

Ejemplo:

Sea DF un dataframe, V un vector, y M una matriz

MiLista = list(DF,V,M,’hola’,5)

Ahora mis variables quedan almacenadas en MiLista.

Para acceder a ellas:


MiLista[[1]] #esto retornará el objeto que está en la primera posición, en nuestro caso el DF.

Muy útil cuando iteramos y queremos almacenar muchas variables.

© Arcadis 2015 03 June 2019 17


Funciones
Son una serie de instrucciones que se definen en una “función”

Ejemplo:

VectorPrueba <- c(2,5,7,8) # se define el vector numérico VectorPrueba

mean(VectorPrueba) #se llama a la función “mean” pre establecida en R, que


recibe vectores

R retornará el valor “5.5”

Nosotros podemos crear nuestras propias funciones

© Arcadis 2015 03 June 2019 18


Funciones
Ejemplo:
Promedio <- function(X,Y){
return((X+Y)/2)} #se crea función que recibe dos variables, y que
retorna la suma dividido por dos
Promedio(5,4) # esto retornará 4.5
Podemos mejorar nuestra función, para que acepte más variables:
Promedio <- function(...){
x=c(...)
return(sum(x)/length(x))} #usamos dos funciones pre establecidas de R.

© Arcadis 2015 03 June 2019 19


Librería
Cuándo uno tiene un problema, hay que pensar que probablemente alguien más lo
tuvo, y probablemente lo resolvió.

Una de las ventajas de R es la gran comunidad que está detrás, y que está
constantemente creando nuevas soluciones a problemas que han ido surgiendo.

Por esto, surgen los “Packages”, que son un conjunto de funciones u objetos con el
fin de dar solución a un problema.

© Arcadis 2015 03 June 2019 20


Librería
Los paquetes tienen que ser instalados manualmente por cada uno de
nosotros, y quedarán almacenados en nuestra “Librería”. Dentro de los más
usados (y que usaremos):

readxl: Leer excels

dplyr: Manipulación de datos

reshape2: Manipulación de datos

ggplot2: Visualización de datos

grid, scales: Soporte a visualización de datos y a personalización de gráficos.

© Arcadis 2015 03 June 2019 21


Librería

Actualmente hay más de 10000 paquetes en el repositorio


de CRAN
© Arcadis 2015 03 June 2019 22
Práctica
• Instalar paquetes
• Probablemente algunos tengan errores, lo revisaremos después de la clase!
• Cargar librería

• Importar archivo Excel

• Primero abriremos RStudio!

© Arcadis 2015 03 June 2019 23


Manipulación de datos
Seleccionar columnas o filas

Filtrar

Melt

Group_by de dplyr

© Arcadis 2015 03 June 2019 24

Você também pode gostar