Análisis exploratorio de los datos

Luis Vargas (l.vargas@cgiar.org)

August 20, 2017

Análisis de datos, estadística descriptiva

Obtener los datos

library(readxl)
datCarr <- read_excel("./datos/VCarranza.xlsx", sheet = "Calculos_rendimiento_maiz")
names(datCarr)
##  [1] "Parcela"      "Labranza"     "Num_Trat"     "Num_Rep"     
##  [5] "AnchoArea"    "LongitudArea" "PGrano"       "PHumedo"     
##  [9] "PSeco"        "P200G"        "Area"         "%Humedad"    
## [13] "Rend_Seco"    "Rend_14% H2O" "Mil"          "granos/m2"

Algunas medidas para vectores

summary(datCarr$`Rend_14% H2O`)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    4713    5393    5745    5727    6126    6501
mean(datCarr$`Rend_14% H2O`)
## [1] 5727.167
min(datCarr$`Rend_14% H2O`)
## [1] 4712.799
max(datCarr$`Rend_14% H2O`)
## [1] 6501.389
median(datCarr$`Rend_14% H2O`) 
## [1] 5745.163
# sum(), length(), mean(x), median(x), min(x), max(x), quantile(x) ,sd(X),
# t.test(X), Student's t-test(X) ,var(X)                

Algunas medidas por grupos

# La función agrégate nos permite resumir por grupos
meanLab <- aggregate(`Rend_14% H2O` ~ Labranza, data = datCarr, FUN = mean)
meanLab
##       Labranza Rend_14% H2O
## 1        camas     5712.624
## 2 convencional     5763.525
meanTrat <- aggregate(`Rend_14% H2O` ~ Num_Trat, data = datCarr, FUN = mean)
meanTrat
##   Num_Trat Rend_14% H2O
## 1        1     6076.958
## 2        2     5450.093
## 3        3     5631.945
## 4        4     5899.283
## 5        5     5739.697
## 6        6     5399.637
## 7        7     5892.559

Sistemas para trazado de gráficos en R

Sistema base

Graficas sistema base

library(readxl)
datos <- read_excel("./datos/renUtiOax.xlsx", sheet = "datosRendimiento")
names(datos)
##  [1] "ID.de.la.bitácora"                                                             
##  [2] "ID.de.tipo.de.bitácora..clave.foránea."                                        
##  [3] "Tipo.de.parcela..testigo.o.innovación."                                        
##  [4] "Nombre.del.cultivo.cosechado"                                                  
##  [5] "Nombre.del.producto.de.interés.económico.obtenido"                             
##  [6] "Unidad.de.medida.de.rendimiento.para.el.producto.de.interés.económico.obtenido"
##  [7] "Uso.que.le.da.al.producto.de.interés.económico.obtenido"                       
##  [8] "Rendimiento..t.ha."                                                            
##  [9] "tipoProduccion"                                                                
## [10] "ID.de.la.parcela"                                                              
## [11] "Año"                                                                           
## [12] "Ciclo.agronómico"                                                              
## [13] "Estado"                                                                        
## [14] "Municipio"                                                                     
## [15] "Nombre.del.Hub"                                                                
## [16] "costos"                                                                        
## [17] "Ingresos"                                                                      
## [18] "utilidad"                                                                      
## [19] "Region"
plot(datos$Rendimiento..t.ha., datos$utilidad, main = "Scatterplot Example", xlab = "Rendimiento (t/ha) ", 
     ylab = "Utilidad ($/ha)", pch = 10)
# Agregar lineas de ajuste
abline(lm(datos$utilidad ~ datos$Rendimiento..t.ha.), col = "red") # Línea de regresión (y~x) 
lines(lowess(datos$Rendimiento..t.ha., datos$utilidad), col="blue") # Línea de regresión local (x,y)

Sistema Lattice

Graficas sistema Lattice

library(lattice)
xyplot(datos$Rendimiento..t.ha. ~ datos$utilidad | datos$Tipo.de.parcela..testigo.o.innovación.,
       main = "Scatterplot Example", xlab = "Rendimiento (t/ha) ", ylab = "Utilidad ($/ha)")

Sistema ggplot2

Graficas sistema ggplot2

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 3.3.3
grafica <- qplot(datos$Rendimiento..t.ha., datos$utilidad, main = "Scatterplot Example", xlab = "Rendimiento (t/ha) ", 
     ylab = "Utilidad ($/ha)")
grafica <- grafica + theme_bw()
grafica

Ejemplo con sistema base y ggplot2

Con el sistema base

library(readxl)
datCarr <- read_excel("./datos/VCarranza.xlsx", sheet = "Calculos_rendimiento_maiz")
names(datCarr)
##  [1] "Parcela"      "Labranza"     "Num_Trat"     "Num_Rep"     
##  [5] "AnchoArea"    "LongitudArea" "PGrano"       "PHumedo"     
##  [9] "PSeco"        "P200G"        "Area"         "%Humedad"    
## [13] "Rend_Seco"    "Rend_14% H2O" "Mil"          "granos/m2"
boxplot(datCarr$`Rend_14% H2O`, xlab = "Rendimiento", ylab = "t ha-1")

boxplot(datCarr$`Rend_14% H2O` ~ datCarr$Labranza, xlab = "Tratamiento", ylab = "Rendimiento 14% H2O(t ha-1)")

boxplot(datCarr$`Rend_14% H2O` ~ datCarr$Num_Trat, xlab = "Tratamiento", ylab = "Rendimiento 14% H2O(t ha-1)")

Mas parametros del sistema base

Con el sistema ggplot2

library(ggplot2)
library(plyr)
names(datCarr)
##  [1] "Parcela"      "Labranza"     "Num_Trat"     "Num_Rep"     
##  [5] "AnchoArea"    "LongitudArea" "PGrano"       "PHumedo"     
##  [9] "PSeco"        "P200G"        "Area"         "%Humedad"    
## [13] "Rend_Seco"    "Rend_14% H2O" "Mil"          "granos/m2"
ggplot(datCarr, aes(x = factor(Num_Trat), y = `Rend_14% H2O`, colour = Labranza)) + 
        geom_boxplot() + 
        theme_bw() + 
        labs(x = "Tratamientos", y = "Rendimiento 14% H2O(t ha-1)")

Mas parametros del sistema ggplot2

Recursos para graficas

R graph gallery

Quick R

R bloggers

Exploratory Data Analysis: Principles of Graphics

Graphical heuristics: Data-ink ratio (Edward Tufte)

Edward Tufte (2006). Beautiful Evidence, Graphics Press LLC. www.edwardtufte.com