library(knitr)
opts_chunk$set(cache = FALSE,
               tidy = FALSE,
               fig.width = 8,
               fig.height = 8,
               fig.align = "center",
               eval.after= "fig.cap",
               message = FALSE,
               error = FALSE,
               warning = FALSE,
               dpi = 96,
               dev = "png",
               warning = FALSE,
               dev.args = list(family = "Palatino"))
options(width = 68)

#-----------------------------------------------------------------------
# Fazer análise exploratória.

setwd("~/Dropbox/Consultorias/Milson Serafim/faixa-otima")

rm(list = ls())
load(file = "high_soybean.RData")
str(high_soybean)
## List of 3
##  $ atrib:'data.frame':   390 obs. of  38 variables:
##   ..$ faz  : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal  : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam  : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt  : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ prod : num [1:390] 3.89 NA NA NA NA ...
##   ..$ glic : num [1:390] 65 NA NA NA NA NA 76.2 NA NA NA ...
##   ..$ phos : num [1:390] 192 NA NA NA NA ...
##   ..$ sulf : num [1:390] 74.4 NA NA NA NA NA 74 NA NA NA ...
##   ..$ LFF  : num [1:390] 14.4 NA NA NA NA ...
##   ..$ LFO  : num [1:390] 6.21 NA NA NA NA NA 3.1 NA NA NA ...
##   ..$ HF   : num [1:390] 22.6 NA NA NA NA ...
##   ..$ rp   : num [1:390] 2.09 1.75 2.39 2.9 2.35 1.14 0.54 1.26 0.94 2.65 ...
##   ..$ dens : num [1:390] 1.23 1.19 1.28 1.3 1.23 1.2 1.01 1.08 1.15 1.24 ...
##   ..$ poro : num [1:390] 0.53 0.54 0.53 0.52 0.5 0.51 0.61 0.59 0.57 0.53 ...
##   ..$ clay : int [1:390] 653 NA 725 NA 775 NA 644 NA 724 NA ...
##   ..$ sand : int [1:390] 162 NA 139 NA 120 NA 175 NA 138 NA ...
##   ..$ pH   : num [1:390] 6.2 NA 5.3 NA 5.1 NA 6.1 NA 5.2 NA ...
##   ..$ pH_Ca: num [1:390] 5.4 NA 4.5 NA 4.4 NA 5.2 NA 4.5 NA ...
##   ..$ P    : num [1:390] 16.4 NA 2.1 NA 0.9 NA 14.4 NA 1.7 NA ...
##   ..$ K    : num [1:390] 97.3 NA 76.9 NA 67.7 NA 78.6 NA 25.6 NA ...
##   ..$ Ca_Mg: num [1:390] 5.5 NA 2.1 NA 1.1 NA 5.1 NA 1.8 NA ...
##   ..$ Ca   : num [1:390] 4 NA 1.5 NA 0.8 NA 3.7 NA 1.3 NA ...
##   ..$ Mg   : num [1:390] 1.5 NA 0.6 NA 0.3 NA 1.4 NA 0.5 NA ...
##   ..$ Al   : num [1:390] 0 NA 0.4 NA 0.5 NA 0 NA 0.4 NA ...
##   ..$ MO   : num [1:390] 43.3 NA 31.2 NA 21.3 NA 44.5 NA 29.5 NA ...
##   ..$ base : num [1:390] 5.75 NA 2.3 NA 1.27 NA 5.3 NA 1.87 NA ...
##   ..$ CTC  : num [1:390] 10.15 NA 7.6 NA 5.77 ...
##   ..$ V    : num [1:390] 56.6 NA 30.2 NA 22.1 ...
##   ..$ CaMg : num [1:390] 2.67 NA 2.5 NA 2.67 NA 2.64 NA 2.6 NA ...
##   ..$ CaK  : num [1:390] 16.03 NA 7.61 NA 4.61 ...
##   ..$ MgK  : num [1:390] 6.01 NA 3.04 NA 1.73 NA 6.95 NA 7.62 NA ...
##   ..$ Ca_  : num [1:390] 39.4 NA 19.7 NA 13.9 NA 36.6 NA 17.9 NA ...
##   ..$ Mg_  : num [1:390] 14.8 NA 7.9 NA 5.2 NA 13.9 NA 6.9 NA ...
##   ..$ K_   : num [1:390] 2.5 NA 2.6 NA 3 NA 2 NA 0.9 NA ...
##   ..$ H_   : num [1:390] 43.4 NA 64.5 NA 69.3 NA 47.5 NA 68.8 NA ...
##   ..$ m_   : num [1:390] 0 NA 14.8 NA 28.2 NA 0 NA 17.7 NA ...
##   ..$ S    : num [1:390] 21.1 NA 33.9 NA 56 NA 10.8 NA 32.7 NA ...
##   ..$ dp   : num [1:390] 2.59 2.59 2.73 2.73 2.45 2.45 2.63 2.63 2.65 2.65 ...
##  $ swrc :'data.frame':   390 obs. of  15 variables:
##   ..$ faz  : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal  : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam  : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt  : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ S0   : num [1:390] 0.54 0.53 0.49 0.5 0.52 0.53 0.56 0.56 0.55 0.5 ...
##   ..$ S1   : num [1:390] 0.52 0.5 0.45 0.48 0.49 0.49 0.53 0.54 0.5 0.49 ...
##   ..$ S2   : num [1:390] 0.49 0.48 0.44 0.47 0.48 0.49 0.46 0.5 0.49 0.48 ...
##   ..$ S4   : num [1:390] 0.46 0.46 0.44 0.45 0.47 0.49 0.41 0.46 0.45 0.47 ...
##   ..$ S6   : num [1:390] 0.45 0.44 0.43 0.44 0.45 0.47 0.39 0.44 0.44 0.45 ...
##   ..$ S8   : num [1:390] 0.44 0.43 0.42 0.43 0.44 0.46 0.38 0.43 0.43 0.45 ...
##   ..$ S10  : num [1:390] 0.44 0.42 0.41 0.42 0.43 0.45 0.36 0.43 0.43 0.44 ...
##   ..$ S33  : num [1:390] 0.39 0.38 0.37 0.37 0.36 0.35 0.32 0.39 0.38 0.38 ...
##   ..$ S66  : num [1:390] 0.36 0.37 0.36 0.36 0.35 0.34 0.29 0.33 0.37 0.35 ...
##   ..$ S300 : num [1:390] 0.37 0.34 0.32 0.33 0.32 0.31 0.28 0.32 0.33 0.33 ...
##   ..$ S1500: num [1:390] 0.273 0.273 0.288 0.288 0.291 0.291 0.265 0.265 0.327 0.327 ...
##  $ fract:'data.frame':   390 obs. of  10 variables:
##   ..$ faz         : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal         : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam         : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt         : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ lightfree   : num [1:390] 14.4 NA NA NA NA ...
##   ..$ filter1     : num [1:390] 0.13 NA NA NA NA ...
##   ..$ filterC1    : num [1:390] 0.274 NA NA NA NA ...
##   ..$ lightocluded: num [1:390] 6.21 NA NA NA NA NA 3.1 NA NA NA ...
##   ..$ filter2     : num [1:390] 0.128 NA NA NA NA ...
##   ..$ filterC2    : num [1:390] 0.19 NA NA NA NA ...
library(reshape2)
library(data.table)

#-----------------------------------------------------------------------
# Curvas de retenção.

swrc <- high_soybean$swrc
swrc <- as.data.table(swrc)
str(swrc)
## Classes 'data.table' and 'data.frame':   390 obs. of  15 variables:
##  $ faz  : chr  "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##  $ tal  : chr  "AG2" "AG2" "AG2" "AG2" ...
##  $ cam  : chr  "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##  $ rpt  : int  1 2 1 2 1 2 1 2 1 2 ...
##  $ S0   : num  0.54 0.53 0.49 0.5 0.52 0.53 0.56 0.56 0.55 0.5 ...
##  $ S1   : num  0.52 0.5 0.45 0.48 0.49 0.49 0.53 0.54 0.5 0.49 ...
##  $ S2   : num  0.49 0.48 0.44 0.47 0.48 0.49 0.46 0.5 0.49 0.48 ...
##  $ S4   : num  0.46 0.46 0.44 0.45 0.47 0.49 0.41 0.46 0.45 0.47 ...
##  $ S6   : num  0.45 0.44 0.43 0.44 0.45 0.47 0.39 0.44 0.44 0.45 ...
##  $ S8   : num  0.44 0.43 0.42 0.43 0.44 0.46 0.38 0.43 0.43 0.45 ...
##  $ S10  : num  0.44 0.42 0.41 0.42 0.43 0.45 0.36 0.43 0.43 0.44 ...
##  $ S33  : num  0.39 0.38 0.37 0.37 0.36 0.35 0.32 0.39 0.38 0.38 ...
##  $ S66  : num  0.36 0.37 0.36 0.36 0.35 0.34 0.29 0.33 0.37 0.35 ...
##  $ S300 : num  0.37 0.34 0.32 0.33 0.32 0.31 0.28 0.32 0.33 0.33 ...
##  $ S1500: num  0.273 0.273 0.288 0.288 0.291 0.291 0.265 0.265 0.327 0.327 ...
##  - attr(*, ".internal.selfref")=<externalptr>
class(swrc)
## [1] "data.table" "data.frame"
methods(class = "data.table")
##  [1] all.equal     anyDuplicated as.data.frame as.data.table
##  [5] as.list       as.matrix     coerce        coerce<-     
##  [9] [<-           [[<-          $<-           [            
## [13] dcast         dim           dimnames<-    dimnames     
## [17] duplicated    format        head          initialize   
## [21] is.na         melt          merge         names<-      
## [25] na.omit       Ops           print         show         
## [29] slotsFromS3   split         subset        tail         
## [33] transform     unique        within       
## see '?methods' for accessing help and source code
swrc
##                faz  tal     cam rpt   S0   S1   S2   S4   S6   S8
##   1: FAZ. ARGEMIRA  AG2   0-0.1   1 0.54 0.52 0.49 0.46 0.45 0.44
##   2: FAZ. ARGEMIRA  AG2   0-0.1   2 0.53 0.50 0.48 0.46 0.44 0.43
##   3: FAZ. ARGEMIRA  AG2 0.1-0.2   1 0.49 0.45 0.44 0.44 0.43 0.42
##   4: FAZ. ARGEMIRA  AG2 0.1-0.2   2 0.50 0.48 0.47 0.45 0.44 0.43
##   5: FAZ. ARGEMIRA  AG2 0.2-0.4   1 0.52 0.49 0.48 0.47 0.45 0.44
##  ---                                                             
## 386:   FAZ. SUCURI SU20   0-0.1   2 0.50 0.45 0.42 0.34 0.30 0.28
## 387:   FAZ. SUCURI SU20 0.1-0.2   1 0.34 0.32 0.30 0.28 0.26 0.26
## 388:   FAZ. SUCURI SU20 0.1-0.2   2 0.34 0.31 0.30 0.28 0.25 0.24
## 389:   FAZ. SUCURI SU20 0.2-0.4   1 0.38 0.34 0.33 0.31 0.27 0.25
## 390:   FAZ. SUCURI SU20 0.2-0.4   2 0.27 0.26 0.26 0.26 0.26 0.25
##       S10  S33  S66 S300 S1500
##   1: 0.44 0.39 0.36 0.37 0.273
##   2: 0.42 0.38 0.37 0.34 0.273
##   3: 0.41 0.37 0.36 0.32 0.288
##   4: 0.42 0.37 0.36 0.33 0.288
##   5: 0.43 0.36 0.35 0.32 0.291
##  ---                          
## 386: 0.27 0.22 0.21 0.21 0.124
## 387: 0.25 0.20 0.19 0.17 0.138
## 388: 0.23 0.19 0.19 0.16 0.138
## 389: 0.25 0.20 0.19 0.17 0.151
## 390: 0.25 0.21 0.19 0.17 0.151
swrc <- melt(data = swrc, id.vars = 1:4)
names(swrc)[ncol(swrc) - 1:0] <- c("tens", "umid")

swrc$tens <- as.numeric(sub("S", "", as.character(swrc$tens)))

swrc <- subset(swrc, umid > 0 & umid < 0.95)

unique(swrc$tens)    # R-ônico.
##  [1]    0    1    2    4    6    8   10   33   66  300 1500
swrc[, unique(tens)] # DT-ônico.
##  [1]    0    1    2    4    6    8   10   33   66  300 1500
# swrc$tens[swrc$tens == 0] <- 0.1 # R-ônico
swrc[tens == 0, tens := 0.1]      # DT-ônico.
swrc[, unique(tens)]
##  [1]    0.1    1.0    2.0    4.0    6.0    8.0   10.0   33.0   66.0
## [10]  300.0 1500.0
#-----------------------------------------------------------------------
# Pacotes.

library(ggplot2)
library(lattice)
library(latticeExtra)
#-----------------------------------------------------------------------

xyplot(umid ~ tens | tal,
       data = swrc,
       groups = cam,
       xlab = "Tensão",
       ylab = "Umidade",
       type = c("p", "a"),
       scales = list(x = list(log = 10)),
       ylim = c(0, 1),
       auto.key = list(space = "top", columns = 3),
       as.table = TRUE)

ggplot(data = swrc,
       mapping = aes(x = tens, y = umid, color = cam)) +
    xlab(label = "Tensão") +
    ylab(label = "Umidade") +
    geom_point() +
    stat_summary(fun.y = mean, geom = "line") +
    scale_x_log10() +
    scale_y_continuous(limits = c(0, 1)) +
    facet_wrap(facets = ~tal) +
    theme(legend.position = "top")

#-----------------------------------------------------------------------
# Exploratória dos dados de química e física.

str(high_soybean)
## List of 3
##  $ atrib:'data.frame':   390 obs. of  38 variables:
##   ..$ faz  : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal  : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam  : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt  : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ prod : num [1:390] 3.89 NA NA NA NA ...
##   ..$ glic : num [1:390] 65 NA NA NA NA NA 76.2 NA NA NA ...
##   ..$ phos : num [1:390] 192 NA NA NA NA ...
##   ..$ sulf : num [1:390] 74.4 NA NA NA NA NA 74 NA NA NA ...
##   ..$ LFF  : num [1:390] 14.4 NA NA NA NA ...
##   ..$ LFO  : num [1:390] 6.21 NA NA NA NA NA 3.1 NA NA NA ...
##   ..$ HF   : num [1:390] 22.6 NA NA NA NA ...
##   ..$ rp   : num [1:390] 2.09 1.75 2.39 2.9 2.35 1.14 0.54 1.26 0.94 2.65 ...
##   ..$ dens : num [1:390] 1.23 1.19 1.28 1.3 1.23 1.2 1.01 1.08 1.15 1.24 ...
##   ..$ poro : num [1:390] 0.53 0.54 0.53 0.52 0.5 0.51 0.61 0.59 0.57 0.53 ...
##   ..$ clay : int [1:390] 653 NA 725 NA 775 NA 644 NA 724 NA ...
##   ..$ sand : int [1:390] 162 NA 139 NA 120 NA 175 NA 138 NA ...
##   ..$ pH   : num [1:390] 6.2 NA 5.3 NA 5.1 NA 6.1 NA 5.2 NA ...
##   ..$ pH_Ca: num [1:390] 5.4 NA 4.5 NA 4.4 NA 5.2 NA 4.5 NA ...
##   ..$ P    : num [1:390] 16.4 NA 2.1 NA 0.9 NA 14.4 NA 1.7 NA ...
##   ..$ K    : num [1:390] 97.3 NA 76.9 NA 67.7 NA 78.6 NA 25.6 NA ...
##   ..$ Ca_Mg: num [1:390] 5.5 NA 2.1 NA 1.1 NA 5.1 NA 1.8 NA ...
##   ..$ Ca   : num [1:390] 4 NA 1.5 NA 0.8 NA 3.7 NA 1.3 NA ...
##   ..$ Mg   : num [1:390] 1.5 NA 0.6 NA 0.3 NA 1.4 NA 0.5 NA ...
##   ..$ Al   : num [1:390] 0 NA 0.4 NA 0.5 NA 0 NA 0.4 NA ...
##   ..$ MO   : num [1:390] 43.3 NA 31.2 NA 21.3 NA 44.5 NA 29.5 NA ...
##   ..$ base : num [1:390] 5.75 NA 2.3 NA 1.27 NA 5.3 NA 1.87 NA ...
##   ..$ CTC  : num [1:390] 10.15 NA 7.6 NA 5.77 ...
##   ..$ V    : num [1:390] 56.6 NA 30.2 NA 22.1 ...
##   ..$ CaMg : num [1:390] 2.67 NA 2.5 NA 2.67 NA 2.64 NA 2.6 NA ...
##   ..$ CaK  : num [1:390] 16.03 NA 7.61 NA 4.61 ...
##   ..$ MgK  : num [1:390] 6.01 NA 3.04 NA 1.73 NA 6.95 NA 7.62 NA ...
##   ..$ Ca_  : num [1:390] 39.4 NA 19.7 NA 13.9 NA 36.6 NA 17.9 NA ...
##   ..$ Mg_  : num [1:390] 14.8 NA 7.9 NA 5.2 NA 13.9 NA 6.9 NA ...
##   ..$ K_   : num [1:390] 2.5 NA 2.6 NA 3 NA 2 NA 0.9 NA ...
##   ..$ H_   : num [1:390] 43.4 NA 64.5 NA 69.3 NA 47.5 NA 68.8 NA ...
##   ..$ m_   : num [1:390] 0 NA 14.8 NA 28.2 NA 0 NA 17.7 NA ...
##   ..$ S    : num [1:390] 21.1 NA 33.9 NA 56 NA 10.8 NA 32.7 NA ...
##   ..$ dp   : num [1:390] 2.59 2.59 2.73 2.73 2.45 2.45 2.63 2.63 2.65 2.65 ...
##  $ swrc :'data.frame':   390 obs. of  15 variables:
##   ..$ faz  : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal  : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam  : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt  : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ S0   : num [1:390] 0.54 0.53 0.49 0.5 0.52 0.53 0.56 0.56 0.55 0.5 ...
##   ..$ S1   : num [1:390] 0.52 0.5 0.45 0.48 0.49 0.49 0.53 0.54 0.5 0.49 ...
##   ..$ S2   : num [1:390] 0.49 0.48 0.44 0.47 0.48 0.49 0.46 0.5 0.49 0.48 ...
##   ..$ S4   : num [1:390] 0.46 0.46 0.44 0.45 0.47 0.49 0.41 0.46 0.45 0.47 ...
##   ..$ S6   : num [1:390] 0.45 0.44 0.43 0.44 0.45 0.47 0.39 0.44 0.44 0.45 ...
##   ..$ S8   : num [1:390] 0.44 0.43 0.42 0.43 0.44 0.46 0.38 0.43 0.43 0.45 ...
##   ..$ S10  : num [1:390] 0.44 0.42 0.41 0.42 0.43 0.45 0.36 0.43 0.43 0.44 ...
##   ..$ S33  : num [1:390] 0.39 0.38 0.37 0.37 0.36 0.35 0.32 0.39 0.38 0.38 ...
##   ..$ S66  : num [1:390] 0.36 0.37 0.36 0.36 0.35 0.34 0.29 0.33 0.37 0.35 ...
##   ..$ S300 : num [1:390] 0.37 0.34 0.32 0.33 0.32 0.31 0.28 0.32 0.33 0.33 ...
##   ..$ S1500: num [1:390] 0.273 0.273 0.288 0.288 0.291 0.291 0.265 0.265 0.327 0.327 ...
##  $ fract:'data.frame':   390 obs. of  10 variables:
##   ..$ faz         : chr [1:390] "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" "FAZ. ARGEMIRA" ...
##   ..$ tal         : chr [1:390] "AG2" "AG2" "AG2" "AG2" ...
##   ..$ cam         : chr [1:390] "0-0.1" "0-0.1" "0.1-0.2" "0.1-0.2" ...
##   ..$ rpt         : int [1:390] 1 2 1 2 1 2 1 2 1 2 ...
##   ..$ lightfree   : num [1:390] 14.4 NA NA NA NA ...
##   ..$ filter1     : num [1:390] 0.13 NA NA NA NA ...
##   ..$ filterC1    : num [1:390] 0.274 NA NA NA NA ...
##   ..$ lightocluded: num [1:390] 6.21 NA NA NA NA NA 3.1 NA NA NA ...
##   ..$ filter2     : num [1:390] 0.128 NA NA NA NA ...
##   ..$ filterC2    : num [1:390] 0.19 NA NA NA NA ...
atrib <- as.data.table(high_soybean$atrib)
atrib <- transform(atrib,
                   cam = factor(cam),
                   tal = factor(tal),
                   faz = factor(faz))

