chr <- c("árbol", "estepa", "ecosistema")
class(chr)
## [1] "character"
num <- c(1.2, 1.3, 2, 5)
class(num)
## [1] "numeric"
int <- c(3L, 200L)
class(int)
## [1] "integer"
factor <- as.factor(c("primera", "segunda", "tercera", "segunda", "azul"))
levels(factor)
## [1] "azul" "primera" "segunda" "tercera"
| Variable 1 | Variable 2 | Variable 3 | Variable 4 | |
|---|---|---|---|---|
| Observación 1 | Dato | Dato | Dato | Dato |
| Observación 2 | . | . | . | . |
| Observación 3 | . | . | . | . |
library(readxl)
datos <- read_xlsx("Libro2_7.xlsx")
str(datos)
## tibble[,6] [989 × 6] (S3: tbl_df/tbl/data.frame)
## $ especie : chr [1:989] "F. Cascara" "F. Rojo" "F. Rojo" "F. Cascara" ...
## $ proveedor : chr [1:989] "Dona Dora" "Bayer" "Don Francisco" "Don Francisco" ...
## $ finca : chr [1:989] "La colina" "La colina" "La colina" "Subidero" ...
## $ year : chr [1:989] "2020" "2019" "2018" "2019" ...
## $ Epoca : chr [1:989] "III" "I" "II" "II" ...
## $ rendimiento: num [1:989] 7660 5891 7750 7366 8413 ...
head(datos, n = 30)
Como las variables categoricas (de especie hasta época) estan en formato Caracter (chr), debemos cambiarlas a factor.
datos$especie <- as.factor(datos$especie)
datos$proveedor <- as.factor(datos$proveedor)
datos$finca <- as.factor(datos$finca)
datos$year <- as.factor(datos$year)
datos$Epoca <- as.factor(datos$Epoca)
str(datos)
## tibble[,6] [989 × 6] (S3: tbl_df/tbl/data.frame)
## $ especie : Factor w/ 4 levels "F. Cascara","F. Montano",..: 1 3 3 1 3 1 4 1 4 1 ...
## $ proveedor : Factor w/ 4 levels "Bayer","Don Francisco",..: 3 1 2 2 3 4 3 2 4 2 ...
## $ finca : Factor w/ 4 levels "El 45","La Clara",..: 3 3 3 4 1 3 4 4 4 3 ...
## $ year : Factor w/ 4 levels "2017","2018",..: 4 3 2 3 2 2 1 1 2 4 ...
## $ Epoca : Factor w/ 3 levels "I","II","III": 3 1 2 2 1 2 2 2 3 3 ...
## $ rendimiento: num [1:989] 7660 5891 7750 7366 8413 ...
Tapply funciona para hacer tablas resúmen, se utiliza de esta manera: tapply(rendimiento, variable, estadisticos de tendencia)
x <- datos$rendimiento
mean.sd <- function(x) c(media = mean(x),
sd = sd(x),
mediana = median(x))
tapply(x, datos$especie, mean.sd)
## $`F. Cascara`
## media sd mediana
## 7115.4548 849.1135 7005.8500
##
## $`F. Montano`
## media sd mediana
## 7703.8556 915.3816 7635.2000
##
## $`F. Rojo`
## media sd mediana
## 7144.4598 907.2394 7047.2500
##
## $`F. Verde`
## media sd mediana
## 7792.6424 877.1483 7682.0000
tapply(x, datos$proveedor, mean.sd)
## $Bayer
## media sd mediana
## 6645.6145 657.6747 6582.7000
##
## $`Don Francisco`
## media sd mediana
## 7429.6936 633.8042 7370.1500
##
## $`Dona Dora`
## media sd mediana
## 8591.2462 656.3892 8603.3500
##
## $Monsanto2
## media sd mediana
## 7121.0578 675.2124 7070.1000
tapply(x, datos$finca, mean.sd)
## $`El 45`
## media sd mediana
## 7274.2553 904.3673 7189.2000
##
## $`La Clara`
## media sd mediana
## 7035.1858 875.6387 6958.0000
##
## $`La colina`
## media sd mediana
## 7410.3714 925.3438 7340.4000
##
## $Subidero
## media sd mediana
## 7839.1000 850.1089 7796.3500
tapply(x, datos$year, mean.sd)
## $`2017`
## media sd mediana
## 7923.2114 866.7921 7814.5500
##
## $`2018`
## media sd mediana
## 7770.8282 826.0495 7635.2000
##
## $`2019`
## media sd mediana
## 7003.8993 823.3712 6938.5000
##
## $`2020`
## media sd mediana
## 6965.2255 818.0381 6842.1500
tapply(x, datos$Epoca, mean.sd)
## $I
## media sd mediana
## 7251.5240 919.3453 7094.3500
##
## $II
## media sd mediana
## 7782.3478 915.2799 7753.0000
##
## $III
## media sd mediana
## 7184.300 857.239 7043.300
a <- subset(datos, subset = especie == "F. Verde")
hist(a$rendimiento)
data.frame(media = mean(x), mediana = median(x), sd = sd(x))
library(dplyr)
library(ggplot2)
datos %>%
add_count(especie) %>%
mutate(n = n/n()*100) %>%
group_by(especie, n) %>%
summarise() %>%
rename("N" = n,
"Especie" = especie) %>%
ggplot(., aes(x = "", y = -N, fill = Especie)) +
geom_bar(stat = "identity", color = "black") +
coord_polar("y") + theme_void() +
ggtitle("Ciclograma: Aporte por especie") +
theme(plot.title = element_text(hjust = 0.5))