Objectives

The objectives of this problem set is to orient you to a number of activities in R. And to conduct a thoughtful exercise in appreciating the importance of data visualization. For each question create a code chunk or text response that completes/answers the activity or question requested. Finally, upon completion name your final output .html file as: YourName_ANLY512-Section-Year-Semester.html and upload it to the “Problem Set 2” assignmenet on Moodle.

Questions

  1. Anscombes quartet is a set of 4 \(x,y\) data sets that were published by Francis Anscombe in a 1973 paper Graphs in statistical analysis. For this first question load the anscombe data that is part of the library(datasets) in R. And assign that data to a new object called data.
library(datasets)
data<- anscombe
data
##    x1 x2 x3 x4    y1   y2    y3    y4
## 1  10 10 10  8  8.04 9.14  7.46  6.58
## 2   8  8  8  8  6.95 8.14  6.77  5.76
## 3  13 13 13  8  7.58 8.74 12.74  7.71
## 4   9  9  9  8  8.81 8.77  7.11  8.84
## 5  11 11 11  8  8.33 9.26  7.81  8.47
## 6  14 14 14  8  9.96 8.10  8.84  7.04
## 7   6  6  6  8  7.24 6.13  6.08  5.25
## 8   4  4  4 19  4.26 3.10  5.39 12.50
## 9  12 12 12  8 10.84 9.13  8.15  5.56
## 10  7  7  7  8  4.82 7.26  6.42  7.91
## 11  5  5  5  8  5.68 4.74  5.73  6.89
  1. Summarise the data by calculating the mean, variance, for each column and the correlation between each pair (eg. x1 and y1, x2 and y2, etc) (Hint: use the fBasics() package!)
summary(data)
##        x1             x2             x3             x4    
##  Min.   : 4.0   Min.   : 4.0   Min.   : 4.0   Min.   : 8  
##  1st Qu.: 6.5   1st Qu.: 6.5   1st Qu.: 6.5   1st Qu.: 8  
##  Median : 9.0   Median : 9.0   Median : 9.0   Median : 8  
##  Mean   : 9.0   Mean   : 9.0   Mean   : 9.0   Mean   : 9  
##  3rd Qu.:11.5   3rd Qu.:11.5   3rd Qu.:11.5   3rd Qu.: 8  
##  Max.   :14.0   Max.   :14.0   Max.   :14.0   Max.   :19  
##        y1               y2              y3              y4        
##  Min.   : 4.260   Min.   :3.100   Min.   : 5.39   Min.   : 5.250  
##  1st Qu.: 6.315   1st Qu.:6.695   1st Qu.: 6.25   1st Qu.: 6.170  
##  Median : 7.580   Median :8.140   Median : 7.11   Median : 7.040  
##  Mean   : 7.501   Mean   :7.501   Mean   : 7.50   Mean   : 7.501  
##  3rd Qu.: 8.570   3rd Qu.:8.950   3rd Qu.: 7.98   3rd Qu.: 8.190  
##  Max.   :10.840   Max.   :9.260   Max.   :12.74   Max.   :12.500
cor1<-cor(data$x1,data$y1)
cor2<-cor(data$x2,data$y2)
cor3<-cor(data$x3,data$y3)
cor4<-cor(data$x4,data$y4)
cor1
## [1] 0.8164205
cor2
## [1] 0.8162365
cor3
## [1] 0.8162867
cor4
## [1] 0.8165214
  1. Create scatter plots for each \(x, y\) pair of data.
attach(data)
plot(x1, y1, main="correlation x1 & y1", xlab = "x1", ylab = "y1")

plot(x2, y2, main="correlation x2 & y2", xlab = "x2", ylab = "y2")

plot(x3, y3, main="correlation x3 & y3", xlab = "x3", ylab = "y3")

plot(x4, y4, main="correlation x4 & y4", xlab = "x4", ylab = "y4")

  1. Now change the symbols on the scatter plots to solid circles and plot them together as a 4 panel graphic
par(mfrow=c(2,2))
plot(x1, y1, main="correlation x1 & y1", xlab = "x1", ylab = "y1",pch=20)
plot(x2, y2, main="correlation x2 & y2", xlab = "x2", ylab = "y2",pch=20)
plot(x3, y3, main="correlation x3 & y3", xlab = "x3", ylab = "y3",pch=20)
plot(x4, y4, main="correlation x4 & y4", xlab = "x4", ylab = "y4",pch=20)

  1. Now fit a linear model to each data set using the lm() function.
lm1 <- lm(data$y1~data$x1, data=data)
lm2 <- lm(data$y2~data$x2, data=data)
lm3 <- lm(data$y3~data$x3, data=data)
lm4 <- lm(data$y4~data$x4, data=data)
  1. Now combine the last two tasks. Create a four panel scatter plot matrix that has both the data points and the regression lines. (hint: the model objects will carry over chunks!)
par(mfrow=c(2,2))
plot(x1, y1, main="correlation x1 & y1", xlab = "x1", ylab = "y1",pch=20)
abline(lm1)
plot(x2, y2, main="correlation x2 & y2", xlab = "x2", ylab = "y2",pch=20)
abline(lm2)
plot(x3, y3, main="correlation x3 & y3", xlab = "x3", ylab = "y3",pch=20)
abline(lm3)
plot(x4, y4, main="correlation x4 & y4", xlab = "x4", ylab = "y4",pch=20)
abline(lm4)

  1. Now compare the model fits for each model object.
library(stargazer)
## 
## Please cite as:
##  Hlavac, Marek (2015). stargazer: Well-Formatted Regression and Summary Statistics Tables.
##  R package version 5.2. http://CRAN.R-project.org/package=stargazer
stargazer(lm1,lm2,lm3,lm4, type = "html", header = FALSE)
Dependent variable:
y1 y2 y3 y4
(1) (2) (3) (4)
x1 0.500***
(0.118)
x2 0.500***
(0.118)
x3 0.500***
(0.118)
x4 0.500***
(0.118)
Constant 3.000** 3.001** 3.002** 3.002**
(1.125) (1.125) (1.124) (1.124)
Observations 11 11 11 11
R2 0.667 0.666 0.666 0.667
Adjusted R2 0.629 0.629 0.629 0.630
Residual Std. Error (df = 9) 1.237 1.237 1.236 1.236
F Statistic (df = 1; 9) 17.990*** 17.966*** 17.972*** 18.003***
Note: p<0.1; p<0.05; p<0.01
  1. In text, summarize the lesson of Anscombe’s Quartet and what it says about the value of data visualization.

although the statiscal values of the 4 datasets are relatively similar, the graphs are completely different which shows the importance of data visualization in understanding patterns of different data