fivenum(atrib$prod)
## [1] 3.226 3.930 4.128 4.343 4.974
bk <- seq(from = 3.2, to = 5, by = 0.1)

histogram(~prod,
          data = atrib,
          breaks = bk,
          type = "density",
          xlab = "Produção",
          ylab = "Densidade")

ggplot(data = atrib,
       mapping = aes(x = prod,
                     y = ..density..,
                     color = I("black"))) +
    xlab(label = "Produção") +
    ylab(label = "Densidade") +
    geom_histogram(breaks = bk)

densityplot(~prod,
            data = atrib,
            plot.points = "rug",
            xlab = "Produção",
            ylab = "Densidade")

ggplot(data = atrib,
       mapping = aes(x = prod,
                     color = I("black"))) +
    xlab(label = "Produção") +
    ylab(label = "Densidade") +
    geom_density() +
    geom_rug()

#-----------------------------------------------------------------------

# A variável resposta e todas as variáveis preditoras.
m <- tail(names(atrib), n = -4)
m
##  [1] "prod"  "glic"  "phos"  "sulf"  "LFF"   "LFO"   "HF"    "rp"   
##  [9] "dens"  "poro"  "clay"  "sand"  "pH"    "pH_Ca" "P"     "K"    
## [17] "Ca_Mg" "Ca"    "Mg"    "Al"    "MO"    "base"  "CTC"   "V"    
## [25] "CaMg"  "CaK"   "MgK"   "Ca_"   "Mg_"   "K_"    "H_"    "m_"   
## [33] "S"     "dp"
atrib2 <- melt(data = atrib, measure.vars = m)
str(atrib2)
## Classes 'data.table' and 'data.frame':   13260 obs. of  6 variables:
##  $ faz     : Factor w/ 14 levels "FAZ. ARGEMIRA",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ tal     : Factor w/ 65 levels "AG10","AG2","AG3",..: 2 2 2 2 2 2 3 3 3 3 ...
##  $ cam     : Factor w/ 3 levels "0-0.1","0.1-0.2",..: 1 1 2 2 3 3 1 1 2 2 ...
##  $ rpt     : int  1 2 1 2 1 2 1 2 1 2 ...
##  $ variable: Factor w/ 34 levels "prod","glic",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ value   : num  3.89 NA NA NA NA ...
##  - attr(*, ".internal.selfref")=<externalptr>
atrib2 <- atrib2[!is.na(value)]

# densityplot(~value | variable,
#             groups = cam,
#             data = atrib2,
#             scales = "free",
#             auto.key = list(columns = 3),
#             as.table = TRUE) +
#     glayer({
#         mx <- mean(x)
#         dens <- density(x)
#         fx <- approxfun(x = dens$x, y = dens$y)
#         hy <- fx(mx)
#         panel.segments(x0 = mx,
#                        x1 = mx,
#                        y0 = 0,
#                        y1 = hy,
#                        col = col.line)
#     })

# Todas as variáveis juntas.
bwplot(value ~ cam | variable,
       data = atrib2,
       scales = "free",
       as.table = TRUE,
       # panel = panel.violin,
       par.settings = list(
           plot.symbol = list(col = 1),
           box.dot = list(col = 1, pch = "|"),
           box.umbrella = list(col = 1, lty = 1),
           box.rectangle = list(col = 1, fill = c("gray70")))) +
    layer({
        panel.xyplot(x = x, y = y, type = "a", col = 1)
    })

#-----------------------------------------------------------------------
# Desempilhar para combinar variável com camada.

str(atrib2)
## Classes 'data.table' and 'data.frame':   6466 obs. of  6 variables:
##  $ faz     : Factor w/ 14 levels "FAZ. ARGEMIRA",..: 1 1 1 1 1 1 1 1 5 5 ...
##  $ tal     : Factor w/ 65 levels "AG10","AG2","AG3",..: 2 3 4 5 6 1 38 39 52 58 ...
##  $ cam     : Factor w/ 3 levels "0-0.1","0.1-0.2",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ rpt     : int  1 1 1 1 1 1 1 1 1 1 ...
##  $ variable: Factor w/ 34 levels "prod","glic",..: 1 1 1 1 1 1 1 1 1 1 ...
##  $ value   : num  3.89 4.12 4.25 4.12 4.38 ...
##  - attr(*, ".internal.selfref")=<externalptr>
# Desempilhar.
atrib2[, camvar := interaction(variable,
                               as.integer(cam),
                               sep = ":",
                               drop = TRUE)]
atrib2[, levels(camvar)]
##  [1] "prod:1"  "glic:1"  "phos:1"  "sulf:1"  "LFF:1"   "LFO:1"  
##  [7] "HF:1"    "rp:1"    "dens:1"  "poro:1"  "clay:1"  "sand:1" 
## [13] "pH:1"    "pH_Ca:1" "P:1"     "K:1"     "Ca_Mg:1" "Ca:1"   
## [19] "Mg:1"    "Al:1"    "MO:1"    "base:1"  "CTC:1"   "V:1"    
## [25] "CaMg:1"  "CaK:1"   "MgK:1"   "Ca_:1"   "Mg_:1"   "K_:1"   
## [31] "H_:1"    "m_:1"    "S:1"     "dp:1"    "rp:2"    "dens:2" 
## [37] "poro:2"  "clay:2"  "sand:2"  "pH:2"    "pH_Ca:2" "P:2"    
## [43] "K:2"     "Ca_Mg:2" "Ca:2"    "Mg:2"    "Al:2"    "MO:2"   
## [49] "base:2"  "CTC:2"   "V:2"     "CaMg:2"  "CaK:2"   "MgK:2"  
## [55] "Ca_:2"   "Mg_:2"   "K_:2"    "H_:2"    "m_:2"    "S:2"    
## [61] "dp:2"    "rp:3"    "dens:3"  "poro:3"  "clay:3"  "sand:3" 
## [67] "pH:3"    "pH_Ca:3" "P:3"     "K:3"     "Ca_Mg:3" "Ca:3"   
## [73] "Mg:3"    "Al:3"    "MO:3"    "base:3"  "CTC:3"   "V:3"    
## [79] "CaMg:3"  "CaK:3"   "MgK:3"   "Ca_:3"   "Mg_:3"   "K_:3"   
## [85] "H_:3"    "m_:3"    "S:3"     "dp:3"
names(atrib2)
## [1] "faz"      "tal"      "cam"      "rpt"      "variable"
## [6] "value"    "camvar"
# Tira a médias das repetições.
atrib3 <- dcast(data = atrib2,
                formula = faz + tal ~ camvar,
                value.var = "value",
                # fun.aggregate = identity, fill = NA,
                fun.aggregate = mean,
                sep = ":")

nrow(atrib3)
## [1] 65
names(atrib3)
##  [1] "faz"     "tal"     "prod:1"  "glic:1"  "phos:1"  "sulf:1" 
##  [7] "LFF:1"   "LFO:1"   "HF:1"    "rp:1"    "dens:1"  "poro:1" 
## [13] "clay:1"  "sand:1"  "pH:1"    "pH_Ca:1" "P:1"     "K:1"    
## [19] "Ca_Mg:1" "Ca:1"    "Mg:1"    "Al:1"    "MO:1"    "base:1" 
## [25] "CTC:1"   "V:1"     "CaMg:1"  "CaK:1"   "MgK:1"   "Ca_:1"  
## [31] "Mg_:1"   "K_:1"    "H_:1"    "m_:1"    "S:1"     "dp:1"   
## [37] "rp:2"    "dens:2"  "poro:2"  "clay:2"  "sand:2"  "pH:2"   
## [43] "pH_Ca:2" "P:2"     "K:2"     "Ca_Mg:2" "Ca:2"    "Mg:2"   
## [49] "Al:2"    "MO:2"    "base:2"  "CTC:2"   "V:2"     "CaMg:2" 
## [55] "CaK:2"   "MgK:2"   "Ca_:2"   "Mg_:2"   "K_:2"    "H_:2"   
## [61] "m_:2"    "S:2"     "dp:2"    "rp:3"    "dens:3"  "poro:3" 
## [67] "clay:3"  "sand:3"  "pH:3"    "pH_Ca:3" "P:3"     "K:3"    
## [73] "Ca_Mg:3" "Ca:3"    "Mg:3"    "Al:3"    "MO:3"    "base:3" 
## [79] "CTC:3"   "V:3"     "CaMg:3"  "CaK:3"   "MgK:3"   "Ca_:3"  
## [85] "Mg_:3"   "K_:3"    "H_:3"    "m_:3"    "S:3"     "dp:3"
# Variâncias.
atrib3[,
       lapply(.SD, FUN = var, na.rm = TRUE),
       .SDcols = 3:ncol(atrib3)]
##       prod:1   glic:1   phos:1   sulf:1   LFF:1  LFO:1    HF:1
## 1: 0.1250321 578.1434 12663.52 488.7893 14.5678 9.2511 35.9463
##         rp:1     dens:1     poro:1 clay:1   sand:1      pH:1
## 1: 0.5881918 0.02088047 0.00735369  14703 21784.57 0.0436875
##      pH_Ca:1      P:1      K:1   Ca_Mg:1      Ca:1       Mg:1 Al:1
## 1: 0.0421875 174.8634 986.0294 0.4862596 0.2614279 0.03559135    0
##        MO:1    base:1    CTC:1      V:1      CaMg:1    CaK:1
## 1: 20.74578 0.5354701 0.813834 35.60101 0.006489087 22.88028
##       MgK:1    Ca_:1    Mg_:1     K_:1     H_:1 m_:1      S:1
## 1: 3.233015 16.80674 2.305351 0.773101 35.59554    0 37.75078
##           dp:1     rp:2     dens:2      poro:2   clay:2   sand:2
## 1: 0.005371004 0.293748 0.01540459 0.008098534 15431.62 20716.28
##          pH:2    pH_Ca:2      P:2      K:2  Ca_Mg:2      Ca:2
## 1: 0.07859135 0.08034615 52.71091 532.8338 0.619149 0.3377788
##          Mg:2      Al:2     MO:2    base:2    CTC:2      V:2
## 1: 0.04290865 0.0406875 26.62002 0.6604085 1.024687 94.37282
##        CaMg:2    CaK:2    MgK:2    Ca_:2    Mg_:2      K_:2    H_:2
## 1: 0.02664529 35.25331 5.215659 49.02754 6.152322 0.6768029 49.8511
##        m_:2      S:2        dp:2      rp:3     dens:3      poro:3
## 1: 112.9342 119.6136 0.004443654 0.1582381 0.01444369 0.005287837
##     clay:3   sand:3       pH:3    pH_Ca:3      P:3      K:3
## 1: 14972.4 18987.86 0.03571154 0.03453365 2.588885 259.6855
##      Ca_Mg:3      Ca:3       Mg:3       Al:3     MO:3    base:3
## 1: 0.2128029 0.1087163 0.01802885 0.01967788 23.31874 0.2252013
##        CTC:3      V:3    CaMg:3   CaK:3    MgK:3    Ca_:3    Mg_:3
## 1: 0.7687975 51.04202 0.0694249 33.6436 6.217125 24.43953 4.308212
##         K_:3     H_:3    m_:3      S:3       dp:3
## 1: 0.6090529 26.46215 105.053 347.3378 0.00998375
# Mantém só as variáveis numéricas com variância não nula.
atrib3 <- atrib3[,
                 Filter(function(x) {
                     if (is.numeric(x)) {
                         var(x, na.rm = TRUE) > 0
                     } else {
                         TRUE
                     }
                 }, .SD)]

# Dimensões.
# c(linhas = nrow(atrib3), colunas = ncol(atrib3) - 2)
structure(dim(atrib3) - c(0, 2),
          .Names = c("linhas", "colunas"))
##  linhas colunas 
##      65      86
#-----------------------------------------------------------------------
# Explorando as correlações.

library(corrplot)

k <- cor(atrib3[, 3:ncol(atrib3)], use = "pairwise.complete.obs")

# Diagrama de correlações.
corrplot::corrplot(k,
                   type = "upper",
                   order = c("original", "AOE", "FPC", "hclust", "alphabet")[1],
                   # tl.pos = c("lt", "d", "td")[3],
                   # outline = TRUE,
                   method = "ellipse")

# Separando as variáveis por camada.
par(mfrow = c(2, 2))
sapply(1:3,
       FUN = function(cam) {
           i <- grep(pattern = sprintf(":%d$", cam),
                     x = colnames(k))
           corrplot::corrplot(k[i, i],
                              type = "upper",
                              tl.pos = c("lt", "d", "td")[3],
                              outline = TRUE,
                              method = "ellipse")
       })
