Calculate covariance

N <- nrow(CASchools)

x <- CASchools$STR
y <- CASchools$score

x_bar <- mean(x)
y_bar <- mean(y)

cov_xy <- sum((x - x_bar)*(y - y_bar)) / (N -1)
print(cov_xy)
## [1] -8.159323

Now calculate Pearson’s r

r <- cov_xy / (sd(x)*sd(y))
print(r)
## [1] -0.2263627

Calculate the t-statistic

t_r <- r * sqrt(N -2) / sqrt(1 - r^2)
print(t_r)
## [1] -4.751327