Session set

## ggplot2   knitr 
##    TRUE    TRUE

Dataset

dat = read.csv("diego.csv", dec = "," , sep="\t", na = ".", header = TRUE)
names(dat)
##  [1] "cont_flor"  "parche"     "alt_gas"    "lai_prim"   "psmac_prim" "pse_prim"   "nmac_prim" 
##  [8] "lai_oto"    "mac_oto"    "nvos_ver"   "superv"
dat[,-c(1:2)] <-round(dat[,-c(1:2)],2) #the "-1" excludes column 1

dat
##    cont_flor parche alt_gas lai_prim psmac_prim pse_prim nmac_prim lai_oto mac_oto nvos_ver superv
## 1         cf   alto   29.73     3.91       2.53     8.60      2275    2.41    2275       98     96
## 2         cf  medio   21.40     1.57       1.39     5.76      3647    2.05    2686      373     63
## 3         cf   bajo   13.60     0.58       0.80     3.69      1588    0.90     627      176     28
## 4         cf   alto   29.80     4.17       2.41     8.63      3275    2.90    2431     1569     26
## 5         cf  medio   21.93     1.34       1.01     4.95      3882    1.90    1941      294     42
## 6         cf   bajo   13.33     0.73       0.87     3.45      1941    0.79    1667      216     75
## 7         cf   alto   23.67     3.42       1.99     7.56      4843    2.83      NA       NA     NA
## 8         cf  medio   14.80     1.28       1.47     4.91      3510    2.00    2275     1157     32
## 9         cf   bajo    8.20     0.87       0.95     3.76      1980    1.14     725      216     26
## 10        cf   alto   23.93     3.32       3.03     8.61      2569    3.69    1216       20     NA
## 11        cf  medio   16.67     1.08       1.22     4.20      3000    1.88      NA       NA     NA
## 12        cf   bajo   10.80     0.39       0.93     3.39      2039    0.87      NA       NA     NA
## 13       ncf   alto   35.80     4.95       2.68     9.56      2059    4.12    1725       98     32
## 14       ncf  medio   21.73     1.66       1.01     5.52      4137    1.38    2314      333     48
## 15       ncf   bajo      NA       NA         NA       NA        NA    0.69      NA       NA     NA
## 16       ncf   alto   32.93     4.78       3.83     9.53      2922    3.01      NA       NA     NA
## 17       ncf  medio   25.67     2.24       2.22     6.22      3176    2.09      NA       NA     NA
## 18       ncf   bajo   15.33     1.22       1.25     3.98      2882    1.03      NA       NA     NA
## 19       ncf   alto   31.27     4.75       2.74     9.07      2980    3.13    2176      157     68
## 20       ncf  medio   20.07     1.93       0.98     5.44      3275    1.88    2314      471     56
## 21       ncf   bajo    9.47     0.57       0.71     3.03      2333    0.67     804      176     27
str(dat)
## 'data.frame':    21 obs. of  11 variables:
##  $ cont_flor : Factor w/ 2 levels "cf","ncf": 1 1 1 1 1 1 1 1 1 1 ...
##  $ parche    : Factor w/ 3 levels "alto","bajo",..: 1 3 2 1 3 2 1 3 2 1 ...
##  $ alt_gas   : num  29.7 21.4 13.6 29.8 21.9 ...
##  $ lai_prim  : num  3.91 1.57 0.58 4.17 1.34 0.73 3.42 1.28 0.87 3.32 ...
##  $ psmac_prim: num  2.53 1.39 0.8 2.41 1.01 0.87 1.99 1.47 0.95 3.03 ...
##  $ pse_prim  : num  8.6 5.76 3.69 8.63 4.95 3.45 7.56 4.91 3.76 8.61 ...
##  $ nmac_prim : num  2275 3647 1588 3275 3882 ...
##  $ lai_oto   : num  2.41 2.05 0.9 2.9 1.9 0.79 2.83 2 1.14 3.69 ...
##  $ mac_oto   : num  2275 2686 627 2431 1941 ...
##  $ nvos_ver  : num  98 373 176 1569 294 ...
##  $ superv    : num  96 63 28 26 42 75 NA 32 26 NA ...

Explora

# panel.smooth function is built in.
# panel.cor puts correlation in upper panels, size proportional to correlation

panel.cor <- function(x, y, digits=2, prefix="", cex.cor, ...)
{
    usr <- par("usr"); on.exit(par(usr))
    par(usr = c(0, 1, 0, 1))
    r <- abs(cor(x, y))
    txt <- format(c(r, 0.123456789), digits=digits)[1]
    txt <- paste(prefix, txt, sep="")
    if(missing(cex.cor)) cex.cor <- 0.8/strwidth(txt)
    text(0.5, 0.5, txt, cex = cex.cor * r)
}
 
# Plot #2: same as above, but add loess smoother in lower and correlation in upper
#names(dat)
pairs(~alt_gas + lai_prim + psmac_prim + pse_prim + nmac_prim + lai_oto + mac_oto + nvos_ver  + superv,  data=dat[-15,-2],
      lower.panel=panel.smooth, upper.panel=panel.cor, 
      pch=20, main="Correlation plot")

Ej 1

names(dat)
##  [1] "cont_flor"  "parche"     "alt_gas"    "lai_prim"   "psmac_prim" "pse_prim"   "nmac_prim" 
##  [8] "lai_oto"    "mac_oto"    "nvos_ver"   "superv"
ggplot(dat, aes(x = alt_gas, y = lai_prim, colour=cont_flor)) +  
        geom_point() +
        stat_smooth(method="lm", se=T)  

        #facet_grid(~parche)  
        #labs(x="a", y="Ry")
mod1 <- lm(lai_prim ~ alt_gas * cont_flor, data=dat)
summary(mod1)
## 
## Call:
## lm(formula = lai_prim ~ alt_gas * cont_flor, data = dat)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.07071 -0.36277  0.03703  0.40197  0.89744 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          -1.483579   0.510473  -2.906   0.0103 *  
## alt_gas               0.177578   0.025295   7.020 2.89e-06 ***
## cont_florncf         -0.234542   0.813411  -0.288   0.7768    
## alt_gas:cont_florncf  0.008852   0.035448   0.250   0.8060    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.5989 on 16 degrees of freedom
##   (1 observation deleted due to missingness)
## Multiple R-squared:  0.8787, Adjusted R-squared:  0.8559 
## F-statistic: 38.62 on 3 and 16 DF,  p-value: 1.481e-07
#plot(mod1)