## [[1]]
##              prod:1      glic:1      phos:1       sulf:1
## prod:1   1.00000000  0.26180390 -0.12604529  0.063195246
## glic:1   0.26180390  1.00000000 -0.18222094  0.430285359
## phos:1  -0.12604529 -0.18222094  1.00000000  0.152037262
## sulf:1   0.06319525  0.43028536  0.15203726  1.000000000
## LFF:1   -0.07601192  0.01105054  0.14278886  0.018263157
## LFO:1    0.06709591 -0.16713474  0.13731589 -0.085106030
## HF:1     0.03049029  0.30258729  0.02039905  0.315142956
## rp:1    -0.39207874 -0.11284608  0.22372772  0.143759729
## dens:1  -0.22955518 -0.16022396 -0.08132025 -0.107142336
## poro:1   0.23172295  0.18164550 -0.04854562 -0.050500519
## clay:1  -0.12648334  0.24175216  0.15086226  0.191000124
## sand:1   0.12369779 -0.20837318 -0.16393789 -0.166815904
## pH:1     0.10891971  0.03839387 -0.12947074  0.073017103
## pH_Ca:1  0.10718180 -0.02044939 -0.10975644 -0.001429465
## P:1     -0.12344554 -0.09407243 -0.25932817 -0.078468845
## K:1      0.25437028  0.10749443 -0.22926722 -0.072917137
## Ca_Mg:1  0.05162701  0.17747163  0.05774925  0.255312536
## Ca:1     0.05729365  0.17519063  0.06147165  0.260850798
## Mg:1     0.03554846  0.18104328  0.04685457  0.237143058
## MO:1     0.02124394  0.29452231  0.23820199  0.354222929
## base:1   0.07728110  0.18102593  0.03072191  0.235609081
## CTC:1    0.00737564  0.22223998  0.21424983  0.303095732
## V:1      0.11091608  0.04011570 -0.16782120  0.040818485
## CaMg:1   0.11427721 -0.02837427  0.04814784  0.111747734
## CaK:1   -0.18287695  0.01030033  0.26734818  0.297643333
## MgK:1   -0.18724185  0.01668743  0.25467888  0.283267214
## Ca_:1    0.08423509  0.03084582 -0.12750184  0.075941882
## Mg_:1    0.05252590  0.04559345 -0.14439617  0.050814618
## K_:1     0.26330897  0.04419680 -0.29784649 -0.162055171
## H_:1    -0.11156581 -0.03967888  0.16710210 -0.040626233
## S:1     -0.23837027  0.02595622 -0.15958335  0.018105201
## dp:1    -0.16668219 -0.04590009 -0.17794589 -0.275791130
##               LFF:1        LFO:1         HF:1         rp:1
## prod:1  -0.07601192  0.067095909  0.030490288 -0.392078744
## glic:1   0.01105054 -0.167134741  0.302587287 -0.112846078
## phos:1   0.14278886  0.137315892  0.020399052  0.223727719
## sulf:1   0.01826316 -0.085106030  0.315142956  0.143759729
## LFF:1    1.00000000  0.243192434 -0.597819800 -0.033081843
## LFO:1    0.24319243  1.000000000 -0.474488847  0.142528058
## HF:1    -0.59781980 -0.474488847  1.000000000 -0.006975694
## rp:1    -0.03308184  0.142528058 -0.006975694  1.000000000
## dens:1  -0.30157742 -0.036225890 -0.021719966  0.503274244
## poro:1   0.16823744  0.203465088  0.024401207 -0.524277121
## clay:1   0.21211120  0.229509588  0.084095796  0.242934852
## sand:1  -0.25278261 -0.255574167 -0.073600692 -0.187342339
## pH:1    -0.05374774  0.001214148  0.120430786 -0.015481877
## pH_Ca:1 -0.06326129  0.029387951  0.071168283  0.018664285
## P:1     -0.04194289 -0.273375847  0.051954533  0.058856354
## K:1      0.02608003  0.009053952  0.139667448  0.076462737
## Ca_Mg:1  0.08908162  0.187278606  0.370363906 -0.009483338
## Ca:1     0.09245716  0.190076422  0.368160426 -0.008292563
## Mg:1     0.07868959  0.177081461  0.371165427 -0.012578205
## MO:1     0.21345205  0.246987042  0.498509916  0.058272952
## base:1   0.08818694  0.180040830  0.368000663 -0.001397394
## CTC:1    0.20651960  0.258888440  0.466861216  0.008996976
## V:1     -0.04728956 -0.008036408  0.060041899 -0.040599560
## CaMg:1   0.07931305  0.041117680 -0.040935436  0.027568338
## CaK:1   -0.07971462  0.063386278  0.103767388 -0.129283629
## MgK:1   -0.08531341  0.058342812  0.103861430 -0.133729215
## Ca_:1   -0.03995399  0.008465169  0.061525328 -0.050348943
## Mg_:1   -0.06168956 -0.005059085  0.076954548 -0.054569474
## K_:1    -0.03136438 -0.087664879 -0.010054266  0.049994729
## H_:1     0.04741552  0.008483129 -0.060202367  0.041359775
## S:1      0.06353553 -0.245321752  0.142742865  0.002207732
## dp:1     0.01387195  0.012812504 -0.062955321 -0.013854591
##              dens:1      poro:1      clay:1      sand:1
## prod:1  -0.22955518  0.23172295 -0.12648334  0.12369779
## glic:1  -0.16022396  0.18164550  0.24175216 -0.20837318
## phos:1  -0.08132025 -0.04854562  0.15086226 -0.16393789
## sulf:1  -0.10714234 -0.05050052  0.19100012 -0.16681590
## LFF:1   -0.30157742  0.16823744  0.21211120 -0.25278261
## LFO:1   -0.03622589  0.20346509  0.22950959 -0.25557417
## HF:1    -0.02171997  0.02440121  0.08409580 -0.07360069
## rp:1     0.50327424 -0.52427712  0.24293485 -0.18734234
## dens:1   1.00000000 -0.75679504 -0.37780655  0.46422862
## poro:1  -0.75679504  1.00000000  0.30151127 -0.38090619
## clay:1  -0.37780655  0.30151127  1.00000000 -0.97130558
## sand:1   0.46422862 -0.38090619 -0.97130558  1.00000000
## pH:1     0.04643938 -0.05387376 -0.36694534  0.34250572
## pH_Ca:1  0.13538566 -0.12641259 -0.45252344  0.41810140
## P:1      0.49129091 -0.38037633 -0.37540012  0.44374383
## K:1      0.10502915 -0.14861519 -0.16155768  0.18396635
## Ca_Mg:1 -0.11392519  0.18547817 -0.01195604 -0.03278619
## Ca:1    -0.11684720  0.18491351 -0.01207193 -0.03200442
## Mg:1    -0.10441549  0.18441918 -0.01147504 -0.03444726
## MO:1    -0.30549628  0.30896839  0.44170284 -0.47937495
## base:1  -0.09721862  0.16073118 -0.02903470 -0.01119393
## CTC:1   -0.29213204  0.36148519  0.42822218 -0.46978826
## V:1      0.11445180 -0.09652220 -0.45209923  0.43364008
## CaMg:1  -0.07022535 -0.01326176 -0.01049371  0.01936551
## CaK:1   -0.16010712  0.23534163  0.12972758 -0.15350076
## MgK:1   -0.15387770  0.23528934  0.12865982 -0.15285464
## Ca_:1    0.08924175 -0.06440155 -0.43343170  0.40871715
## Mg_:1    0.10685725 -0.06178127 -0.42760342  0.40124100
## K_:1     0.17674007 -0.24751838 -0.31989900  0.35232176
## H_:1    -0.11401961  0.09694559  0.45228752 -0.43375697
## S:1     -0.12889638  0.03555254  0.34495457 -0.33400585
## dp:1     0.18727091 -0.06786170 -0.04381646  0.03779066
##                 pH:1      pH_Ca:1         P:1          K:1
## prod:1   0.108919711  0.107181801 -0.12344554  0.254370281
## glic:1   0.038393870 -0.020449386 -0.09407243  0.107494428
## phos:1  -0.129470745 -0.109756439 -0.25932817 -0.229267224
## sulf:1   0.073017103 -0.001429465 -0.07846885 -0.072917137
## LFF:1   -0.053747737 -0.063261290 -0.04194289  0.026080026
## LFO:1    0.001214148  0.029387951 -0.27337585  0.009053952
## HF:1     0.120430786  0.071168283  0.05195453  0.139667448
## rp:1    -0.015481877  0.018664285  0.05885635  0.076462737
## dens:1   0.046439376  0.135385657  0.49129091  0.105029153
## poro:1  -0.053873755 -0.126412593 -0.38037633 -0.148615188
## clay:1  -0.366945337 -0.452523445 -0.37540012 -0.161557679
## sand:1   0.342505721  0.418101397  0.44374383  0.183966347
## pH:1     1.000000000  0.953566149  0.19429940  0.507712814
## pH_Ca:1  0.953566149  1.000000000  0.24690981  0.528516228
## P:1      0.194299398  0.246909806  1.00000000  0.204679051
## K:1      0.507712814  0.528516228  0.20467905  1.000000000
## Ca_Mg:1  0.715473464  0.681826768  0.09606006  0.378466663
## Ca:1     0.714362976  0.684400012  0.09562800  0.381952048
## Mg:1     0.708494914  0.665334231  0.09589004  0.363737021
## MO:1     0.114297129  0.060293495 -0.14931253  0.211747854
## base:1   0.737869243  0.707958225  0.11357282  0.470122074
## CTC:1    0.084423323  0.030357270 -0.09106334  0.185054325
## V:1      0.943924054  0.949935380  0.27386672  0.478038965
## CaMg:1   0.051782599  0.115211592  0.01336279  0.078100355
## CaK:1   -0.139941744 -0.199607026 -0.18479921 -0.837218470
## MgK:1   -0.140184293 -0.204010001 -0.18209256 -0.831945192
## Ca_:1    0.926945005  0.933742266  0.25310599  0.365938275
## Mg_:1    0.913208597  0.901344408  0.25039984  0.346356647
## K_:1     0.507571997  0.539876736  0.24491757  0.944779817
## H_:1    -0.944069239 -0.950046606 -0.27415532 -0.478026605
## S:1     -0.230975649 -0.226577230  0.12661279 -0.206143813
## dp:1    -0.029104905 -0.029410205  0.35664898  0.064812287
##              Ca_Mg:1         Ca:1         Mg:1        MO:1
## prod:1   0.051627006  0.057293649  0.035548457  0.02124394
## glic:1   0.177471632  0.175190631  0.181043277  0.29452231
## phos:1   0.057749255  0.061471648  0.046854573  0.23820199
## sulf:1   0.255312536  0.260850798  0.237143058  0.35422293
## LFF:1    0.089081622  0.092457156  0.078689594  0.21345205
## LFO:1    0.187278606  0.190076422  0.177081461  0.24698704
## HF:1     0.370363906  0.368160426  0.371165427  0.49850992
## rp:1    -0.009483338 -0.008292563 -0.012578205  0.05827295
## dens:1  -0.113925188 -0.116847197 -0.104415487 -0.30549628
## poro:1   0.185478167  0.184913512  0.184419176  0.30896839
## clay:1  -0.011956036 -0.012071927 -0.011475038  0.44170284
## sand:1  -0.032786192 -0.032004419 -0.034447259 -0.47937495
## pH:1     0.715473464  0.714362976  0.708494914  0.11429713
## pH_Ca:1  0.681826768  0.684400012  0.665334231  0.06029350
## P:1      0.096060065  0.095627995  0.095890041 -0.14931253
## K:1      0.378466663  0.381952048  0.363737021  0.21174785
## Ca_Mg:1  1.000000000  0.998616158  0.989790228  0.68722704
## Ca:1     0.998616158  1.000000000  0.980924687  0.68902349
## Mg:1     0.989790228  0.980924687  1.000000000  0.67276440
## MO:1     0.687227043  0.689023492  0.672764398  1.00000000
## base:1   0.994865863  0.993903347  0.983585881  0.67853331
## CTC:1    0.700392934  0.700481440  0.690375380  0.96047837
## V:1      0.715154484  0.714636533  0.706574488  0.03404039
## CaMg:1   0.023485234  0.075475262 -0.117746781  0.04003576
## CaK:1    0.071784395  0.065139719  0.088790766  0.11212023
## MgK:1    0.068190594  0.057190157  0.097052182  0.10418445
## Ca_:1    0.734418339  0.736994347  0.717184115  0.05315948
## Mg_:1    0.729193974  0.718209176  0.748785388  0.04622420
## K_:1     0.171997485  0.175730136  0.159480064 -0.09805793
## H_:1    -0.714760648 -0.714221933 -0.706242422 -0.03384775
## S:1     -0.127960482 -0.116542618 -0.157118986  0.07731656
## dp:1    -0.023567387 -0.033890937  0.004740659 -0.06268921
##               base:1         CTC:1          V:1        CaMg:1
## prod:1   0.077281097  0.0073756401  0.110916082  0.1142772112
## glic:1   0.181025926  0.2222399753  0.040115704 -0.0283742737
## phos:1   0.030721913  0.2142498256 -0.167821200  0.0481478380
## sulf:1   0.235609081  0.3030957318  0.040818485  0.1117477343
## LFF:1    0.088186942  0.2065196030 -0.047289559  0.0793130536
## LFO:1    0.180040830  0.2588884397 -0.008036408  0.0411176796
## HF:1     0.368000663  0.4668612165  0.060041899 -0.0409354362
## rp:1    -0.001397394  0.0089969765 -0.040599560  0.0275683385
## dens:1  -0.097218615 -0.2921320440  0.114451805 -0.0702253482
## poro:1   0.160731185  0.3614851902 -0.096522201 -0.0132617605
## clay:1  -0.029034705  0.4282221836 -0.452099228 -0.0104937111
## sand:1  -0.011193928 -0.4697882585  0.433640076  0.0193655068
## pH:1     0.737869243  0.0844233226  0.943924054  0.0517825992
## pH_Ca:1  0.707958225  0.0303572695  0.949935380  0.1152115922
## P:1      0.113572818 -0.0910633437  0.273866719  0.0133627891
## K:1      0.470122074  0.1850543246  0.478038965  0.0781003545
## Ca_Mg:1  0.994865863  0.7003929336  0.715154484  0.0234852338
## Ca:1     0.993903347  0.7004814401  0.714636533  0.0754752618
## Mg:1     0.983585881  0.6903753800  0.706574488 -0.1177467812
## MO:1     0.678533309  0.9604783720  0.034040385  0.0400357607
## base:1   1.000000000  0.6882408215  0.734007166  0.0304610326
## CTC:1    0.688240821  1.0000000000  0.016374768 -0.0006562792
## V:1      0.734007166  0.0163747682  1.000000000  0.0617526202
## CaMg:1   0.030461033 -0.0006562792  0.061752620  1.0000000000
## CaK:1   -0.022412232  0.1251455301 -0.152683675 -0.1189242676
## MgK:1   -0.025235899  0.1207102906 -0.153935798 -0.2018068997
## Ca_:1    0.740103048  0.0377826219  0.988912071  0.1225591078
## Mg_:1    0.733092752  0.0414736764  0.970948026 -0.1364543142
## K_:1     0.267158816 -0.1343379680  0.500624907  0.0863573357
## H_:1    -0.733631965 -0.0158869115 -0.999988943 -0.0613267683
## S:1     -0.144901845  0.0838342667 -0.260114756  0.2328465930
## dp:1    -0.015538563 -0.0347757331  0.013498422 -0.2032401525
##                CaK:1       MgK:1        Ca_:1        Mg_:1
## prod:1  -0.182876949 -0.18724185  0.084235089  0.052525898
## glic:1   0.010300332  0.01668743  0.030845819  0.045593453
## phos:1   0.267348177  0.25467888 -0.127501841 -0.144396165
## sulf:1   0.297643333  0.28326721  0.075941882  0.050814618
## LFF:1   -0.079714616 -0.08531341 -0.039953992 -0.061689561
## LFO:1    0.063386278  0.05834281  0.008465169 -0.005059085
## HF:1     0.103767388  0.10386143  0.061525328  0.076954548
## rp:1    -0.129283629 -0.13372922 -0.050348943 -0.054569474
## dens:1  -0.160107116 -0.15387770  0.089241746  0.106857250
## poro:1   0.235341626  0.23528934 -0.064401549 -0.061781273
## clay:1   0.129727577  0.12865982 -0.433431700 -0.427603415
## sand:1  -0.153500757 -0.15285464  0.408717148  0.401241003
## pH:1    -0.139941744 -0.14018429  0.926945005  0.913208597
## pH_Ca:1 -0.199607026 -0.20401000  0.933742266  0.901344408
## P:1     -0.184799214 -0.18209256  0.253105991  0.250399841
## K:1     -0.837218470 -0.83194519  0.365938275  0.346356647
## Ca_Mg:1  0.071784395  0.06819059  0.734418339  0.729193974
## Ca:1     0.065139719  0.05719016  0.736994347  0.718209176
## Mg:1     0.088790766  0.09705218  0.717184115  0.748785388
## MO:1     0.112120231  0.10418445  0.053159476  0.046224199
## base:1  -0.022412232 -0.02523590  0.740103048  0.733092752
## CTC:1    0.125145530  0.12071029  0.037782622  0.041473676
## V:1     -0.152683675 -0.15393580  0.988912071  0.970948026
## CaMg:1  -0.118924268 -0.20180690  0.122559108 -0.136454314
## CaK:1    1.000000000  0.99620169 -0.034336480 -0.003362239
## MgK:1    0.996201687  1.00000000 -0.042458504  0.010055336
## Ca_:1   -0.034336480 -0.04245850  1.000000000  0.966049016
## Mg_:1   -0.003362239  0.01005534  0.966049016  1.000000000
## K_:1    -0.874939617 -0.86921543  0.382174819  0.359176994
## H_:1     0.152565575  0.15378022 -0.988845415 -0.970974345
## S:1      0.071473728  0.05215062 -0.224948693 -0.280336297
## dp:1    -0.134202235 -0.11288144 -0.011296161  0.043413022
##                K_:1         H_:1          S:1         dp:1
## prod:1   0.26330897 -0.111565810 -0.238370273 -0.166682194
## glic:1   0.04419680 -0.039678883  0.025956221 -0.045900092
## phos:1  -0.29784649  0.167102103 -0.159583349 -0.177945893
## sulf:1  -0.16205517 -0.040626233  0.018105201 -0.275791130
## LFF:1   -0.03136438  0.047415517  0.063535526  0.013871948
## LFO:1   -0.08766488  0.008483129 -0.245321752  0.012812504
## HF:1    -0.01005427 -0.060202367  0.142742865 -0.062955321
## rp:1     0.04999473  0.041359775  0.002207732 -0.013854591
## dens:1   0.17674007 -0.114019614 -0.128896382  0.187270911
## poro:1  -0.24751838  0.096945595  0.035552542 -0.067861704
## clay:1  -0.31989900  0.452287523  0.344954572 -0.043816465
## sand:1   0.35232176 -0.433756970 -0.334005848  0.037790663
## pH:1     0.50757200 -0.944069239 -0.230975649 -0.029104905
## pH_Ca:1  0.53987674 -0.950046606 -0.226577230 -0.029410205
## P:1      0.24491757 -0.274155322  0.126612795  0.356648977
## K:1      0.94477982 -0.478026605 -0.206143813  0.064812287
## Ca_Mg:1  0.17199748 -0.714760648 -0.127960482 -0.023567387
## Ca:1     0.17573014 -0.714221933 -0.116542618 -0.033890937
## Mg:1     0.15948006 -0.706242422 -0.157118986  0.004740659
## MO:1    -0.09805793 -0.033847753  0.077316555 -0.062689211
## base:1   0.26715882 -0.733631965 -0.144901845 -0.015538563
## CTC:1   -0.13433797 -0.015886912  0.083834267 -0.034775733
## V:1      0.50062491 -0.999988943 -0.260114756  0.013498422
## CaMg:1   0.08635734 -0.061326768  0.232846593 -0.203240153
## CaK:1   -0.87493962  0.152565575  0.071473728 -0.134202235
## MgK:1   -0.86921543  0.153780215  0.052150621 -0.112881439
## Ca_:1    0.38217482 -0.988845415 -0.224948693 -0.011296161
## Mg_:1    0.35917699 -0.970974345 -0.280336297  0.043413022
## K_:1     1.00000000 -0.500817104 -0.236133892  0.069050564
## H_:1    -0.50081710  1.000000000  0.260461655 -0.013639980
## S:1     -0.23613389  0.260461655  1.000000000 -0.009010252
## dp:1     0.06905056 -0.013639980 -0.009010252  1.000000000
## 
## [[2]]
##                rp:2       dens:2      poro:2       clay:2
## rp:2     1.00000000  0.221496602  0.08015625  0.071044699
## dens:2   0.22149660  1.000000000 -0.42406158 -0.703310767
## poro:2   0.08015625 -0.424061577  1.00000000  0.227036070
## clay:2   0.07104470 -0.703310767  0.22703607  1.000000000
## sand:2  -0.10607784  0.694519032 -0.27739830 -0.975317405
## pH:2     0.26176668  0.245893250  0.05434475 -0.278955354
## pH_Ca:2  0.19787216  0.250248070  0.09075955 -0.314750519
## P:2     -0.10000742  0.383676266 -0.14704192 -0.575099343
## K:2      0.06055575 -0.095044892  0.25616853 -0.017157499
## Ca_Mg:2  0.21080224 -0.009651189  0.31271280 -0.114414329
## Ca:2     0.20911656 -0.010758857  0.31844835 -0.115322084
## Mg:2     0.21403455 -0.006474838  0.29439941 -0.111054798
## Al:2    -0.18634298 -0.207268502 -0.06094240  0.217313452
## MO:2     0.21845821 -0.466701630  0.53239747  0.325071449
## base:2   0.20806498 -0.016365276  0.32100456 -0.111628197
## CTC:2    0.19515814 -0.475384010  0.52046119  0.308287568
## V:2      0.14639576  0.217560633  0.08038362 -0.285964127
## CaMg:2  -0.01079947 -0.096139337  0.26897578  0.009265045
## CaK:2    0.07978376  0.008189011 -0.06354027  0.036610664
## MgK:2    0.07779068  0.014773855 -0.09572377  0.044036127
## Ca_:2    0.15199112  0.209105393  0.08829229 -0.277949016
## Mg_:2    0.15469527  0.234424952  0.04478323 -0.287723476
## K_:2    -0.03299839  0.078725739  0.06190264 -0.144623561
## H_:2    -0.10439054 -0.262237530 -0.05443335  0.342160249
## m_:2    -0.17091516 -0.106482799 -0.08603267  0.141660619
## S:2     -0.13601990 -0.338368045  0.11257758  0.274991043
## dp:2    -0.07754103  0.093928421 -0.20784780 -0.093555852
##              sand:2        pH:2     pH_Ca:2          P:2
## rp:2    -0.10607784  0.26176668  0.19787216 -0.100007418
## dens:2   0.69451903  0.24589325  0.25024807  0.383676266
## poro:2  -0.27739830  0.05434475  0.09075955 -0.147041922
## clay:2  -0.97531741 -0.27895535 -0.31475052 -0.575099343
## sand:2   1.00000000  0.28221827  0.32009873  0.555216287
## pH:2     0.28221827  1.00000000  0.89796453  0.259990891
## pH_Ca:2  0.32009873  0.89796453  1.00000000  0.289696364
## P:2      0.55521629  0.25999089  0.28969636  1.000000000
## K:2      0.04705137  0.39730285  0.39623940  0.148982330
## Ca_Mg:2  0.09930666  0.81226818  0.89005568  0.236004893
## Ca:2     0.09955776  0.81305089  0.89262219  0.237225475
## Mg:2     0.09789681  0.80430295  0.87653315  0.230904057
## Al:2    -0.22501620 -0.83501950 -0.92423110 -0.212427389
## MO:2    -0.38033145  0.12860084  0.11802516 -0.136165107
## base:2   0.09902525  0.81533953  0.89062286  0.238950987
## CTC:2   -0.36589239  0.10485647  0.10795262 -0.061921305
## V:2      0.29812249  0.89396799  0.98124634  0.263985541
## CaMg:2  -0.01562866  0.34076869  0.43202363 -0.001446225
## CaK:2   -0.06561692  0.27867103  0.35006130 -0.050040480
## MgK:2   -0.06927070  0.22053071  0.28171380 -0.062969990
## Ca_:2    0.28463350  0.88861307  0.98047856  0.253056539
## Mg_:2    0.29930788  0.88130418  0.96606092  0.259855212
## K_:2     0.19548137  0.33890031  0.33090098  0.176858071
## H_:2    -0.36081326 -0.88666009 -0.96978871 -0.313333146
## m_:2    -0.15093319 -0.81743516 -0.89114563 -0.127570378
## S:2     -0.32362796 -0.53513827 -0.49476784 -0.337676485
## dp:2     0.09611545 -0.26000397 -0.21694758  0.008123381
##                 K:2      Ca_Mg:2        Ca:2         Mg:2
## rp:2     0.06055575  0.210802238  0.20911656  0.214034548
## dens:2  -0.09504489 -0.009651189 -0.01075886 -0.006474838
## poro:2   0.25616853  0.312712800  0.31844835  0.294399413
## clay:2  -0.01715750 -0.114414329 -0.11532208 -0.111054798
## sand:2   0.04705137  0.099306658  0.09955776  0.097896813
## pH:2     0.39730285  0.812268179  0.81305089  0.804302949
## pH_Ca:2  0.39623940  0.890055683  0.89262219  0.876533150
## P:2      0.14898233  0.236004893  0.23722547  0.230904057
## K:2      1.00000000  0.407911920  0.41037731  0.398097540
## Ca_Mg:2  0.40791192  1.000000000  0.99933595  0.994760603
## Ca:2     0.41037731  0.999335953  1.00000000  0.990375018
## Mg:2     0.39809754  0.994760603  0.99037502  1.000000000
## Al:2    -0.37770660 -0.836188477 -0.84021321 -0.818957177
## MO:2     0.19866556  0.503023968  0.49895662  0.510863064
## base:2   0.46775683  0.997776882  0.99730666  0.992009464
## CTC:2    0.20490830  0.503185077  0.49882180  0.511853304
## V:2      0.40828896  0.895160925  0.89620975  0.885860315
## CaMg:2   0.21960870  0.401963507  0.43269730  0.312878254
## CaK:2   -0.57503247  0.416728472  0.41375756  0.422104187
## MgK:2   -0.61735753  0.357025953  0.34949444  0.375621459
## Ca_:2    0.34222519  0.903466990  0.90567666  0.890850377
## Mg_:2    0.32311570  0.888622782  0.88505430  0.892323468
## K_:2     0.93052972  0.204908353  0.20939888  0.190853848
## H_:2    -0.40883563 -0.860106567 -0.86056573 -0.852709343
## m_:2    -0.36389623 -0.865619712 -0.86523791 -0.860542865
## S:2     -0.29072706 -0.409195258 -0.41410407 -0.392516211
## dp:2    -0.05070105 -0.250665477 -0.24909363 -0.253295286
##                Al:2        MO:2      base:2       CTC:2         V:2
## rp:2    -0.18634298  0.21845821  0.20806498  0.19515814  0.14639576
## dens:2  -0.20726850 -0.46670163 -0.01636528 -0.47538401  0.21756063
## poro:2  -0.06094240  0.53239747  0.32100456  0.52046119  0.08038362
## clay:2   0.21731345  0.32507145 -0.11162820  0.30828757 -0.28596413
## sand:2  -0.22501620 -0.38033145  0.09902525 -0.36589239  0.29812249
## pH:2    -0.83501950  0.12860084  0.81533953  0.10485647  0.89396799
## pH_Ca:2 -0.92423110  0.11802516  0.89062286  0.10795262  0.98124634
## P:2     -0.21242739 -0.13616511  0.23895099 -0.06192131  0.26398554
## K:2     -0.37770660  0.19866556  0.46775683  0.20490830  0.40828896
## Ca_Mg:2 -0.83618848  0.50302397  0.99777688  0.50318508  0.89516093
## Ca:2    -0.84021321  0.49895662  0.99730666  0.49882180  0.89620975
## Mg:2    -0.81895718  0.51086306  0.99200946  0.51185330  0.88586032
## Al:2     1.00000000 -0.05795256 -0.83698424 -0.04505694 -0.94735757
## MO:2    -0.05795256  1.00000000  0.50163839  0.98589574  0.09859526
## base:2  -0.83698424  0.50163839  1.00000000  0.50215315  0.89639018
## CTC:2   -0.04505694  0.98589574  0.50215315  1.00000000  0.08850901
## V:2     -0.94735757  0.09859526  0.89639018  0.08850901  1.00000000
## CaMg:2  -0.44692844  0.13314370  0.40513301  0.11213667  0.40985706
## CaK:2   -0.37183971  0.17945461  0.36164764  0.18225062  0.36577535
## MgK:2   -0.29980444  0.16780917  0.30074183  0.17165537  0.30154870
## Ca_:2   -0.94683043  0.12020407  0.89961941  0.10904240  0.99597725
## Mg_:2   -0.92702706  0.09905061  0.88388751  0.08984126  0.98846545
## K_:2    -0.33237866 -0.15184502  0.26611984 -0.14668611  0.35225353
## H_:2     0.89583831 -0.02714351 -0.86246448 -0.02051036 -0.98666525
## m_:2     0.96330469 -0.17005563 -0.86454088 -0.15687014 -0.94086527
## S:2      0.56528493  0.08503904 -0.41706525  0.09606284 -0.52374370
## dp:2     0.20963121 -0.10266900 -0.24621096 -0.10440356 -0.21155565
##               CaMg:2        CaK:2        MgK:2       Ca_:2
## rp:2    -0.010799470  0.079783758  0.077790683  0.15199112
## dens:2  -0.096139337  0.008189011  0.014773855  0.20910539
## poro:2   0.268975779 -0.063540275 -0.095723771  0.08829229
## clay:2   0.009265045  0.036610664  0.044036127 -0.27794902
## sand:2  -0.015628661 -0.065616922 -0.069270696  0.28463350
## pH:2     0.340768690  0.278671031  0.220530708  0.88861307
## pH_Ca:2  0.432023629  0.350061296  0.281713801  0.98047856
## P:2     -0.001446225 -0.050040480 -0.062969990  0.25305654
## K:2      0.219608703 -0.575032469 -0.617357528  0.34222519
## Ca_Mg:2  0.401963507  0.416728472  0.357025953  0.90346699
## Ca:2     0.432697296  0.413757559  0.349494440  0.90567666
## Mg:2     0.312878254  0.422104187  0.375621459  0.89085038
## Al:2    -0.446928445 -0.371839710 -0.299804437 -0.94683043
## MO:2     0.133143696  0.179454607  0.167809173  0.12020407
## base:2   0.405133010  0.361647639  0.300741826  0.89961941
## CTC:2    0.112136668  0.182250624  0.171655368  0.10904240
## V:2      0.409857056  0.365775352  0.301548696  0.99597725
## CaMg:2   1.000000000  0.137057508  0.002165645  0.44249915
## CaK:2    0.137057508  1.000000000  0.988958729  0.43072990
## MgK:2    0.002165645  0.988958729  1.000000000  0.36276557
## Ca_:2    0.442499155  0.430729901  0.362765570  1.00000000
## Mg_:2    0.297807879  0.436876731  0.389774012  0.98643254
## K_:2     0.179040881 -0.656229047 -0.695246169  0.27758626
## H_:2    -0.376999079 -0.320138148 -0.260901505 -0.97839260
## m_:2    -0.369454925 -0.432678194 -0.372780940 -0.94062659
## S:2     -0.267951485 -0.044604632  0.003632438 -0.51294666
## dp:2    -0.089033397 -0.148344773 -0.123281166 -0.21795987
##               Mg_:2        K_:2        H_:2        m_:2
## rp:2     0.15469527 -0.03299839 -0.10439054 -0.17091516
## dens:2   0.23442495  0.07872574 -0.26223753 -0.10648280
## poro:2   0.04478323  0.06190264 -0.05443335 -0.08603267
## clay:2  -0.28772348 -0.14462356  0.34216025  0.14166062
## sand:2   0.29930788  0.19548137 -0.36081326 -0.15093319
## pH:2     0.88130418  0.33890031 -0.88666009 -0.81743516
## pH_Ca:2  0.96606092  0.33090098 -0.96978871 -0.89114563
## P:2      0.25985521  0.17685807 -0.31333315 -0.12757038
## K:2      0.32311570  0.93052972 -0.40883563 -0.36389623
## Ca_Mg:2  0.88862278  0.20490835 -0.86010657 -0.86561971
## Ca:2     0.88505430  0.20939888 -0.86056573 -0.86523791
## Mg:2     0.89232347  0.19085385 -0.85270934 -0.86054286
## Al:2    -0.92702706 -0.33237866  0.89583831  0.96330469
## MO:2     0.09905061 -0.15184502 -0.02714351 -0.17005563
## base:2   0.88388751  0.26611984 -0.86246448 -0.86454088
## CTC:2    0.08984126 -0.14668611 -0.02051036 -0.15687014
## V:2      0.98846545  0.35225353 -0.98666525 -0.94086527
## CaMg:2   0.29780788  0.17904088 -0.37699908 -0.36945492
## CaK:2    0.43687673 -0.65622905 -0.32013815 -0.43267819
## MgK:2    0.38977401 -0.69524617 -0.26090151 -0.37278094
## Ca_:2    0.98643254  0.27758626 -0.97839260 -0.94062659
## Mg_:2    1.00000000  0.26289487 -0.97692208 -0.93489728
## K_:2     0.26289487  1.00000000 -0.37918592 -0.28553744
## H_:2    -0.97692208 -0.37918592  1.00000000  0.88477849
## m_:2    -0.93489728 -0.28553744  0.88477849  1.00000000
## S:2     -0.49381678 -0.32093216  0.50678577  0.52818259
## dp:2    -0.22028750  0.02693564  0.20049119  0.20269747
##                  S:2         dp:2
## rp:2    -0.136019901 -0.077541031
## dens:2  -0.338368045  0.093928421
## poro:2   0.112577580 -0.207847797
## clay:2   0.274991043 -0.093555852
## sand:2  -0.323627959  0.096115454
## pH:2    -0.535138273 -0.260003965
## pH_Ca:2 -0.494767837 -0.216947578
## P:2     -0.337676485  0.008123381
## K:2     -0.290727056 -0.050701049
## Ca_Mg:2 -0.409195258 -0.250665477
## Ca:2    -0.414104068 -0.249093626
## Mg:2    -0.392516211 -0.253295286
## Al:2     0.565284931  0.209631212
## MO:2     0.085039043 -0.102669004
## base:2  -0.417065252 -0.246210962
## CTC:2    0.096062841 -0.104403558
## V:2     -0.523743702 -0.211555647
## CaMg:2  -0.267951485 -0.089033397
## CaK:2   -0.044604632 -0.148344773
## MgK:2    0.003632438 -0.123281166
## Ca_:2   -0.512946663 -0.217959870
## Mg_:2   -0.493816780 -0.220287500
## K_:2    -0.320932159  0.026935643
## H_:2     0.506785774  0.200491189
## m_:2     0.528182589  0.202697471
## S:2      1.000000000  0.175412417
## dp:2     0.175412417  1.000000000
## 
## [[3]]
##                rp:3        dens:3       poro:3      clay:3
## rp:3     1.00000000  0.2162312397  0.034096182  0.11486770
## dens:3   0.21623124  1.0000000000 -0.415190409 -0.78388466
## poro:3   0.03409618 -0.4151904088  1.000000000  0.37667407
## clay:3   0.11486770 -0.7838846634  0.376674075  1.00000000
## sand:3  -0.11718744  0.7773112268 -0.408156424 -0.97901615
## pH:3     0.16108435  0.3002244786 -0.136891182 -0.30028704
## pH_Ca:3  0.15236198  0.2639166510 -0.137382820 -0.27143577
## P:3     -0.08214880  0.4777072709 -0.245596824 -0.62142559
## K:3      0.15992305  0.1220570677  0.006229290 -0.16133110
## Ca_Mg:3  0.13137591  0.0155875454 -0.004822741 -0.01997308
## Ca:3     0.13053595  0.0221418055 -0.021034186 -0.03310364
## Mg:3     0.13080898 -0.0008193063  0.035083148  0.01267053
## Al:3    -0.06493674 -0.2857433314  0.171333676  0.29571485
## MO:3     0.17051280 -0.3766384266  0.258831199  0.38830826
## base:3   0.14062706  0.0249160845 -0.002808683 -0.03327852
## CTC:3    0.15281223 -0.3726062825  0.245237914  0.37847121
## V:3      0.12307037  0.2672157578 -0.144994838 -0.27639097
## CaMg:3   0.02929475  0.1370589627 -0.229901055 -0.21269493
## CaK:3   -0.05199719 -0.1777057027  0.071118394  0.20890384
## MgK:3   -0.07155763 -0.1941025267  0.090563132  0.23350322
## Ca_:3    0.11678346  0.2521722872 -0.158218757 -0.26481088
## Mg_:3    0.11099413  0.2089649759 -0.089029686 -0.19496777
## K_:3     0.09680156  0.3013131859 -0.099269168 -0.34690665
## H_:3    -0.07691454 -0.3246490715  0.188389552  0.34625262
## m_:3    -0.13950125 -0.1748923382  0.069665578  0.16778760
## S:3     -0.01848788 -0.4855034443  0.337354670  0.51263250
## dp:3     0.12254127  0.2418224767  0.237863913 -0.19550692
##               sand:3        pH:3     pH_Ca:3         P:3
## rp:3    -0.117187445  0.16108435  0.15236198 -0.08214880
## dens:3   0.777311227  0.30022448  0.26391665  0.47770727
## poro:3  -0.408156424 -0.13689118 -0.13738282 -0.24559682
## clay:3  -0.979016150 -0.30028704 -0.27143577 -0.62142559
## sand:3   1.000000000  0.30170394  0.26378344  0.59555278
## pH:3     0.301703940  1.00000000  0.96591501  0.45746144
## pH_Ca:3  0.263783445  0.96591501  1.00000000  0.43653683
## P:3      0.595552778  0.45746144  0.43653683  1.00000000
## K:3      0.190855678  0.26974777  0.30386148  0.28798576
## Ca_Mg:3 -0.012620837  0.78742828  0.82121468  0.34235252
## Ca:3    -0.001943839  0.78705743  0.82233728  0.35267303
## Mg:3    -0.038587012  0.77257809  0.80202089  0.31015675
## Al:3    -0.280780440 -0.91550881 -0.91439263 -0.41140975
## MO:3    -0.435049046 -0.12179518 -0.04658621 -0.06486049
## base:3   0.004032974  0.78892405  0.82491738  0.35776069
## CTC:3   -0.432238340 -0.08933942 -0.01279230 -0.04351064
## V:3      0.275183786  0.96910243  0.96490641  0.42668442
## CaMg:3   0.170494688 -0.04999618 -0.04580954  0.09743601
## CaK:3   -0.261440830  0.25780599  0.23845260 -0.15084274
## MgK:3   -0.278187379  0.23696640  0.21559722 -0.17040208
## Ca_:3    0.254437196  0.96552584  0.96230793  0.41323149
## Mg_:3    0.195809753  0.93025048  0.92145864  0.36226265
## K_:3     0.398914534  0.28762138  0.29115938  0.33073189
## H_:3    -0.362715007 -0.93336256 -0.91341402 -0.44409529
## m_:3    -0.149994727 -0.89033022 -0.89759981 -0.28539139
## S:3     -0.520144301 -0.39706604 -0.34098056 -0.43263603
## dp:3     0.178326708  0.13140727  0.12184858  0.18040210
##                 K:3      Ca_Mg:3         Ca:3          Mg:3
## rp:3     0.15992305  0.131375909  0.130535947  0.1308089768
## dens:3   0.12205707  0.015587545  0.022141806 -0.0008193063
## poro:3   0.00622929 -0.004822741 -0.021034186  0.0350831481
## clay:3  -0.16133110 -0.019973081 -0.033103643  0.0126705334
## sand:3   0.19085568 -0.012620837 -0.001943839 -0.0385870117
## pH:3     0.26974777  0.787428278  0.787057427  0.7725780913
## pH_Ca:3  0.30386148  0.821214684  0.822337277  0.8020208883
## P:3      0.28798576  0.342352522  0.352673029  0.3101567460
## K:3      1.00000000  0.269629522  0.281671202  0.2346627736
## Ca_Mg:3  0.26962952  1.000000000  0.997651273  0.9857519941
## Ca:3     0.28167120  0.997651273  1.000000000  0.9719150565
## Mg:3     0.23466277  0.985751994  0.971915056  1.0000000000
## Al:3    -0.29853365 -0.813565745 -0.811336033 -0.8027570782
## MO:3     0.15387591  0.417700486  0.416562757  0.4121337983
## base:3   0.34941168  0.996459003  0.995269839  0.9794344092
## CTC:3    0.13975340  0.452690124  0.450238784  0.4496488428
## V:3      0.28222258  0.829440301  0.825961680  0.8213807584
## CaMg:3   0.15267247 -0.130985006 -0.065856221 -0.2882956512
## CaK:3   -0.70918105  0.379247185  0.367409599  0.4007250844
## MgK:3   -0.71219417  0.359239930  0.337056420  0.4065240805
## Ca_:3    0.20485710  0.844065204  0.844746521  0.8254976518
## Mg_:3    0.14808482  0.825309170  0.807060236  0.8536027827
## K_:3     0.90513545  0.050719547  0.064140973  0.0167462689
## H_:3    -0.24512140 -0.703193607 -0.701873520 -0.6923604023
## m_:3    -0.28193685 -0.876702026 -0.867378685 -0.8820489983
## S:3     -0.19475817 -0.288115550 -0.279697932 -0.3030193195
## dp:3     0.10887464  0.023322380  0.030732703  0.0046585333
##                Al:3        MO:3       base:3       CTC:3
## rp:3    -0.06493674  0.17051280  0.140627059  0.15281223
## dens:3  -0.28574333 -0.37663843  0.024916084 -0.37260628
## poro:3   0.17133368  0.25883120 -0.002808683  0.24523791
## clay:3   0.29571485  0.38830826 -0.033278520  0.37847121
## sand:3  -0.28078044 -0.43504905  0.004032974 -0.43223834
## pH:3    -0.91550881 -0.12179518  0.788924053 -0.08933942
## pH_Ca:3 -0.91439263 -0.04658621  0.824917383 -0.01279230
## P:3     -0.41140975 -0.06486049  0.357760688 -0.04351064
## K:3     -0.29853365  0.15387591  0.349411678  0.13975340
## Ca_Mg:3 -0.81356574  0.41770049  0.996459003  0.45269012
## Ca:3    -0.81133603  0.41656276  0.995269839  0.45023878
## Mg:3    -0.80275708  0.41213380  0.979434409  0.44964884
## Al:3     1.00000000  0.10701352 -0.816794969  0.07779649
## MO:3     0.10701352  1.00000000  0.420354521  0.98756965
## base:3  -0.81679497  0.42035452  1.000000000  0.45328698
## CTC:3    0.07779649  0.98756965  0.453286978  1.00000000
## V:3     -0.95211987 -0.11600955  0.830993894 -0.08040113
## CaMg:3   0.06845784 -0.07206170 -0.113713985 -0.09710425
## CaK:3   -0.27650094  0.10569528  0.307445517  0.14044262
## MgK:3   -0.26366690  0.10359984  0.287507300  0.13983732
## Ca_:3   -0.94415789 -0.09383450  0.838555166 -0.05672192
## Mg_:3   -0.91737216 -0.08492086  0.815220165 -0.04321425
## K_:3    -0.29952713 -0.24656294  0.127805109 -0.26643903
## H_:3     0.88726030  0.31263889 -0.705088585  0.27971378
## m_:3     0.95081776 -0.07061948 -0.877122817 -0.09974861
## S:3      0.41125041  0.13655473 -0.296341553  0.11554531
## dp:3    -0.06777781 -0.03969541  0.032135227 -0.05573005
##                 V:3      CaMg:3       CaK:3       MgK:3       Ca_:3
## rp:3     0.12307037  0.02929475 -0.05199719 -0.07155763  0.11678346
## dens:3   0.26721576  0.13705896 -0.17770570 -0.19410253  0.25217229
## poro:3  -0.14499484 -0.22990105  0.07111839  0.09056313 -0.15821876
## clay:3  -0.27639097 -0.21269493  0.20890384  0.23350322 -0.26481088
## sand:3   0.27518379  0.17049469 -0.26144083 -0.27818738  0.25443720
## pH:3     0.96910243 -0.04999618  0.25780599  0.23696640  0.96552584
## pH_Ca:3  0.96490641 -0.04580954  0.23845260  0.21559722  0.96230793
## P:3      0.42668442  0.09743601 -0.15084274 -0.17040208  0.41323149
## K:3      0.28222258  0.15267247 -0.70918105 -0.71219417  0.20485710
## Ca_Mg:3  0.82944030 -0.13098501  0.37924718  0.35923993  0.84406520
## Ca:3     0.82596168 -0.06585622  0.36740960  0.33705642  0.84474652
## Mg:3     0.82138076 -0.28829565  0.40072508  0.40652408  0.82549765
## Al:3    -0.95211987  0.06845784 -0.27650094 -0.26366690 -0.94415789
## MO:3    -0.11600955 -0.07206170  0.10569528  0.10359984 -0.09383450
## base:3   0.83099389 -0.11371398  0.30744552  0.28750730  0.83855517
## CTC:3   -0.08040113 -0.09710425  0.14044262  0.13983732 -0.05672192
## V:3      1.00000000 -0.10917298  0.27946552  0.26327680  0.99282241
## CaMg:3  -0.10917298  1.00000000 -0.20808391 -0.34700491 -0.05380487
## CaK:3    0.27946552 -0.20808391  1.00000000  0.98565927  0.35684072
## MgK:3    0.26327680 -0.34700491  0.98565927  1.00000000  0.32787037
## Ca_:3    0.99282241 -0.05380487  0.35684072  0.32787037  1.00000000
## Mg_:3    0.97022669 -0.31671472  0.39061555  0.40423973  0.96033412
## K_:3     0.28846471  0.20190593 -0.75398259 -0.75682760  0.20349833
## H_:3    -0.96564666  0.08141722 -0.21826540 -0.19898496 -0.95495683
## m_:3    -0.93894467  0.17405935 -0.35282146 -0.34779561 -0.93278631
## S:3     -0.42323988  0.10283260  0.02782960  0.01266145 -0.40001453
## dp:3     0.10251494  0.14702006 -0.11970405 -0.16267654  0.10065937
##               Mg_:3        K_:3        H_:3        m_:3         S:3
## rp:3     0.11099413  0.09680156 -0.07691454 -0.13950125 -0.01848788
## dens:3   0.20896498  0.30131319 -0.32464907 -0.17489234 -0.48550344
## poro:3  -0.08902969 -0.09926917  0.18838955  0.06966558  0.33735467
## clay:3  -0.19496777 -0.34690665  0.34625262  0.16778760  0.51263250
## sand:3   0.19580975  0.39891453 -0.36271501 -0.14999473 -0.52014430
## pH:3     0.93025048  0.28762138 -0.93336256 -0.89033022 -0.39706604
## pH_Ca:3  0.92145864  0.29115938 -0.91341402 -0.89759981 -0.34098056
## P:3      0.36226265  0.33073189 -0.44409529 -0.28539139 -0.43263603
## K:3      0.14808482  0.90513545 -0.24512140 -0.28193685 -0.19475817
## Ca_Mg:3  0.82530917  0.05071955 -0.70319361 -0.87670203 -0.28811555
## Ca:3     0.80706024  0.06414097 -0.70187352 -0.86737868 -0.27969793
## Mg:3     0.85360278  0.01674627 -0.69236040 -0.88204900 -0.30301932
## Al:3    -0.91737216 -0.29952713  0.88726030  0.95081776  0.41125041
## MO:3    -0.08492086 -0.24656294  0.31263889 -0.07061948  0.13655473
## base:3   0.81522017  0.12780511 -0.70508858 -0.87712282 -0.29634155
## CTC:3   -0.04321425 -0.26643903  0.27971378 -0.09974861  0.11554531
## V:3      0.97022669  0.28846471 -0.96564666 -0.93894467 -0.42323988
## CaMg:3  -0.31671472  0.20190593  0.08141722  0.17405935  0.10283260
## CaK:3    0.39061555 -0.75398259 -0.21826540 -0.35282146  0.02782960
## MgK:3    0.40423973 -0.75682760 -0.19898496 -0.34779561  0.01266145
## Ca_:3    0.96033412  0.20349833 -0.95495683 -0.93278631 -0.40001453
## Mg_:3    1.00000000  0.13825731 -0.92607259 -0.93310835 -0.41272962
## K_:3     0.13825731  1.00000000 -0.33223314 -0.20716754 -0.24140090
## H_:3    -0.92607259 -0.33223314  1.00000000  0.83942734  0.42695095
## m_:3    -0.93310835 -0.20716754  0.83942734  1.00000000  0.40632807
## S:3     -0.41272962 -0.24140090  0.42695095  0.40632807  1.00000000
## dp:3     0.06040748  0.14262763 -0.10997783 -0.05702760 -0.05690559
##                 dp:3
## rp:3     0.122541266
## dens:3   0.241822477
## poro:3   0.237863913
## clay:3  -0.195506921
## sand:3   0.178326708
## pH:3     0.131407271
## pH_Ca:3  0.121848580
## P:3      0.180402104
## K:3      0.108874639
## Ca_Mg:3  0.023322380
## Ca:3     0.030732703
## Mg:3     0.004658533
## Al:3    -0.067777813
## MO:3    -0.039695406
## base:3   0.032135227
## CTC:3   -0.055730049
## V:3      0.102514944
## CaMg:3   0.147020063
## CaK:3   -0.119704046
## MgK:3   -0.162676539
## Ca_:3    0.100659366
## Mg_:3    0.060407480
## K_:3     0.142627628
## H_:3    -0.109977828
## m_:3    -0.057027596
## S:3     -0.056905590
## dp:3     1.000000000
layout(1)

