# Operaciones aritméticas básicas
5 + 7 # Suma
5 - 3 # Resta
5 * 7 # Multiplicación
5/3 # División
2^3 # Exponentes
Resumen de las actividades
El presente taller tiene como objetivo, realizar un entrenamiento básico, sobre los aspectos más relevantes en el manejo del programa RStudio, el cual se encuentra alojado en el siguiente 📈enlace.
Se utilizará como referente al capitulo 2 del libro Análisis de datos ecológicos y ambientales (Rodríguez-Barrios, J. 2023), alojado en el siguiente enlace 📖Enlace_Libro
Actividad 1. Operaciones básicas en RStudio
Descargar el script de RMarkDown (rmd) titulado “Taller2.1.Rmd” en el siguiente enlace 📈Taller2.1.Rmd.
Crear una carpeta en su computador titulada “Taller2.1_IntroRStudio” y guardar el archivo descargado junto con el resto de materiales que se describen a continuación.
Abrir el archivo “Taller2.1.Rmd” y abrir el siguiente enlace, correspondiente al ejercicio a realizar 📈Taller1.IntroRStudio.
Revisar los siguientes enlaces complementarios:
Actividad 2. Importación y Exportación de datos
[
Continuar en el el archivo “Taller1.Rmd” y en las diapositivas Taller1.IntroRStudio.
Realizar los siguientes procedimientos
- Revisar os siguientes enlaces
Taller 1. Introducción a R y a Tidyverse
R como calculadora
# Logarítmos y exponenciales
= 5/3
x log2(x) # Logarítmo en base 2 de x
log10(x) # Logarítmo en base 10 de x
exp(x) # Exponencial de x
# Funciones trigonométricas :
cos(x) # Coseno de x
sin(x) # Seno de x
tan(x) # Tangente de x
Asignaciones
# 2) Asignaciín de valores a objetos o a variables
<- 2 # Número de sitios = 2
sitios = 2 # Otra forma
sitios <- "dos" # Número de sitios como un caracter
n.sitios <- TRUE # Objeto lógico dos.sitios
Algebra
# Vectores
<- c(2, 3, 2, 3) # Vector sitios
sitios # Imprimir el vector
sitios
<- c("dos", "tres", "dos", "dos") # Vector como caracter
sitios
sitios
<- c(TRUE, FALSE, TRUE, TRUE) # vector con elementos lógicos
abundancia abundancia
# Vectores (continuación)
<- c(2, 3, 2, 3) # Vector sitios
sitios names(sitios) <- c("dos", "tres", "dos", "dos") # Nombres de los elementos
<- c(dos= 2, tres= 3, dos= 2, dos= 2) # Otra forma
sitios sitios
# Vectores (continuación)
1:3] # Tres primeros elementos del vector sitios
sitios [c(1,4)] # Primer y cuarto elemento del vector
sitios[-1] # Eliminar el primer elemento del vector sitios [
# Matrices
<- matrix(c(1:15),5,3, byrow= FALSE) # 5,3: Número de filas y columnas
Matriz Matriz
# Matrices (continuación)
t(Matriz) # Transpuesta de la Matriz
2,] # Ver la segunda fila (coma a la derecha del dato)
Matriz[2] # Ver la segunda columna (coma a la izquierda del dato)
Matriz[,2:4,] # Filas 2 a la 4
Matriz[c(2,4),] # Filas 2 y 4
Matriz[# Valores de la fila 3 y de las columnas 1:3
Matriz[ ... ] # Excluye a la 3a fila Matriz[ ... ]
Bases de datos (data.frames - cbind)
# Base de datos (datos)
<- data.frame(
datos "n" = 1:4, # filas
"indiv." = c("a", "b", "c", "d"), # Individuos
"sexo" = c("f","f","m","m"), # Sexo
"variable" = c(1.2, 3.4, 4.5, 5.6)) # Valor de la variable
# Ver asinación del data.frame datos
# Base de datos (continuación)
head(datos) # Muestra las primeras filas
names(datos) # Nombres de las columnas
str(datos) # Estructura de la base de datos
t(datos) # Transpuesta de la base de datos
Enlaces de operaiciones en R
/page()
Importar y exportar bases de datos (read y write)
Complementos requeridos
# Librerías requeridas
library(tidyverse)
library(xtable) # Importar y exportar
library(openxlsx) # exportar "*.xlsx"
library(readxl) # Importar y exportar
library(xlsx) # Importar y exportar "*.xlsx"
Base de datos del ejercicio
# Base de datos (datos)
= data.frame (meses = c("enero", "junio", "octubre"),
datos periodos = c("sequía", "lluvias1", "lluvias2"),
= c(2, 1, 3),
taxón1 = c(20, 25, 30),
taxón2 = c(4, 4, 4))
taxón3
# Ejecutar la asignación (datos) datos
Exportación
# Exportar bases de datos como "datos1"
write.csv2(datos, "datos1.csv") # paquete "utils"
write_csv2(datos, "datos1.csv") # paquete "readxl"
write.xlsx(datos, "datos1.xlsx") # paquete "openxlsx" y "xlsx"
Importación
# Importar bases de datos como "datos1"
<- read.csv2("datos1.csv", row.names = 1) # paquete "utils"
datos1 <- read.csv2(file.choose(), row.names = 1) # paquete "utils"
datos1
<- read_csv2("datos1.csv") # paquete "readxl"
datos1 <- read_csv2(file.choose()) # paquete "readxl"
datos1
<- read_excel("datos1.xlsx") # paquete "readxl"
datos1 <- read_excel(file.choose()) # paquete "readxl"
datos1
<- read.xlsx("datos1.xlsx") # paquete "openxlsx"
datos1 <- read.xlsx(file.choose()) # paquete "openxlsx" datos1
Importación desde internet
# Importar archivo *.csv desde la web
<- read.csv2("https://javier-2712.github.io/Multivariados/Insectos.csv")
datos2
<- read_csv2("https://javier-2712.github.io/Multivariados/Insectos.csv") datos2
Enlaces de importación y Exportación de datos
/page()
Introductorio a Tidyverse
Continuar en el el archivo “Taller1.Rmd” y en las diapositivas Taller1.IntroRStudio.
Revisar los siguientes enlaces
Importar la base de datos (datos)
<- read_excel(file.choose()) # paquete "readxl" datos1
Manipulación de los datos enlace
comando
gather
para visualizar bases de datos alargadascomando
spread
para visualizar bases de datos a lo anchocomando
%>%
tuberías o pippelines.
# Base de datos alargada (datos.l)
<- datos %>%
datos.l gather(key= Columnas, value= Valores)
datos.l
# Excluir la columna periodo en formato alargado (-periodos)
<- datos %>%
datos.l gather(key= columnas, value= valores, -periodos)
datos.l
Nueva base de datos con factor
# Base de datos para 4 estudiantes (con 4 replicas)
# a los que se les midieron dos variables en cuatro ocasiones.
<- data.frame(n= 1:16,
datos Estudiante= c("a","a","a","a","b","b","b","b",
"c","c","c","c", "d","d","d","d"),
Sexo= c("f","f","f","f","f","f","f","f",
"m","m","m","m","m","m","m","m"),
Variable1= c(1.2,3.4,4.5,5.6,1.2,3.4,4.5,5.6,
0.8,2.4,1.8,1.5,1.6,2.1,1.2,0.8),
Variable2= c(2.4,6.8,9.0,11.2,2.4,6.8,9.0,11.2,
1.6,4.8,3.6,3.0,3.2,4.2,2.4,1.6))
datos
Filtrando elementos del dataframe (filter)
# Fitrado por sexos "f" y "m"
<- datos %>% filter(Sexo == "f")
datos.f # Base de datos para mujeres
datos.f
<- datos %>% filter(Sexo == "m")
datos.h # Base de datos para hombres datos.h
# Fitrado por sexos y estudiantes "f" y "m"
<- datos %>% filter(Sexo =="f", Estudiante =="a")
datos.a # Datos de la estudiante a
datos.a
<- datos.f %>% filter(Estudiante =="a")
datos.a # Datos de la estudiante a datos.a
Filtrando en orden descendente o ascendente (arrange)
# Filtrando en orden descendente y ascendente
<- datos %>% arrange(desc(Variable1))
datos.des # Variable asignada
datos.des
<- datos %>% arrange(Variable1)
datos.asc # Variable asignada datos.asc
Combinación de filtrado y orden (filter + arrange)
# Filtrar mujeres en orden descendente.
<- datos %>%
datos.des.f filter(Sexo == "f") %>%
arrange(desc(Variable1))
# Asignación datos.des.f
Generación de variables derivadas (arrange)
# Insertar nuevas variables (mutate)
.3 <- datos %>%
datosmutate(Variable3 = Variable1 * Variable2)
.3 # Asignación datos
Combinación de filtrado, nuevas variables y orden (filter + mutate + arrange)
# Combinación de funciones (filter, mutate, arrange)
.4 <- datos %>%
datosfilter (Sexo == "f") %>%
mutate (Variable3 = Variable2 * 12) %>%
arrange (desc(Variable3))
.4 # Asignación datos
# Combinación de funciones (filter, mutate, arrange)
.4 <- datos %>%
datosfilter (Sexo == "f", Estudiante == "b") %>%
mutate (Variable3 = Variable2 * 12) %>%
arrange (desc(Variable3))
.4 datos
Enlaces de operaiciones en Tidyverse
/page()
Taller práctico para la casa
- Realizar los ejemplos del siguiente enlace, utilizando las siguientes opciones de tidyverse:
Filter
Arrange
Mutate
- Realizar los ejemplos del siguiente enlace, utilizando las siguientes opciones de tidyverse:
Pipeline
summarize
group_by
mutate
filter
select
joins
- Realizar los ejemplos del siguiente enlace, utilizando las siguientes opciones de tidyverse:
summarize
group_by
mutate
filter
select
- Realizar los ejemplos del siguiente enlace, utilizando las siguientes opciones de tidyverse:
Ejemplo de los censos
spread