Las
paginas 193~197 de Experimentación en Agricultura exponen la correlación de
Pearson (r). Para eludir
argumentos espurios, asegúrense de leer el numeral 2 de la página 196.
Visualizar la relación entre variables ayuda a comprender mejor interacciones y resultados de correlación, la Figura 14.1 (página 193) muestra cómo cambian los valores de r, al separarse o unirse los puntos.
Códigos
en R
#***********************************************************
# EXPERIMENTACIÓN EN AGRICULTURA
# Fernández Escobar, R.; Trapero, A.; Domínguez, J. 2010
# CAPÍTULO 14: CORRELACIÓN LINEAL (páginas 193 - 197)
#************************************************************
# Importar datos de la hoja de cálculo 2 de Excel
library(xlsx)
nitrogeno <- read.xlsx("C:/Users/Administrator/Desktop/tabla 14.1.xlsx", 2)
knitr::kable(nitrogeno)
GRUPO | X1 | X2 |
---|---|---|
1 | 390.6 | 1.79 |
2 | 376.7 | 1.58 |
3 | 524.9 | 2.20 |
4 | 502.8 | 2.52 |
5 | 371.4 | 1.60 |
6 | 494.8 | 2.61 |
7 | 1042.6 | 4.24 |
8 | 1168.9 | 5.12 |
attach(nitrogeno)
# Eliminando "GRUPO" de tabla
nitrogeno <- data.frame(X1, X2)
knitr::kable(nitrogeno)
X1 | X2 |
---|---|
390.6 | 1.79 |
376.7 | 1.58 |
524.9 | 2.20 |
502.8 | 2.52 |
371.4 | 1.60 |
494.8 | 2.61 |
1042.6 | 4.24 |
1168.9 | 5.12 |
# Matrix de diagrama de dispersión simple
source("C:/Users/Administrator/Desktop/panel.pearson.r")
pairs(nitrogeno,
main = "Matrix de diagrama de dispersión y Correlación de Pearson",
pch = 21, upper.panel=panel.pearson)
# Matrix de diagrama de dispersión usando 'ggplot2'
library(ggplot2)
ggplot(nitrogeno, aes(X1, X2)) +
geom_point(shape = 21,
colour = "blue",
fill = "white",
size = 6,
stroke = 6) +
labs(title = "Diagrama de dispersión y Correlación de Pearson") +
ylab("% N en hoja") +
xlab("mg N/planta")
# Matrix de diagrama de dispersión usando 'GGally'
library(GGally)
ggpairs(nitrogeno)
# Correlación Producto-Momento de Pearson
cor(nitrogeno, method="pearson") # Matrix
## X1 X2
## X1 1.0000000 0.9851747
## X2 0.9851747 1.0000000
cor(X1, X2, method="pearson") # Valor de correlación
## [1] 0.9851747
cor.test(X1, X2, method="pearson") #Correlación con nivel de significancia
##
## Pearson's product-moment correlation
##
## data: X1 and X2
## t = 14.067, df = 6, p-value = 8.056e-06
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.9173497 0.9974157
## sample estimates:
## cor
## 0.9851747
# Correlación usando el paquete 'Hmisc'
library(Hmisc)
rcorr(as.matrix(nitrogeno))
## X1 X2
## X1 1.00 0.99
## X2 0.99 1.00
##
## n= 8
##
##
## P
## X1 X2
## X1 0
## X2 0
rcorr(X1, X2, type="pearson") # 'type=' puede ser Correlación de Pearson o Spearman
## x y
## x 1.00 0.99
## y 0.99 1.00
##
## n= 8
##
##
## P
## x y
## x 0
## y 0
Códigos
en SAS
/***********************************************************
EXPERIMENTACIÓN EN AGRICULTURA
Fernández
Escobar, R.; Trapero, A.; Domínguez, J. 2010
CAPÍTULO 14:
CORRELACIÓN LINEAL (páginas 193 - 197)
************************************************************/
DATA nitrogeno;
INPUT GRUPO X1 X2;
LABEL
GRUPO = 'Grupos de 5 plantas'
X1 = 'mg N/planta'
X2 = '% N en hoja';
DATALINES;
1 390.6 1.79
2 376.7 1.58
3 524.9 2.20
4 502.8 2.52
5 371.4 1.60
6 494.8 2.61
7 1042.6 4.24
8 1168.9 5.12
;
ODS HTML;
ODS RTF FILE = 'C:\Users\Administrator\Desktop\SASoutput-CORRELACION.rtf' STYLE=
JOURNAL;
ODS
GRAPHICS ON;
* Imprimir datos
originales;
PROC PRINT DATA =
nitrogeno;
RUN;
* Gráfico de dispersión (opción 1, empleando
'scattmat');
%include 'C:\Users\Administrator\Desktop\scattmat.sas'; *MACRO;
%scattmat(nitrogeno, X1 X2);
* Gráfico de dispersión (opción 2, empleando
'insight');
PROC INSIGHT
DATA = nitrogeno;
SCATTER X1
X2 *
X1 X2;
RUN;
* Gráfico de dispersión (opción 3, empleando
'gplot');
PROC GPLOT DATA =
nitrogeno;
PLOT
X1*X2;
TITLE 'Matrix de
Correlación';
RUN;
* Correlación (Opción 1);
PROC CORR DATA =
nitrogeno;
TITLE 'Matrix
de Correlación';
RUN;
* Correlación (Opción 2);
PROC CORR DATA =
nitrogeno;
VAR X1
X2;
RUN;
ODS
GRAPHICS OFF;
ODS RTF CLOSE;
ODS HTML CLOSE;
-------------------------------------------------------------------------------
Excel
emplea las funciones =CORREL(B2:B9,C2:C9), =PEARSON(B2:B9,C2:C9), o Correlation del ToolPak.
En los
archivos adjuntos, además de los datos y los códigos completos mostrados arriba,
también incluimos un Macro (scattmat) para SAS y una función (panel.pearson) para R, ambos ofrecen
otra alternativa de visualización. Deben descargarlos y colocarlos sobre el escritorio de su ordenador para poder correr análisis.
Excel: tabla 14.1.xlsx
SAS : capitulo 14.sas, scattmat.sas
No hay comentarios:
Publicar un comentario