#-----------------------------------------------------------------------
# Conjunto de variáveis criadas como função de outras.

# DANGER: VERIFICAR COM O MILSON PORQUE ESSAS VARIÁVEIS NÃO ESTÃO
# BATENDO COM O PREVISTO.

atrib[, list(Ca_Mg, Ca + Mg)]    # OK.
##      Ca_Mg  V2
##   1:   5.5 5.5
##   2:    NA  NA
##   3:   2.1 2.1
##   4:    NA  NA
##   5:   1.1 1.1
##  ---          
## 386:    NA  NA
## 387:   3.7 3.7
## 388:    NA  NA
## 389:   2.1 2.1
## 390:    NA  NA
atrib[, list(CaMg, Ca/Mg)]       # OK.
##      CaMg       V2
##   1: 2.67 2.666667
##   2:   NA       NA
##   3: 2.50 2.500000
##   4:   NA       NA
##   5: 2.67 2.666667
##  ---              
## 386:   NA       NA
## 387: 2.70 2.700000
## 388:   NA       NA
## 389: 2.50 2.500000
## 390:   NA       NA
atrib[, list(MgK, Mg/K)]         # FAIL.
##       MgK          V2
##   1: 6.01 0.015416238
##   2:   NA          NA
##   3: 3.04 0.007802341
##   4:   NA          NA
##   5: 1.73 0.004431315
##  ---                 
## 386:   NA          NA
## 387: 6.89 0.017667845
## 388:   NA          NA
## 389: 4.45 0.011406844
## 390:   NA          NA
atrib[, list(CaK, Ca/K)]         # FAIL.
##        CaK         V2
##   1: 16.03 0.04110997
##   2:    NA         NA
##   3:  7.61 0.01950585
##   4:    NA         NA
##   5:  4.61 0.01181684
##  ---                 
## 386:    NA         NA
## 387: 18.60 0.04770318
## 388:    NA         NA
## 389: 11.12 0.02851711
## 390:    NA         NA
atrib[, list(V, 100 * base/CTC)] # OK.
##          V       V2
##   1: 56.65 56.65025
##   2:    NA       NA
##   3: 30.24 30.26316
##   4:    NA       NA
##   5: 22.06 22.01040
##  ---               
## 386:    NA       NA
## 387: 60.60 60.62992
## 388:    NA       NA
## 389: 52.77 52.71868
## 390:    NA       NA
atrib[, list(Ca_, 100 * Ca/CTC)] # OK.
##       Ca_       V2
##   1: 39.4 39.40887
##   2:   NA       NA
##   3: 19.7 19.73684
##   4:   NA       NA
##   5: 13.9 13.86482
##  ---              
## 386:   NA       NA
## 387: 42.6 42.51969
## 388:   NA       NA
## 389: 35.4 35.46099
## 390:   NA       NA
atrib[, list(Mg_, 100 * Mg/CTC)] # OK.
##       Mg_        V2
##   1: 14.8 14.778325
##   2:   NA        NA
##   3:  7.9  7.894737
##   4:   NA        NA
##   5:  5.2  5.199307
##  ---               
## 386:   NA        NA
## 387: 15.8 15.748031
## 388:   NA        NA
## 389: 14.2 14.184397
## 390:   NA        NA
atrib[, list(K_, 100 * K/CTC)]   # FAIL.
##       K_        V2
##   1: 2.5  958.6207
##   2:  NA        NA
##   3: 2.6 1011.8421
##   4:  NA        NA
##   5: 3.0 1173.3102
##  ---              
## 386:  NA        NA
## 387: 2.3  891.3386
## 388:  NA        NA
## 389: 3.2 1243.4988
## 390:  NA        NA
atrib[, list(m_, 100 * Al/CTC)]  # FAIL. (o denominador é com CTC efetiva e não essa CTC é que é pH 7).
##        m_       V2
##   1:  0.0 0.000000
##   2:   NA       NA
##   3: 14.8 5.263158
##   4:   NA       NA
##   5: 28.2 8.665511
##  ---              
## 386:   NA       NA
## 387:  0.0 0.000000
## 388:   NA       NA
## 389:  0.0 0.000000
## 390:   NA       NA
# ATTENTION: a suspeita é que o problema está no K.

