In this handout, I use ChatGPT 4.0 and the KeyMate.AI Search plugin to synthesize the information from the textbook, give examples, and create R code. All prompts are exact, but some of the output may be modified for correctness.

Hanck, Arnold, Gerber, and Schmelzer (2023). Introduction to Econometrics with R. https://www.econometrics-with-r.org/index.html. This book is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Prompt

Synthesize the information in this website. Include all relevant formulas and definitions. Also create examples utilizing R to demonstrate the concepts.

https://www.econometrics-with-r.org/4.2-estimating-the-coefficients-of-the-linear-regression-model.html#the-ordinary-least-squares-estimator

Key Concepts and Formulas

  1. OLS Estimators: Ordinary Least Squares (OLS) is used to find the best-fitting line by minimizing the sum of squared errors. The OLS estimators for the slope and intercept in a simple linear regression model are:

\[ \hat{\beta}_1 = \frac{\sum_{i=1}^{n} (X_i - \overline{X})(Y_i - \overline{Y})}{\sum_{i=1}^{n} (X_i - \overline{X})^2} \] \[ \hat{\beta}_0 = \overline{Y} - \hat{\beta}_1 \overline{X} \]

  1. Predicted Values and Residuals: The predicted values (\(\hat{Y}_i\)) and residuals (\(\hat{u}_i\)) are calculated as:

\[ \hat{Y}_i = \hat{\beta}_0 + \hat{\beta}_1 X_i \] \[ \hat{u}_i = Y_i - \hat{Y}_i \]

R Examples

Here are some R examples to demonstrate the concepts:

  1. Installing and Loading the AER Package
# Install the AER package (once)
#install.packages("AER")
# Load the AER package
library(AER)
  1. Loading the California School Dataset
# Load the dataset
data(CASchools)

# compute STR and append it to CASchools
CASchools$STR <- CASchools$students/CASchools$teachers 

# compute TestScore and append it to CASchools
CASchools$score <- (CASchools$read + CASchools$math)/2 
  1. Computing OLS Estimators Manually
# Compute beta_1_hat
beta_1_hat <- sum((CASchools$STR - mean(CASchools$STR)) * (CASchools$score - mean(CASchools$score))) / sum((CASchools$STR - mean(CASchools$STR))^2)
# Compute beta_0_hat
beta_0_hat <- mean(CASchools$score) - beta_1_hat * mean(CASchools$STR)
  1. Using lm() Function for Regression Analysis
# Estimate the model
linear_model <- lm(score ~ STR, data = CASchools)
  1. Seeing Regression Output
summary(linear_model)

Call:
lm(formula = score ~ STR, data = CASchools)

Residuals:
    Min      1Q  Median      3Q     Max 
-47.727 -14.251   0.483  12.822  48.540 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 698.9329     9.4675  73.825  < 2e-16 ***
STR          -2.2798     0.4798  -4.751 2.78e-06 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 18.58 on 418 degrees of freedom
Multiple R-squared:  0.05124,   Adjusted R-squared:  0.04897 
F-statistic: 22.58 on 1 and 418 DF,  p-value: 2.783e-06
  1. Scatter Plot of Data
# plot the data
plot(score ~ STR, 
     data = CASchools,
     main = "Scatterplot of Test Score and STR", 
     xlab = "STR (X)",
     ylab = "Test Score (Y)",
     xlim = c(10, 30),
     ylim = c(600, 720))

# add the regression line
abline(linear_model) 

