Texto

# codigo
library(ggplot2)
# Importar los datos
anscombe <- read.csv2("anscombe.csv")

# Imprimir la estructura de datos
str(anscombe)
## 'data.frame':    44 obs. of  3 variables:
##  $ Set: int  1 1 1 1 1 1 1 1 1 1 ...
##  $ X  : int  10 8 13 9 11 14 6 4 12 7 ...
##  $ Y  : num  8.04 6.95 7.58 8.81 8.33 ...
summary(anscombe)
##       Set             X            Y         
##  Min.   :1.00   Min.   : 4   Min.   : 3.100  
##  1st Qu.:1.75   1st Qu.: 7   1st Qu.: 6.117  
##  Median :2.50   Median : 8   Median : 7.520  
##  Mean   :2.50   Mean   : 9   Mean   : 7.501  
##  3rd Qu.:3.25   3rd Qu.:11   3rd Qu.: 8.748  
##  Max.   :4.00   Max.   :19   Max.   :12.740
head(anscombe)
##   Set  X    Y
## 1   1 10 8.04
## 2   1  8 6.95
## 3   1 13 7.58
## 4   1  9 8.81
## 5   1 11 8.33
## 6   1 14 9.96
tail(anscombe)
##    Set  X     Y
## 39   4  8  7.04
## 40   4  8  5.25
## 41   4 19 12.50
## 42   4  8  5.56
## 43   4  8  7.91
## 44   4  8  6.89
# Convierto de numerico a categorico
anscombe$Set <- as.factor(anscombe$Set)
str(anscombe)
## 'data.frame':    44 obs. of  3 variables:
##  $ Set: Factor w/ 4 levels "1","2","3","4": 1 1 1 1 1 1 1 1 1 1 ...
##  $ X  : int  10 8 13 9 11 14 6 4 12 7 ...
##  $ Y  : num  8.04 6.95 7.58 8.81 8.33 ...
# Subconjuntos
uno <- subset(anscombe, Set=="1")
dos <- subset(anscombe, Set=="2")
tres <- subset(anscombe, Set=="3")
cuatro <- subset(anscombe, Set=="4")

# Promed. Varian. Correl. para UNO
XProm <- mean(uno$X)
YProm <- mean (uno$Y)
Xvar <- var(uno$X)
Yvar <- var(uno$Y)
Corr <- cor(uno$X, uno$Y)
# Se guardan en un dataset
SummaryStats <- data.frame(XProm, YProm, Xvar, Yvar, Corr)
SummaryStats
##   XProm    YProm Xvar     Yvar      Corr
## 1     9 7.500909   11 4.127269 0.8164205
# Promed. Varian. Correl. para DOS
XProm <- mean(dos$X)
YProm <- mean (dos$Y)
Xvar <- var(dos$X)
Yvar <- var(dos$Y)
Corr <- cor(dos$X, dos$Y)


# Promed. Varian. Correl. para TRES
XProm <- mean(tres$X)
YProm <- mean (tres$Y)
Xvar <- var(tres$X)
Yvar <- var(tres$Y)
Corr <- cor(tres$X, tres$Y)


install.packages("ggplot2")
## Warning: package 'ggplot2' is in use and will not be installed
library(ggplot2)

# Canvas sobre el que vamos a dibujar
# aesthetics
plotAns <- ggplot(anscombe,aes(X,Y, color = Set))
# Diagrama de lineas
plotAns <- plotAns + geom_point()
# Regresion lineal
plotAns <- plotAns + geom_smooth(method=lm, se=FALSE)
# promedio X
plotAns <- plotAns + geom_vline (aes ( xintercept = SummaryStats[1,1]))
# promedio Y
plotAns <- plotAns + geom_hline (aes ( yintercept = SummaryStats[1,2]))
plotAns
## `geom_smooth()` using formula 'y ~ x'

# facetas
plotAns <- plotAns + facet_grid(. ~ Set)
plotAns
## `geom_smooth()` using formula 'y ~ x'

Esta es la conclusión de mi análisis