#-----------------------------------------------------------------------
# Remover as variáveis sintetizadas a partir das outras.

keep <- c("prod", "glic", "phos", "sulf", "LFF", "LFO", "HF", "pH",
          "pH_Ca", "P", "K", "Ca", "Mg", "Al", "MO", "CTC", "V", "S",
          "dp", "rp", "dens", "poro", "clay", "sand")

i <- sapply(sprintf("^%s:", keep),
            FUN = grep,
            x = names(atrib3))
i <- unlist(i, use.names = FALSE)
i
##  [1]  3  4  5  6  7  8  9 15 40 67 16 41 68 17 42 69 18 43 70 20 45
## [22] 72 21 46 73 47 74 22 48 75 24 50 77 25 51 78 33 60 87 34 61 88
## [43] 10 35 62 11 36 63 12 37 64 13 38 65 14 39 66
# Seleciona as variáveis "orgânicas" ou genuínas (sintaxe estranha).
atrib4 <- atrib3[, .SD, .SDcols = c(1:2, i)]
dim(atrib4)
## [1] 65 59
names(atrib4) <- sub(":", "", names(atrib4))
names(atrib4)
##  [1] "faz"    "tal"    "prod1"  "glic1"  "phos1"  "sulf1"  "LFF1"  
##  [8] "LFO1"   "HF1"    "pH1"    "pH2"    "pH3"    "pH_Ca1" "pH_Ca2"
## [15] "pH_Ca3" "P1"     "P2"     "P3"     "K1"     "K2"     "K3"    
## [22] "Ca1"    "Ca2"    "Ca3"    "Mg1"    "Mg2"    "Mg3"    "Al2"   
## [29] "Al3"    "MO1"    "MO2"    "MO3"    "CTC1"   "CTC2"   "CTC3"  
## [36] "V1"     "V2"     "V3"     "S1"     "S2"     "S3"     "dp1"   
## [43] "dp2"    "dp3"    "rp1"    "rp2"    "rp3"    "dens1"  "dens2" 
## [50] "dens3"  "poro1"  "poro2"  "poro3"  "clay1"  "clay2"  "clay3" 
## [57] "sand1"  "sand2"  "sand3"
#-----------------------------------------------------------------------
# Regressão múltipla.