LS0tDQp0aXRsZTogIklFUiBDaGFwdGVycyA0LjEgU3VtbWFyeSINCmF1dGhvcjogIkRyLiBTZWxieS1MZWFjaCINCmRhdGU6ICJgciBTeXMuRGF0ZSgpYCINCm91dHB1dDogaHRtbF9ub3RlYm9vayANCi0tLQ0KDQo8c3R5bGU+DQogICAgLyogU3R5bGluZyBmb3IgaDEgaGVhZGVycyAqLw0KICAgIGgxIHsNCiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7ICAgICAgIC8qIEJvbGQgKi8NCiAgICAgICAgY29sb3I6IGRhcmtibHVlOyAgICAgICAgLyogRGFyayBibHVlIGNvbG9yICovDQogICAgfQ0KICAgIC8qIFN0eWxpbmcgZm9yIGgyIGhlYWRlcnMgKi8NCiAgICBoMiB7DQogICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyANCiAgICB9DQoNCiAgICAvKiBTdHlsaW5nIGZvciBoMyBoZWFkZXJzICovDQogICAgaDMgew0KICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7ICAgICAvKiBJdGFsaWMgKi8NCiAgICB9DQo8L3N0eWxlPg0KDQoNCkluIHRoaXMgaGFuZG91dCwgSSB1c2UgQ2hhdEdQVCA0LjAgYW5kIHRoZSBLZXlNYXRlLkFJIFNlYXJjaCBwbHVnaW4gdG8gc3ludGhlc2l6ZSB0aGUgaW5mb3JtYXRpb24gZnJvbSB0aGUgdGV4dGJvb2ssIGdpdmUgZXhhbXBsZXMsIGFuZCBjcmVhdGUgUiBjb2RlLiBBbGwgcHJvbXB0cyBhcmUgZXhhY3QsIGJ1dCBzb21lIG9mIHRoZSBvdXRwdXQgbWF5IGJlIG1vZGlmaWVkIGZvciBjb3JyZWN0bmVzcy4gDQoNCkhhbmNrLCBBcm5vbGQsIEdlcmJlciwgYW5kIFNjaG1lbHplciAoMjAyMykuIEludHJvZHVjdGlvbiB0byBFY29ub21ldHJpY3Mgd2l0aCBSLiBodHRwczovL3d3dy5lY29ub21ldHJpY3Mtd2l0aC1yLm9yZy9pbmRleC5odG1sLiBUaGlzIGJvb2sgaXMgbGljZW5zZWQgdW5kZXIgdGhlIENyZWF0aXZlIENvbW1vbnMgQXR0cmlidXRpb24tTm9uQ29tbWVyY2lhbC1TaGFyZUFsaWtlIDQuMCBJbnRlcm5hdGlvbmFsIExpY2Vuc2UuDQoNCiMjIFByb21wdA0KU3ludGhlc2l6ZSB0aGUgaW5mb3JtYXRpb24gaW4gdGhpcyB3ZWJzaXRlLiBJbmNsdWRlIGFsbCByZWxldmFudCBmb3JtdWxhcyBhbmQgZGVmaW5pdGlvbnMuIEFsc28gY3JlYXRlIGV4YW1wbGVzIHV0aWxpemluZyBSIHRvIGRlbW9uc3RyYXRlIHRoZSBjb25jZXB0cy4gDQoNCmh0dHBzOi8vd3d3LmVjb25vbWV0cmljcy13aXRoLXIub3JnLzQuMi1lc3RpbWF0aW5nLXRoZS1jb2VmZmljaWVudHMtb2YtdGhlLWxpbmVhci1yZWdyZXNzaW9uLW1vZGVsLmh0bWwjdGhlLW9yZGluYXJ5LWxlYXN0LXNxdWFyZXMtZXN0aW1hdG9yDQoNCiMjIyMgS2V5IENvbmNlcHRzIGFuZCBGb3JtdWxhcw0KDQoxLiAqKk9MUyBFc3RpbWF0b3JzKio6IE9yZGluYXJ5IExlYXN0IFNxdWFyZXMgKE9MUykgaXMgdXNlZCB0byBmaW5kIHRoZSBiZXN0LWZpdHRpbmcgbGluZSBieSBtaW5pbWl6aW5nIHRoZSBzdW0gb2Ygc3F1YXJlZCBlcnJvcnMuIFRoZSBPTFMgZXN0aW1hdG9ycyBmb3IgdGhlIHNsb3BlIGFuZCBpbnRlcmNlcHQgaW4gYSBzaW1wbGUgbGluZWFyIHJlZ3Jlc3Npb24gbW9kZWwgYXJlOg0KDQpcWw0KXGhhdHtcYmV0YX1fMSA9IFxmcmFje1xzdW1fe2k9MX1ee259IChYX2kgLSBcb3ZlcmxpbmV7WH0pKFlfaSAtIFxvdmVybGluZXtZfSl9e1xzdW1fe2k9MX1ee259IChYX2kgLSBcb3ZlcmxpbmV7WH0pXjJ9DQpcXQ0KXFsNClxoYXR7XGJldGF9XzAgPSBcb3ZlcmxpbmV7WX0gLSBcaGF0e1xiZXRhfV8xIFxvdmVybGluZXtYfQ0KXF0NCg0KMi4gKipQcmVkaWN0ZWQgVmFsdWVzIGFuZCBSZXNpZHVhbHMqKjogVGhlIHByZWRpY3RlZCB2YWx1ZXMgKFwoIFxoYXR7WX1faSBcKSkgYW5kIHJlc2lkdWFscyAoXCggXGhhdHt1fV9pIFwpKSBhcmUgY2FsY3VsYXRlZCBhczoNCg0KXFsNClxoYXR7WX1faSA9IFxoYXR7XGJldGF9XzAgKyBcaGF0e1xiZXRhfV8xIFhfaQ0KXF0NClxbDQpcaGF0e3V9X2kgPSBZX2kgLSBcaGF0e1l9X2kNClxdDQoNCiMjIyMgUiBFeGFtcGxlcw0KDQpIZXJlIGFyZSBzb21lIFIgZXhhbXBsZXMgdG8gZGVtb25zdHJhdGUgdGhlIGNvbmNlcHRzOg0KDQoxLiAqKkluc3RhbGxpbmcgYW5kIExvYWRpbmcgdGhlIEFFUiBQYWNrYWdlKioNCg0KYGBge1J9DQojIEluc3RhbGwgdGhlIEFFUiBwYWNrYWdlIChvbmNlKQ0KI2luc3RhbGwucGFja2FnZXMoIkFFUiIpDQojIExvYWQgdGhlIEFFUiBwYWNrYWdlDQpsaWJyYXJ5KEFFUikNCmBgYA0KDQoyLiAqKkxvYWRpbmcgdGhlIENhbGlmb3JuaWEgU2Nob29sIERhdGFzZXQqKg0KDQpgYGB7Un0NCiMgTG9hZCB0aGUgZGF0YXNldA0KZGF0YShDQVNjaG9vbHMpDQoNCiMgY29tcHV0ZSBTVFIgYW5kIGFwcGVuZCBpdCB0byBDQVNjaG9vbHMNCkNBU2Nob29scyRTVFIgPC0gQ0FTY2hvb2xzJHN0dWRlbnRzL0NBU2Nob29scyR0ZWFjaGVycyANCg0KIyBjb21wdXRlIFRlc3RTY29yZSBhbmQgYXBwZW5kIGl0IHRvIENBU2Nob29scw0KQ0FTY2hvb2xzJHNjb3JlIDwtIChDQVNjaG9vbHMkcmVhZCArIENBU2Nob29scyRtYXRoKS8yIA0KDQpgYGANCg0KMy4gKipDb21wdXRpbmcgT0xTIEVzdGltYXRvcnMgTWFudWFsbHkqKg0KDQpgYGB7Un0NCiMgQ29tcHV0ZSBiZXRhXzFfaGF0DQpiZXRhXzFfaGF0IDwtIHN1bSgoQ0FTY2hvb2xzJFNUUiAtIG1lYW4oQ0FTY2hvb2xzJFNUUikpICogKENBU2Nob29scyRzY29yZSAtIG1lYW4oQ0FTY2hvb2xzJHNjb3JlKSkpIC8gc3VtKChDQVNjaG9vbHMkU1RSIC0gbWVhbihDQVNjaG9vbHMkU1RSKSleMikNCiMgQ29tcHV0ZSBiZXRhXzBfaGF0DQpiZXRhXzBfaGF0IDwtIG1lYW4oQ0FTY2hvb2xzJHNjb3JlKSAtIGJldGFfMV9oYXQgKiBtZWFuKENBU2Nob29scyRTVFIpDQpgYGANCg0KNC4gKipVc2luZyBsbSgpIEZ1bmN0aW9uIGZvciBSZWdyZXNzaW9uIEFuYWx5c2lzKioNCg0KYGBge1J9DQojIEVzdGltYXRlIHRoZSBtb2RlbA0KbGluZWFyX21vZGVsIDwtIGxtKHNjb3JlIH4gU1RSLCBkYXRhID0gQ0FTY2hvb2xzKQ0KYGBgDQoNCg0KNS4gKipTZWVpbmcgUmVncmVzc2lvbiBPdXRwdXQqKg0KDQpgYGB7cn0NCnN1bW1hcnkobGluZWFyX21vZGVsKQ0KYGBgDQoNCjYuICoqU2NhdHRlciBQbG90IG9mIERhdGEgKioNCg0KYGBge3J9DQojIHBsb3QgdGhlIGRhdGENCnBsb3Qoc2NvcmUgfiBTVFIsIA0KICAgICBkYXRhID0gQ0FTY2hvb2xzLA0KICAgICBtYWluID0gIlNjYXR0ZXJwbG90IG9mIFRlc3QgU2NvcmUgYW5kIFNUUiIsIA0KICAgICB4bGFiID0gIlNUUiAoWCkiLA0KICAgICB5bGFiID0gIlRlc3QgU2NvcmUgKFkpIiwNCiAgICAgeGxpbSA9IGMoMTAsIDMwKSwNCiAgICAgeWxpbSA9IGMoNjAwLCA3MjApKQ0KDQojIGFkZCB0aGUgcmVncmVzc2lvbiBsaW5lDQphYmxpbmUobGluZWFyX21vZGVsKSANCmBgYA0KDQo=