# Operaciones aritméticas básicas
5 + 7 # Suma
5 - 3 # Resta
5 * 7 # Multiplicación
5/3 # División
2^3 # Exponentes
# Logarítmos y exponenciales
x = 5/3
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
# 2) Asignaciín de valores a objetos o a variables
sitios <- 2 # Número de sitios = 2
sitios = 2 # Otra forma
n.sitios <- "dos" # Número de sitios como un caracter
dos.sitios <- TRUE # Objeto lógico
# Vectores
sitios <- c(2, 3, 2, 3) # Vector sitios
sitios # Imprimir el vector
sitios <- c("dos", "tres", "dos", "dos") # Vector como caracter
sitios
abundancia <- c(TRUE, FALSE, TRUE, TRUE) # vector con elementos lógicos
abundancia
# Vectores (continuación)
sitios <- c(2, 3, 2, 3) # Vector sitios
names(sitios) <- c("dos", "tres", "dos", "dos") # Nombres de los elementos
sitios <- c(dos= 2, tres= 3, dos= 2, dos= 2) # Otra forma
sitios
# Vectores (continuación)
sitios [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
# Matrices
Matriz <- matrix(c(1:15),5,3, byrow= FALSE) # 5,3: Número de filas y columnas
Matriz
# Matrices (continuación)
t(Matriz) # Transpuesta de la Matriz
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
# Base de datos (datos)
datos <- data.frame(
"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
datos # Ver asinación del data.frame
# 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
/page()
# 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 (datos)
datos = data.frame (meses = c("enero", "junio", "octubre"),
periodos = c("sequía", "lluvias1", "lluvias2"),
taxón1 = c(2, 1, 3),
taxón2 = c(20, 25, 30),
taxón3 = c(4, 4, 4))
datos # Ejecutar la asignación (datos)
# 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"
# Importar bases de datos como "datos1"
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"
# Importar archivo *.csv desde la web
datos2 <- read.csv2("https://javier-2712.github.io/Multivariados/Insectos.csv")
datos2 <- read_csv2("https://javier-2712.github.io/Multivariados/Insectos.csv")
/page()
datos1 <- read_excel(file.choose()) # paquete "readxl"
comando gather
para visualizar bases de datos
alargadas
comando spread
para visualizar bases de datos a lo
ancho
comando %>%
tuberías o pippelines.
# Base de datos alargada (datos.l)
datos.l <- datos %>%
gather(key= Columnas, value= Valores)
datos.l
# Excluir la columna periodo en formato alargado (-periodos)
datos.l <- datos %>%
gather(key= columnas, value= valores, -periodos)
datos.l
# Base de datos para 4 estudiantes (con 4 replicas)
# a los que se les midieron dos variables en cuatro ocasiones.
datos <- data.frame(n= 1:16,
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
# Fitrado por sexos "f" y "m"
datos.f <- datos %>% filter(Sexo == "f")
datos.f # Base de datos para mujeres
datos.h <- datos %>% filter(Sexo == "m")
datos.h # Base de datos para hombres
# Fitrado por sexos y estudiantes "f" y "m"
datos.a <- 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
# Filtrando en orden descendente y ascendente
datos.des <- datos %>% arrange(desc(Variable1))
datos.des # Variable asignada
datos.asc <- datos %>% arrange(Variable1)
datos.asc # Variable asignada
# Filtrar mujeres en orden descendente.
datos.des.f <- datos %>%
filter(Sexo == "f") %>%
arrange(desc(Variable1))
datos.des.f # Asignación
# Insertar nuevas variables (mutate)
datos.3 <- datos %>%
mutate(Variable3 = Variable1 * Variable2)
datos.3 # Asignación
# Combinación de funciones (filter, mutate, arrange)
datos.4 <- datos %>%
filter (Sexo == "f") %>%
mutate (Variable3 = Variable2 * 12) %>%
arrange (desc(Variable3))
datos.4 # Asignación
# Combinación de funciones (filter, mutate, arrange)
datos.4 <- datos %>%
filter (Sexo == "f", Estudiante == "b") %>%
mutate (Variable3 = Variable2 * 12) %>%
arrange (desc(Variable3))
datos.4
Filter
Arrange
Mutate
Pipeline
summarize
group_by
mutate
filter
select
joins
summarize
group_by
mutate
filter
select
Ejemplo de los censos
spread