m0 <- lm(prod1 ~ .,
         data = subset(atrib4, select = -c(faz, tal)))

par(mfrow = c(2, 2))
plot(m0)

layout(1)

# Nada é significativo.
summary(m0)$coefficients
##                  Estimate   Std. Error     t value  Pr(>|t|)
## (Intercept) -7.4884472574 51.844416972 -0.14444077 0.8943101
## glic1        0.0058897319  0.010164954  0.57941548 0.6029525
## phos1        0.0021400819  0.001816190  1.17833602 0.3236182
## sulf1        0.0046234169  0.009640972  0.47955919 0.6643312
## LFF1         0.1150339231  0.192080456  0.59888406 0.5914554
## LFO1         0.0488475102  0.172933896  0.28246348 0.7959552
## HF1          0.0405048404  0.161108576  0.25141331 0.8177325
## pH1          1.3822175207  3.773529100  0.36629306 0.7384544
## pH2          1.0310966276  1.609885194  0.64047836 0.5674255
## pH3          2.5179549277  3.284400152  0.76664073 0.4991007
## pH_Ca1       3.3195870650  3.637733371  0.91254271 0.4287683
## pH_Ca2       8.2017755672  5.043584937  1.62617973 0.2023855
## pH_Ca3       2.5835290024  3.517480073  0.73448291 0.5158564
## P1           0.0201393204  0.032279613  0.62390216 0.5769141
## P2          -0.0231520974  0.052807795 -0.43842197 0.6907317
## P3          -0.3570041174  0.327436666 -1.09029976 0.3553224
## K1           0.0317585141  0.017352278  1.83022163 0.1646334
## K2          -0.0420614071  0.021968019 -1.91466543 0.1514295
## K3           0.0842388671  0.046202628  1.82324841 0.1657823
## Ca1          2.9034322271  6.014395493  0.48274714 0.6623115
## Ca2         -4.9679922270  3.655887447 -1.35890185 0.2673194
## Ca3         -0.5569436594  3.968856871 -0.14032848 0.8972926
## Mg1         16.3392847467  8.200917929  1.99237267 0.1403603
## Mg2          5.5012644829  7.048301369  0.78050926 0.4920147
## Mg3         26.7728023921 15.568839774  1.71964018 0.1839873
## Al2          4.8738497998  5.635084316  0.86491160 0.4507091
## Al3          0.3571095741  4.760095554  0.07502151 0.9449202
## MO2         -0.3826211262  0.326478119 -1.17196560 0.3258142
## MO3          0.2972693334  0.193150961  1.53905179 0.2214164
## CTC1        -4.2477673060  3.722639610 -1.14106326 0.3366812
## CTC2         2.7028444550  1.737232826  1.55583317 0.2176013
## CTC3        -3.7524911391  1.792184740 -2.09380822 0.1273139
## V1          -0.7790318012  0.461230488 -1.68902929 0.1897961
## V2           0.0091100794  0.158528249  0.05746660 0.9577870
## V3          -0.5430038584  0.302699096 -1.79387341 0.1707246
## S1           0.0455134665  0.048331688  0.94168998 0.4158227
## S2          -0.0554279620  0.027242781 -2.03459263 0.1347463
## S3           0.0053522061  0.014162779  0.37790649 0.7306540
## dp1         -4.4525190830  2.820555250 -1.57859665 0.2125423
## dp2          2.4473919671  1.914589851  1.27828525 0.2910780
## dp3          0.3442945271  1.943944351  0.17711131 0.8707037
## rp1         -0.3665261428  0.315924720 -1.16016924 0.3299202
## rp2         -1.0720389477  0.675509615 -1.58700768 0.2107062
## rp3         -0.7830094166  0.618159588 -1.26667843 0.2946769
## dens1       -2.3641113884  1.799072960 -1.31407199 0.2802678
## dens2       -0.9016881629  2.181397667 -0.41335341 0.7071180
## dens3        4.2165829270  4.319731978  0.97612142 0.4009943
## poro1        3.0339641142  4.189274752  0.72422180 0.5212983
## poro2       -1.5533824213  1.564947840 -0.99260971 0.3940694
## poro3       -6.8664205227  4.448964183 -1.54337510 0.2204265
## clay1        0.0006833161  0.007210263  0.09476993 0.9304728
## clay2       -0.0112805832  0.009598776 -1.17521063 0.3246937
## clay3       -0.0076787936  0.008064316 -0.95219410 0.4112459
## sand1       -0.0035562612  0.011220941 -0.31693075 0.7720710
## sand2       -0.0184661724  0.021182716 -0.87175659 0.4474957
## sand3        0.0047512564  0.014656888  0.32416543 0.7670992
drop1(m0, test = "F")
## Single term deletions
## 
## Model:
## prod1 ~ glic1 + phos1 + sulf1 + LFF1 + LFO1 + HF1 + pH1 + pH2 + 
##     pH3 + pH_Ca1 + pH_Ca2 + pH_Ca3 + P1 + P2 + P3 + K1 + K2 + 
##     K3 + Ca1 + Ca2 + Ca3 + Mg1 + Mg2 + Mg3 + Al2 + Al3 + MO1 + 
##     MO2 + MO3 + CTC1 + CTC2 + CTC3 + V1 + V2 + V3 + S1 + S2 + 
##     S3 + dp1 + dp2 + dp3 + rp1 + rp2 + rp3 + dens1 + dens2 + 
##     dens3 + poro1 + poro2 + poro3 + clay1 + clay2 + clay3 + sand1 + 
##     sand2 + sand3
##        Df Sum of Sq     RSS     AIC F value Pr(>F)
## <none>              0.35539 -189.61               
## glic1   1   0.03977 0.39516 -185.35  0.3357 0.6030
## phos1   1   0.16448 0.51988 -169.17  1.3885 0.3236
## sulf1   1   0.02724 0.38264 -187.25  0.2300 0.6643
## LFF1    0   0.00000 0.35539 -189.61               
## LFO1    0   0.00000 0.35539 -189.61               
## HF1     0   0.00000 0.35539 -189.61               
## pH1     1   0.01589 0.37129 -189.03  0.1342 0.7385
## pH2     1   0.04860 0.40399 -184.05  0.4102 0.5674
## pH3     1   0.06963 0.42502 -181.06  0.5877 0.4991
## pH_Ca1  1   0.09865 0.45404 -177.16  0.8327 0.4288
## pH_Ca2  1   0.31327 0.66867 -154.32  2.6445 0.2024
## pH_Ca3  1   0.06391 0.41930 -181.86  0.5395 0.5159
## P1      1   0.04611 0.40151 -184.41  0.3893 0.5769
## P2      1   0.02277 0.37816 -187.95  0.1922 0.6907
## P3      1   0.14082 0.49622 -171.92  1.1888 0.3553
## K1      1   0.39682 0.75221 -147.37  3.3497 0.1646
## K2      1   0.43428 0.78968 -144.51  3.6659 0.1514
## K3      1   0.39380 0.74920 -147.61  3.3242 0.1658
## Ca1     1   0.02761 0.38300 -187.20  0.2330 0.6623
## Ca2     1   0.21876 0.57415 -163.31  1.8466 0.2673
## Ca3     1   0.00233 0.35773 -191.23  0.0197 0.8973
## Mg1     1   0.47025 0.82564 -141.88  3.9695 0.1404
## Mg2     1   0.07217 0.42756 -180.71  0.6092 0.4920
## Mg3     1   0.35032 0.70571 -151.14  2.9572 0.1840
## Al2     1   0.08862 0.44401 -178.48  0.7481 0.4507
## Al3     1   0.00067 0.35606 -191.50  0.0056 0.9449
## MO1     0   0.00000 0.35539 -189.61               
## MO2     1   0.16271 0.51810 -169.37  1.3735 0.3258
## MO3     1   0.28060 0.63600 -157.28  2.3687 0.2214
## CTC1    1   0.15424 0.50964 -170.34  1.3020 0.3367
## CTC2    1   0.28676 0.64215 -156.71  2.4206 0.2176
## CTC3    1   0.51935 0.87474 -138.47  4.3840 0.1273
## V1      1   0.33796 0.69335 -152.18  2.8528 0.1898
## V2      1   0.00039 0.35578 -191.55  0.0033 0.9578
## V3      1   0.38122 0.73661 -148.61  3.2180 0.1707
## S1      1   0.10505 0.46044 -176.33  0.8868 0.4158
## S2      1   0.49039 0.84578 -140.46  4.1396 0.1347
## S3      1   0.01692 0.37231 -188.87  0.1428 0.7307
## dp1     1   0.29521 0.65060 -155.94  2.4920 0.2125
## dp2     1   0.19357 0.54896 -165.96  1.6340 0.2911
## dp3     1   0.00372 0.35911 -191.00  0.0314 0.8707
## rp1     1   0.15945 0.51484 -169.74  1.3460 0.3299
## rp2     1   0.29836 0.65376 -155.65  2.5186 0.2107
## rp3     1   0.19007 0.54547 -166.34  1.6045 0.2947
## dens1   1   0.20456 0.55995 -164.79  1.7268 0.2803
## dens2   1   0.02024 0.37563 -188.34  0.1709 0.7071
## dens3   1   0.11287 0.46827 -175.34  0.9528 0.4010
## poro1   1   0.06213 0.41753 -182.11  0.5245 0.5213
## poro2   1   0.11672 0.47211 -174.86  0.9853 0.3941
## poro3   1   0.28218 0.63758 -157.13  2.3820 0.2204
## clay1   1   0.00106 0.35646 -191.44  0.0090 0.9305
## clay2   1   0.16361 0.51901 -169.27  1.3811 0.3247
## clay3   1   0.10741 0.46280 -176.03  0.9067 0.4112
## sand1   1   0.01190 0.36729 -189.67  0.1004 0.7721
## sand2   1   0.09003 0.44542 -178.29  0.7600 0.4475
## sand3   1   0.01245 0.36784 -189.58  0.1051 0.7671
# Modelo nulo.
m00 <- update(m0, formula = . ~ 1, data = model.frame(m0))

# Razão entre modelos encaixados.
anova(m00, m0)
## Analysis of Variance Table
## 
## Model 1: prod1 ~ 1
## Model 2: prod1 ~ glic1 + phos1 + sulf1 + LFF1 + LFO1 + HF1 + pH1 + pH2 + 
##     pH3 + pH_Ca1 + pH_Ca2 + pH_Ca3 + P1 + P2 + P3 + K1 + K2 + 
##     K3 + Ca1 + Ca2 + Ca3 + Mg1 + Mg2 + Mg3 + Al2 + Al3 + MO1 + 
##     MO2 + MO3 + CTC1 + CTC2 + CTC3 + V1 + V2 + V3 + S1 + S2 + 
##     S3 + dp1 + dp2 + dp3 + rp1 + rp2 + rp3 + dens1 + dens2 + 
##     dens3 + poro1 + poro2 + poro3 + clay1 + clay2 + clay3 + sand1 + 
##     sand2 + sand3
##   Res.Df    RSS Df Sum of Sq      F Pr(>F)
## 1     58 7.4221                           
## 2      3 0.3554 55    7.0667 1.0846 0.5637
# ATTENTION: Isso não é um bom sinal.

#-----------------------------------------------------------------------
# Stepwise.

m1 <- step(m0,
           direction = "both",
           trace = FALSE,
           k = log(nrow(atrib4)))

c(antes = length(coef(m0)), depois = length(coef(m1)))
##  antes depois 
##     57     50
# Razão entre modelos encaixados.
anova(m00, m1)
## Analysis of Variance Table
## 
## Model 1: prod1 ~ 1
## Model 2: prod1 ~ glic1 + phos1 + sulf1 + LFF1 + LFO1 + HF1 + pH1 + pH2 + 
##     pH3 + pH_Ca1 + pH_Ca2 + pH_Ca3 + P1 + P2 + P3 + K1 + K2 + 
##     K3 + Ca1 + Ca2 + Ca3 + Mg1 + Mg2 + Mg3 + Al2 + MO2 + MO3 + 
##     CTC1 + CTC2 + CTC3 + V1 + V3 + S1 + S2 + S3 + dp1 + dp2 + 
##     rp1 + rp2 + rp3 + dens1 + dens3 + poro1 + poro2 + poro3 + 
##     clay2 + clay3 + sand1 + sand2
##   Res.Df    RSS Df Sum of Sq      F  Pr(>F)  
## 1     58 7.4221                              
## 2      9 0.3844 49    7.0378 3.3632 0.02787 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# ATTENTION: Um pouco melhor.

#-----------------------------------------------------------------------
# Least Absolute Shrinkage and Selection Operator (LASSO).  Usa norma
# L1 que a penalização pela soma do valor absoluto dos coeficientes.

X <- model.matrix(m0)
y <- model.response(model.frame(m0))
str(X)
##  num [1:59, 1:57] 1 1 1 1 1 1 1 1 1 1 ...
##  - attr(*, "dimnames")=List of 2
##   ..$ : chr [1:59] "1" "2" "3" "4" ...
##   ..$ : chr [1:57] "(Intercept)" "glic1" "phos1" "sulf1" ...
##  - attr(*, "assign")= int [1:57] 0 1 2 3 4 5 6 7 8 9 ...
# library(lars)
# l0 <- lars(x = X, y = y, type = "lasso")
#
# methods(class = class(l0))
#
# coef(l0)
# summary(l0)
# plot(l0)

library(glmnet)

lambda <- exp(seq(10, -12, length = 100))

#--------------------------------------------
# Regressão Ridge.

l2 <- glmnet(x = X[, -1],
             y = y,
             alpha = 0,
             lambda = lambda)

cv_l2 <- cv.glmnet(x = X[, -1],
                   y = y,
                   alpha = 0)

plot(cv_l2)
abline(v = log(cv_l2$lambda.min), col = "green")

round(cbind(OLS = coef(m0),
            L2 = predict(l2,
                         s = cv_l2$lambda.min,
                         type = "coefficients")),
      digits = 4)
## 57 x 2 sparse Matrix of class "dgCMatrix"
##                 OLS       1
## (Intercept) -7.4884  3.6691
## glic1        0.0059  0.0006
## phos1        0.0021  0.0000
## sulf1        0.0046  0.0000
## LFF1         0.1150 -0.0013
## LFO1         0.0488 -0.0003
## HF1          0.0405  0.0005
## pH1          1.3822  0.0098
## pH2          1.0311  0.0168
## pH3          2.5180  0.0334
## pH_Ca1       3.3196  0.0091
## pH_Ca2       8.2018  0.0223
## pH_Ca3       2.5835  0.0370
## P1           0.0201 -0.0006
## P2          -0.0232  0.0001
## P3          -0.3570 -0.0034
## K1           0.0318  0.0004
## K2          -0.0421  0.0000
## K3           0.0842  0.0001
## Ca1          2.9034 -0.0040
## Ca2         -4.9680  0.0094
## Ca3         -0.5569  0.0140
## Mg1         16.3393 -0.0226
## Mg2          5.5013  0.0198
## Mg3         26.7728  0.0374
## Al2          4.8738 -0.0376
## Al3          0.3571 -0.0649
## MO1              NA -0.0001
## MO2         -0.3826  0.0005
## MO3          0.2973 -0.0009
## CTC1        -4.2478 -0.0021
## CTC2         2.7028 -0.0002
## CTC3        -3.7525 -0.0075
## V1          -0.7790  0.0002
## V2           0.0091  0.0008
## V3          -0.5430  0.0013
## S1           0.0455 -0.0015
## S2          -0.0554 -0.0007
## S3           0.0054  0.0002
## dp1         -4.4525 -0.1372
## dp2          2.4474  0.1408
## dp3          0.3443 -0.0036
## rp1         -0.3665 -0.0281
## rp2         -1.0720  0.0044
## rp3         -0.7830 -0.0056
## dens1       -2.3641 -0.0936
## dens2       -0.9017  0.0040
## dens3        4.2166  0.0124
## poro1        3.0340  0.1406
## poro2       -1.5534 -0.0207
## poro3       -6.8664 -0.1837
## clay1        0.0007  0.0000
## clay2       -0.0113  0.0000
## clay3       -0.0077  0.0000
## sand1       -0.0036  0.0000
## sand2       -0.0185  0.0000
## sand3        0.0048  0.0000
#--------------------------------------------
# Regressão LASSO.

l1 <- glmnet(x = X[, -1],
             y = y,
             alpha = 1,
             lambda = lambda)

cv_l1 <- cv.glmnet(x = X[, -1],
                   y = y,
                   alpha = 1)

plot(cv_l1)
abline(v = log(cv_l1$lambda.min), col = "green")

round(cbind(OLS = coef(m0),
            L1 = predict(l1,
                         s = cv_l1$lambda.min,
                         type = "coefficients")),
      digits = 4)
## 57 x 2 sparse Matrix of class "dgCMatrix"
##                 OLS       1
## (Intercept) -7.4884  5.1688
## glic1        0.0059  0.0013
## phos1        0.0021  .     
## sulf1        0.0046  .     
## LFF1         0.1150  .     
## LFO1         0.0488  .     
## HF1          0.0405  .     
## pH1          1.3822  .     
## pH2          1.0311  .     
## pH3          2.5180  .     
## pH_Ca1       3.3196  .     
## pH_Ca2       8.2018  .     
## pH_Ca3       2.5835  .     
## P1           0.0201 -0.0010
## P2          -0.0232  .     
## P3          -0.3570  .     
## K1           0.0318  0.0018
## K2          -0.0421  .     
## K3           0.0842  .     
## Ca1          2.9034  .     
## Ca2         -4.9680  .     
## Ca3         -0.5569  .     
## Mg1         16.3393  .     
## Mg2          5.5013  .     
## Mg3         26.7728  .     
## Al2          4.8738 -0.1212
## Al3          0.3571 -0.0776
## MO1              NA  .     
## MO2         -0.3826  .     
## MO3          0.2973  .     
## CTC1        -4.2478  .     
## CTC2         2.7028  .     
## CTC3        -3.7525 -0.0002
## V1          -0.7790  .     
## V2           0.0091  .     
## V3          -0.5430  0.0029
## S1           0.0455 -0.0008
## S2          -0.0554  .     
## S3           0.0054  .     
## dp1         -4.4525 -0.2900
## dp2          2.4474  .     
## dp3          0.3443  .     
## rp1         -0.3665 -0.1217
## rp2         -1.0720  .     
## rp3         -0.7830  .     
## dens1       -2.3641  .     
## dens2       -0.9017  .     
## dens3        4.2166  .     
## poro1        3.0340  .     
## poro2       -1.5534  .     
## poro3       -6.8664 -0.5643
## clay1        0.0007  .     
## clay2       -0.0113  .     
## clay3       -0.0077  .     
## sand1       -0.0036  .     
## sand2       -0.0185  .     
## sand3        0.0048  .
# Correlação entre valores observados e preditos.
cor(cbind(obs = y,
          ols = fitted(m0),
          l1 = predict(l1,
                       s = cv_l1$lambda.min,
                       newx = X[, -1],
                       type = "response"),
          l2 = predict(l2,
                       s = cv_l2$lambda.min,
                       newx = X[, -1],
                       type = "response")))
##           obs       ols         1         1
## obs 1.0000000 0.9757648 0.6639294 0.6165197
## ols 0.9757648 1.0000000 0.6804194 0.6318322
## 1   0.6639294 0.6804194 1.0000000 0.8711226
## 1   0.6165197 0.6318322 0.8711226 1.0000000
#-----------------------------------------------------------------------
# Árvore de regressão.

library(rpart)
library(rpart.plot)

t0 <- rpart(prod1 ~ ., data = model.frame(m0))
# summary(t1)
t0
## n= 59 
## 
## node), split, n, deviance, yval
##       * denotes terminal node
## 
##  1) root 59 7.4221060 4.128220  
##    2) pH_Ca3< 4.55 52 5.6315720 4.075365  
##      4) rp1>=1.31 28 2.7845230 3.963214  
##        8) P1>=30.9 11 1.4038800 3.774818 *
##        9) P1< 30.9 17 0.7375918 4.085118 *
##      5) rp1< 1.31 24 2.0839920 4.206208  
##       10) glic1< 48.1 15 0.8447153 4.076667 *
##       11) glic1>=48.1 9 0.5680349 4.422111 *
##    3) pH_Ca3>=4.55 7 0.5661189 4.520857 *
# Usa `minsplit` como tamanho mínimo para permitir a partição.
t1 <- rpart(prod1 ~ ., data = model.frame(m0),
            control = rpart.control(minsplit = 7, cp = 0.001))
# summary(t1)
t1
## n= 59 
## 
## node), split, n, deviance, yval
##       * denotes terminal node
## 
##   1) root 59 7.4221060000 4.128220  
##     2) V3< 31.75 53 5.6331920000 4.076132  
##       4) rp1>=3.2325 2 0.0808020000 3.471000 *
##       5) rp1< 3.2325 51 4.7913000000 4.099863  
##        10) V1< 48.17 11 1.3189950000 3.851545  
##          20) LFO1< 4.315 6 0.2344413000 3.597667 *
##          21) LFO1>=4.315 5 0.2337548000 4.156200 *
##        11) V1>=48.17 40 2.6075030000 4.168150  
##          22) rp2>=2.745 4 0.0503760000 3.782000 *
##          23) rp2< 2.745 36 1.8944080000 4.211056  
##            46) rp1>=1.585 14 0.3251877000 4.071143  
##              92) phos1< 192.9 3 0.0367280000 3.860000 *
##              93) phos1>=192.9 11 0.1182402000 4.128727  
##               186) clay3< 749.5 8 0.0637615000 4.085750  
##                 372) LFF1>=13.8 6 0.0147035000 4.047500 *
##                 373) LFF1< 13.8 2 0.0139445000 4.200500 *
##               187) clay3>=749.5 3 0.0002986667 4.243333 *
##            47) rp1< 1.585 22 1.1207620000 4.300091  
##              94) dp2< 2.685 11 0.1947309000 4.166909  
##               188) LFF1>=11.48 9 0.0495288900 4.114889  
##                 376) P1>=27.55 2 0.0087120000 3.996000 *
##                 377) P1< 27.55 7 0.0044708570 4.148857 *
##               189) LFF1< 11.48 2 0.0112500000 4.401000 *
##              95) dp2>=2.685 11 0.5358082000 4.433273  
##               190) poro1< 0.5825 9 0.1728816000 4.357778  
##                 380) HF1< 14.055 2 0.0006480000 4.170000 *
##                 381) HF1>=14.055 7 0.0815637100 4.411429  
##                   762) HF1>=20.425 5 0.0256828000 4.357200 *
##                   763) HF1< 20.425 2 0.0044180000 4.547000 *
##               191) poro1>=0.5825 2 0.0808020000 4.773000 *
##     3) V3>=31.75 6 0.3748913000 4.588333 *
# Visualização da árvore de regressão.
rpart.plot(t0)

rpart.plot(t1)

# Variáveis preditoras.
spl <- t0$splits[t0$splits[, "count"] > 0, ]
prd <- unique(rownames(spl)[seq(1, nrow(spl), by = 5)])
prd
## [1] "pH_Ca3" "rp1"    "P1"     "glic1"
# # Apenas teste.
# t2 <- rpart(prod1 ~ ., data = model.frame(m0)[, c("prod1", prd)])
# rpart.plot(t2)
# sum(residuals(t0)^2)
# sum(residuals(t2)^2)

# str(t0)
# t1$frame
# str(summary(t1))

plot(CP ~ nsplit, data = t1$cptable, type = "o")
abline(h = 0.025)

t2 <- prune(t1, cp = 0.025)
rpart.plot(t2)

# Variáveis preditoras.
spl <- t2$splits[t2$splits[, "count"] > 0, ]
prd <- unique(rownames(spl)[seq(1, nrow(spl), by = 5)])
prd
## [1] "V3"    "rp1"   "V1"    "LFO1"  "rp2"   "dp2"   "poro1"
cor(cbind(obs = y,
          m00 = fitted(m00),
          m0 = fitted(m0),
          t0 = predict(t0),
          t1 = predict(t1),
          t2 = predict(t2)))[1, ]
##         obs         m00          m0          t0          t1 
##  1.00000000 -0.01088224  0.97576484  0.66697498  0.91736834 
##          t2 
##  0.87435986
#-----------------------------------------------------------------------
# Partial Leasts Squares.

# QUESTION: é necessário padronizar as covariáveis para normal padrão?

library(pls)

ncol(atrib4)
## [1] 59
p0 <- plsr(prod1 ~ .,
           ncomp = 40,
           # data = scale(model.frame(m0)),
           data = model.frame(m0),
           validation = c("LOO", "CV", "none")[2])
summary(p0)
## Data:    X dimension: 59 56 
##  Y dimension: 59 1
## Fit method: kernelpls
## Number of components considered: 40
## 
## VALIDATION: RMSEP
## Cross-validated using 10 random segments.
##        (Intercept)  1 comps  2 comps  3 comps  4 comps  5 comps
## CV          0.3608   0.3577   0.3674   0.3500   0.3649   0.3780
## adjCV       0.3608   0.3575   0.3654   0.3489   0.3621   0.3738
##        6 comps  7 comps  8 comps  9 comps  10 comps  11 comps
## CV      0.3915   0.4123   0.4233   0.4366    0.4609    0.4767
## adjCV   0.3864   0.4058   0.4163   0.4285    0.4510    0.4660
##        12 comps  13 comps  14 comps  15 comps  16 comps  17 comps
## CV       0.4877    0.5113    0.5211    0.5356    0.5362    0.5632
## adjCV    0.4762    0.4982    0.5074    0.5205    0.5201    0.5441
##        18 comps  19 comps  20 comps  21 comps  22 comps  23 comps
## CV       0.5691    0.5495    0.5343    0.5158    0.5143    0.5154
## adjCV    0.5490    0.5314    0.5177    0.5011    0.4998    0.5000
##        24 comps  25 comps  26 comps  27 comps  28 comps  29 comps
## CV       0.5334    0.5384    0.5327    0.5347    0.5419    0.5547
## adjCV    0.5165    0.5206    0.5168    0.5190    0.5250    0.5362
##        30 comps  31 comps  32 comps  33 comps  34 comps  35 comps
## CV       0.5847    0.6583    0.7081    0.7419    0.7943    0.8397
## adjCV    0.5639    0.6333    0.6785    0.7098    0.7582    0.8010
##        36 comps  37 comps  38 comps  39 comps  40 comps
## CV       0.8873    0.9417    1.0133     1.078     1.128
## adjCV    0.8464    0.8978    0.9655     1.026     1.073
## 
## TRAINING: % variance explained
##        1 comps  2 comps  3 comps  4 comps  5 comps  6 comps
## X       86.955    92.70    96.65    97.28     97.8    98.30
## prod1    1.767    11.23    19.75    26.96     30.3    31.77
##        7 comps  8 comps  9 comps  10 comps  11 comps  12 comps
## X        98.59    99.02    99.13     99.27     99.46     99.59
## prod1    33.68    34.39    35.56     36.14     36.51     37.22
##        13 comps  14 comps  15 comps  16 comps  17 comps  18 comps
## X         99.72     99.78     99.83     99.87     99.89     99.90
## prod1     37.81     38.86     41.03     43.44     47.33     50.95
##        19 comps  20 comps  21 comps  22 comps  23 comps  24 comps
## X         99.92     99.93     99.95     99.97     99.97     99.99
## prod1     51.81     52.72     53.00     53.14     54.32     55.06
##        25 comps  26 comps  27 comps  28 comps  29 comps  30 comps
## X         99.99     99.99    100.00    100.00    100.00    100.00
## prod1     56.60     56.98     57.28     61.41     66.08     69.29
##        31 comps  32 comps  33 comps  34 comps  35 comps  36 comps
## X        100.00    100.00    100.00    100.00    100.00    100.00
## prod1     72.19     78.46     81.69     84.77     86.09     86.66
##        37 comps  38 comps  39 comps  40 comps
## X        100.00    100.00     100.0    100.00
## prod1     87.44     88.14      89.5     89.75
# Proporção explicada da variância.
par(mfrow = c(1, 2))
plot(explvar(p0), type = "o")
plot(explvar(p0), log = "y", type = "o")

layout(1)

# Gráfico da Root Mean Square Error of Prediction.
plot(RMSEP(p0))

# Gráficos dos scores.
plot(scores(p0))

plot(p0, plottype = "scores", comps = 1:4)
scoreplot(p0, comps = 1:4)

# Carregamentos.
loadings(p0)
## 
## Loadings:
##        Comp 1 Comp 2 Comp 3 Comp 4 Comp 5 Comp 6 Comp 7 Comp 8
## glic1          0.215         0.635 -0.201 -0.170 -0.382  0.316
## phos1         -1.284  0.986 -0.167                            
## sulf1                 0.118  0.209 -0.731 -0.206  0.208  0.405
## LFF1                                                          
## LFO1                                                          
## HF1                                                           
## pH1                                                           
## pH2                                                           
## pH3                                                           
## pH_Ca1                                                        
## pH_Ca2                                                        
## pH_Ca3                                                        
## P1                          -0.111               -0.342  0.136
## P2                                                            
## P3                                                            
## K1             0.372  0.167 -0.498  0.557        -0.257  0.392
## K2             0.172  0.163 -0.649  0.172 -0.367              
## K3             0.112        -0.412  0.127 -0.248  0.189       
## Ca1                                                           
## Ca2                                                           
## Ca3                                                           
## Mg1                                                           
## Mg2                                                           
## Mg3                                                           
## Al2                                                           
## Al3                                                           
## MO1                                                           
## MO2                                                           
## MO3                                                           
## CTC1                                                          
## CTC2                                                          
## CTC3                                                          
## V1                                                            
## V2                                                0.106  0.125
## V3                                                       0.140
## S1                                                            
## S2                                        -0.166              
## S3                                  0.174 -0.224 -0.177       
## dp1                                                           
## dp2                                                           
## dp3                                                           
## rp1                                                           
## rp2                                                           
## rp3                                                           
## dens1                                                         
## dens2                                                         
## dens3                                                         
## poro1                                                         
## poro2                                                         
## poro3                                                         
## clay1  -0.397  0.110        -0.162 -0.191  0.738 -0.818  0.677
## clay2  -0.408  0.426               -0.269  0.556 -0.242 -0.429
## clay3  -0.404  0.351        -0.134 -0.220  0.199  0.375 -0.330
## sand1   0.491         0.113        -0.350  0.377  0.155 -0.272
## sand2   0.483 -0.206        -0.131 -0.110  0.404 -0.243       
## sand3   0.461 -0.132               -0.146  0.466 -0.518       
##        Comp 9 Comp 10 Comp 11 Comp 12 Comp 13 Comp 14 Comp 15
## glic1  -0.140  0.330  -0.253  -0.373   0.507  -0.243         
## phos1                                                        
## sulf1  -0.161 -0.317   0.191   0.447  -0.376           0.107 
## LFF1                                          -0.278         
## LFO1                                                         
## HF1    -0.103 -0.131          -0.166           0.284         
## pH1                                                          
## pH2                                                          
## pH3                                                          
## pH_Ca1                                                       
## pH_Ca2                                                       
## pH_Ca3                                                       
## P1     -0.285  0.471   0.420  -0.458  -0.239   0.701  -0.168 
## P2      0.105  0.423                  -0.147          -0.300 
## P3                                                           
## K1     -0.363 -0.350   0.503   0.167  -0.198   0.101  -0.202 
## K2      0.210  0.229  -0.436           0.253  -0.104         
## K3      0.192  0.108  -0.409           0.109  -0.221         
## Ca1                                                          
## Ca2                                                          
## Ca3                                                          
## Mg1                                                          
## Mg2                                                          
## Mg3                                                          
## Al2                                                          
## Al3                                                          
## MO1                           -0.140                         
## MO2     0.131                                          0.297 
## MO3                                           -0.167   0.187 
## CTC1                                                         
## CTC2                                                         
## CTC3                                                         
## V1     -0.181                 -0.274  -0.121   0.150   0.243 
## V2     -0.117  0.254  -0.217  -0.197           0.505   0.341 
## V3             0.234  -0.139  -0.122  -0.246   0.155         
## S1            -0.106   0.179           0.125           0.204 
## S2      0.252 -0.515   0.353  -0.210   0.150  -0.229         
## S3      0.815 -0.785   0.588  -0.554                   0.118 
## dp1                                                          
## dp2                                                          
## dp3                                                          
## rp1                                                          
## rp2                                                          
## rp3                                                          
## dens1                                                        
## dens2                                                        
## dens3                                                        
## poro1                                                        
## poro2                                                        
## poro3                                                        
## clay1  -0.128         -0.143  -0.237   0.276          -0.264 
## clay2   0.489 -0.118  -0.191   0.575  -0.444   0.398         
## clay3  -0.139          0.545  -0.833   0.470  -0.767   0.485 
## sand1   0.243 -0.192   0.146  -0.491   0.271   0.589  -0.868 
## sand2                  0.133  -0.209   0.263  -0.249   0.642 
## sand3   0.126                  0.279  -0.257  -0.719   0.545 
##        Comp 16 Comp 17 Comp 18 Comp 19 Comp 20 Comp 21 Comp 22
## glic1                                                         
## phos1                                                         
## sulf1                                   0.114  -0.114         
## LFF1            0.393  -0.303   0.216   0.312          -0.378 
## LFO1            0.236  -0.130   0.187          -0.173  -0.125 
## HF1    -0.239  -0.418   0.681  -0.673                   0.236 
## pH1                                                           
## pH2                                                           
## pH3                                                           
## pH_Ca1                                                        
## pH_Ca2                                                        
## pH_Ca3                                                        
## P1             -0.328   0.196                          -0.351 
## P2      0.125   0.618  -0.174  -0.341                   0.709 
## P3                                                            
## K1                                                            
## K2     -0.151   0.207          -0.108   0.228  -0.186   0.176 
## K3      0.192  -0.501   0.163   0.246  -0.432   0.307  -0.237 
## Ca1                                                           
## Ca2                                                           
## Ca3                                                           
## Mg1                                                           
## Mg2                                                           
## Mg3                                                           
## Al2                                                           
## Al3                                                           
## MO1    -0.195   0.211   0.248  -0.270   0.334  -0.226  -0.267 
## MO2    -0.123   0.216  -0.120  -0.304   0.264  -0.305  -0.717 
## MO3    -0.172   0.221  -0.105  -0.377   0.806          -0.244 
## CTC1                                                          
## CTC2                                                   -0.130 
## CTC3                                    0.134                 
## V1      0.192   0.374  -0.479  -0.117                   0.300 
## V2     -0.488   0.342  -0.161          -0.249   0.212         
## V3                              0.361  -0.308   0.214         
## S1     -0.195          -0.164  -0.172  -0.112   0.525  -0.328 
## S2     -0.340   0.773  -0.157          -0.720   0.527  -0.391 
## S3             -0.367                   0.248  -0.253   0.315 
## dp1                                                           
## dp2                                                           
## dp3                                                           
## rp1                                                           
## rp2                                                           
## rp3                                                           
## dens1                                                         
## dens2                                                         
## dens3                                                         
## poro1                                                         
## poro2                                                         
## poro3                                                         
## clay1   0.195                                                 
## clay2  -0.285   0.170                                         
## clay3          -0.141                                         
## sand1   0.425   0.118  -0.103                          -0.267 
## sand2  -0.684   0.345  -0.179   0.324   0.105  -0.296   0.415 
## sand3   0.121  -0.414   0.287  -0.286  -0.152   0.230  -0.160 
##        Comp 23 Comp 24 Comp 25 Comp 26 Comp 27 Comp 28 Comp 29
## glic1   0.257  -0.106                                         
## phos1                                                         
## sulf1                                                         
## LFF1   -0.475                   0.508   0.115  -0.153         
## LFO1    0.297           0.324  -0.582  -1.010   0.526         
## HF1            -0.171   0.115           0.388  -0.158         
## pH1                                                           
## pH2                                                     0.192 
## pH3                                                           
## pH_Ca1                                                        
## pH_Ca2                                                        
## pH_Ca3                                                        
## P1      0.575  -0.116                                         
## P2             -0.271   0.106   0.123  -0.233   0.102         
## P3      0.424           0.135                  -0.261   0.186 
## K1      0.108                                                 
## K2     -0.841   0.439  -0.105  -0.176   0.437  -0.164         
## K3      1.233  -0.659   0.140   0.298  -0.498   0.173         
## Ca1                                                    -0.172 
## Ca2                                                    -0.245 
## Ca3                                                    -0.196 
## Mg1                                                           
## Mg2                                                           
## Mg3                                                           
## Al2                                                     0.134 
## Al3                                                           
## MO1    -0.123  -0.162   0.484          -0.507   0.215         
## MO2     0.868  -0.144                   0.584  -0.227         
## MO3     0.928  -0.164  -0.282          -0.150   0.129         
## CTC1                                           -0.104  -0.461 
## CTC2    0.152                           0.111          -0.232 
## CTC3    0.153                                          -0.243 
## V1      0.236  -0.253   0.182           0.311  -0.118         
## V2     -0.805   0.476  -0.400   0.438  -0.926   0.307         
## V3     -0.269           0.229  -0.460   1.298  -0.448         
## S1     -0.531           0.671  -0.320  -0.137                 
## S2      0.565          -0.278           0.221                 
## S3     -0.295                          -0.191                 
## dp1                                                           
## dp2                                                           
## dp3                                                           
## rp1    -0.221                                   0.259  -0.244 
## rp2                                                    -0.838 
## rp3                                            -0.265   0.839 
## dens1                                                         
## dens2                                                         
## dens3                                                         
## poro1                                                         
## poro2                                                         
## poro3                                                         
## clay1                                                         
## clay2   0.339  -0.203                                         
## clay3  -0.224   0.109                                         
## sand1                                                         
## sand2   0.422  -0.366   0.166           0.117                 
## sand3  -0.406   0.292  -0.145          -0.120                 
##        Comp 30 Comp 31 Comp 32 Comp 33 Comp 34 Comp 35 Comp 36
## glic1                                                         
## phos1                                                         
## sulf1                                                         
## LFF1                                                          
## LFO1                                                          
## HF1                                                           
## pH1                     0.200  -0.172   0.182                 
## pH2            -0.138           0.615  -0.626                 
## pH3                    -0.117          -0.235   0.139         
## pH_Ca1                                                 -0.108 
## pH_Ca2                          0.138                         
## pH_Ca3                 -0.132                   0.245         
## P1                                                            
## P2                                                            
## P3     -0.395   0.239                                         
## K1                                                            
## K2                                                            
## K3                                                            
## Ca1     0.124   0.126  -0.274   0.215           0.135         
## Ca2                    -0.196   0.103          -0.153         
## Ca3                    -0.291   0.133   0.164          -0.271 
## Mg1                                    -0.158                 
## Mg2                    -0.111          -0.129                 
## Mg3                             0.122                         
## Al2                                                    -0.174 
## Al3                            -0.174                         
## MO1                                                           
## MO2                                                    -0.133 
## MO3                    -0.140                           0.110 
## CTC1    0.227   0.378  -0.401   0.214  -0.192                 
## CTC2                    0.636  -0.391   0.268  -0.372   0.717 
## CTC3   -0.167           0.781  -0.268  -0.412   0.521  -0.606 
## V1                                                            
## V2                                                            
## V3                                                            
## S1                                                            
## S2                                                            
## S3                                                            
## dp1                    -0.203                   0.401  -0.167 
## dp2                                             0.243         
## dp3                             0.567          -0.275   0.264 
## rp1     0.413  -0.210                   0.108                 
## rp2     1.440  -0.706                                         
## rp3     0.526  -0.516                                         
## dens1                  -0.207   0.451  -0.407   0.325         
## dens2   0.178                          -0.361   0.123  -0.103 
## dens3   0.159                                          -0.309 
## poro1                          -0.223   0.426                 
## poro2                           0.100   0.592  -0.423  -0.641 
## poro3                                          -0.383   0.255 
## clay1                                                         
## clay2                                                         
## clay3                                                         
## sand1                                                         
## sand2                                                         
## sand3                                                         
##        Comp 37 Comp 38 Comp 39 Comp 40
## glic1                                 
## phos1                                 
## sulf1                                 
## LFF1                                  
## LFO1                                  
## HF1                                   
## pH1     0.626  -0.366  -0.124   0.390 
## pH2    -0.384   0.573  -0.537   0.592 
## pH3     0.160   0.211          -0.329 
## pH_Ca1  0.534  -0.520           0.284 
## pH_Ca2          0.195  -0.529  -0.241 
## pH_Ca3 -0.138   0.204  -0.120  -0.127 
## P1                                    
## P2                                    
## P3                                    
## K1                                    
## K2                                    
## K3                                    
## Ca1                                   
## Ca2     0.404          -0.236   0.106 
## Ca3     0.493  -0.250           0.108 
## Mg1                     0.326         
## Mg2     0.219                         
## Mg3                             0.192 
## Al2            -0.136                 
## Al3    -0.103   0.129          -0.196 
## MO1                                   
## MO2     0.104                         
## MO3                                   
## CTC1   -0.147   0.139  -0.157         
## CTC2   -0.614   0.128                 
## CTC3    0.321                         
## V1                                    
## V2                                    
## V3                                    
## S1                                    
## S2                                    
## S3                                    
## dp1    -0.536   0.239   0.163         
## dp2                    -0.187  -0.222 
## dp3     0.156  -0.188   0.299  -0.854 
## rp1                                   
## rp2                                   
## rp3     0.184                         
## dens1          -0.598   0.591         
## dens2   0.233  -0.103   0.302  -0.691 
## dens3                          -0.547 
## poro1  -0.280   0.126          -0.114 
## poro2   0.120   0.243   0.144         
## poro3   0.124  -0.208  -0.125   0.142 
## clay1                                 
## clay2                                 
## clay3                                 
## sand1                                 
## sand2                                 
## sand3                                 
## 
##                Comp 1 Comp 2 Comp 3 Comp 4 Comp 5 Comp 6 Comp 7
## SS loadings     1.185  2.262  1.108  1.406  1.305  1.794  1.714
## Proportion Var  0.021  0.040  0.020  0.025  0.023  0.032  0.031
## Cumulative Var  0.021  0.062  0.081  0.106  0.130  0.162  0.192
##                Comp 8 Comp 9 Comp 10 Comp 11 Comp 12 Comp 13
## SS loadings     1.340  1.533   1.931   1.882   2.559   1.450
## Proportion Var  0.024  0.027   0.034   0.034   0.046   0.026
## Cumulative Var  0.216  0.244   0.278   0.312   0.357   0.383
##                Comp 14 Comp 15 Comp 16 Comp 17 Comp 18 Comp 19
## SS loadings      2.861   2.342   1.461   2.683   1.230   1.437
## Proportion Var   0.051   0.042   0.026   0.048   0.022   0.026
## Cumulative Var   0.434   0.476   0.502   0.550   0.572   0.598
##                Comp 20 Comp 21 Comp 22 Comp 23 Comp 24 Comp 25
## SS loadings      2.024   1.192   2.330   6.850   1.433   1.363
## Proportion Var   0.036   0.021   0.042   0.122   0.026   0.024
## Cumulative Var   0.634   0.655   0.697   0.819   0.845   0.869
##                Comp 26 Comp 27 Comp 28 Comp 29 Comp 30 Comp 31
## SS loadings      1.286   5.138   1.070   2.080   2.888   1.099
## Proportion Var   0.023   0.092   0.019   0.037   0.052   0.020
## Cumulative Var   0.892   0.984   1.003   1.040   1.092   1.111
##                Comp 32 Comp 33 Comp 34 Comp 35 Comp 36 Comp 37
## SS loadings      1.646   1.453   1.713   1.337   1.760   2.405
## Proportion Var   0.029   0.026   0.031   0.024   0.031   0.043
## Cumulative Var   1.141   1.167   1.197   1.221   1.253   1.296
##                Comp 38 Comp 39 Comp 40
## SS loadings      1.599   1.446   2.492
## Proportion Var   0.029   0.026   0.045
## Cumulative Var   1.324   1.350   1.394
# Gráficos dos carregamentos.
v <- rownames(loadings(p0))
loadingplot(p0,
            # comps = 1:ncol(scores(p0)),
            comps = 1:3,
            xaxt = "n")
axis(side = 1,
     las = 2,
     at = seq_along(v),
     labels = v)
abline(v = seq_along(v), lty = 3, col = "gray")

# Só os carregamentos.
plot(p0, plottype = "correlation")

# Biplots.
biplot(p0, var.axes = TRUE)

biplot(p0, comps = c(1, 3), var.axes = TRUE)

par(mfrow = c(2, 2))
cex <- 0.5 + 3 * ((y - min(y))/diff(range(y)))
apply(combn(x = 1:3, m = 2),
      MARGIN = 2,
      FUN = function(comps) {
          plot(p0,
               comps = comps,
               plottype = "correlation",
               col = "red",
               # pch = 19,
               cex = cex)
      })
## NULL
layout(1)

# Correlação observados e preditos.
cor(cbind(obs = y,
          m0 = fitted(m0),
          p0 = predict(p0, comps = 1:3)))[1, ]
##       obs        m0     prod1 
## 1.0000000 0.9757648 0.4443793
# Coeficientes de regressão.
coef(p0, comps = 1)
## , , Comp 1
## 
##                prod1
## glic1   2.683943e-05
## phos1  -2.894308e-05
## sulf1   4.665106e-06
## LFF1   -1.529819e-06
## LFO1   -1.842272e-08
## HF1     2.113080e-06
## pH1     8.365887e-08
## pH2     2.255336e-07
## pH3     2.056076e-07
## pH_Ca1  8.333590e-08
## pH_Ca2  2.792477e-07
## pH_Ca3  2.061856e-07
## P1     -5.434301e-06
## P2      2.546518e-06
## P3      8.283338e-08
## K1      3.598813e-05
## K2      8.341255e-06
## K3      8.162407e-06
## Ca1     1.027801e-07
## Ca2     5.235575e-07
## Ca3     2.993916e-07
## Mg1     1.608717e-08
## Mg2     1.633220e-07
## Mg3     1.191647e-07
## Al2    -1.879144e-07
## Al3    -1.681652e-07
## MO1     5.648380e-07
## MO2     1.274867e-06
## MO3    -1.230178e-06
## CTC1    5.501644e-08
## CTC2    8.970678e-08
## CTC3   -3.188845e-07
## V1      2.360920e-06
## V2      9.820746e-06
## V3      8.831054e-06
## S1     -5.518266e-06
## S2     -9.088015e-06
## S3     -3.540160e-06
## dp1    -4.693562e-08
## dp2     2.988199e-08
## dp3     6.860223e-10
## rp1    -1.102630e-06
## rp2     1.611040e-07
## rp3     6.280225e-09
## dens1  -1.165565e-07
## dens2   1.944064e-08
## dens3   4.226264e-08
## poro1   7.471034e-08
## poro2  -3.685479e-09
## poro3  -5.531758e-08
## clay1  -6.527493e-05
## clay2  -3.147436e-05
## clay3  -3.960144e-05
## sand1   7.849613e-05
## sand2   6.038626e-05
## sand3   6.587699e-05
# Gráfico dos coeficientes de regressão.
plot(p0,
     plottype = "coef",
     # ncomp = 1:ncol(scores(p0)),
     ncomp = 1:3,
     xaxt = "n",
     legend = "topright")
axis(side = 1,
     las = 2,
     at = seq_len(nrow(loadings(p0))),
     labels = rownames(loadings(p0)))

# Predito vs observado.
plot(p0, ncomp = 3, asp = 1, line = TRUE)

# coef(p0)
# predplot(p0)
# residuals(p0)

selectNcomp(p0,
            method = c("onesigma", "randomization")[1],
            plot = TRUE)

## [1] 0
# TODO: ver https://cran.r-project.org/web/packages/pls/vignettes/pls-manual.pdf.

#-----------------------------------------------------------------------