4 單一迴歸變數的線性迴歸

4.1 Simple Linear Regression

簡單線性模型 Yi=β0+β1Xi+equation.

X為自變數(independent variable),Y為因變數(dependent variable)

β0為截距,β1為斜率

注意此圖不是由(0,0)開始


4.2 估計線性迴歸模型的係數

在實務上,母體迴歸線的截距β0和斜率β1是未知的。因此,我們必須利用資料來估計這兩個未知參數。

範例:師生比為因變數(dependent variable),平均考試成績為自變數(independent variable)

產生師生比、平均考試成績

CASchools$STR <- CASchools$students/CASchools$teachers

CASchools$score <- (CASchools$read + CASchools$math)/2

一些基本統計量:

mean() (計算所提供數字的算術平均值)

sd() (計算樣本標準差)

quantile() (傳回資料的指定樣本分位數量)

avg_STR <- mean(CASchools$STR)
avg_score <- mean(CASchools$score)

sd_STR <- sd(CASchools$STR)
sd_score <- sd(CASchools$score)

uantiles <- c(0.10, 0.25, 0.4, 0.5, 0.6, 0.75, 0.9)
quant_STR <- quantile(CASchools$STR, quantiles)
quant_score <- quantile(CASchools$score, quantiles)

DistributionSummary <- data.frame(Average = c(avg_STR, avg_score),

StandardDeviation = c(sd_STR, sd_score),
quantile = rbind(quant_STR, quant_score))

用data.frame 方式寫出呈現

Average             StandardDeviation       quantile.10.           quantile.25.       quantile.40.
quant_STR                     19.64043                       1.891812                 17.3486             18.58236                 19.26618
quant_score                  654.15655                      19.053347              630.3950          640.05000             649.06999
quantile.50.                 quantile.60.            quantile.75.            quantile.90.
quant_STR                      19.72321                        20.0783                  20.87181                21.86741
quant_score                   654.45000                   659.4000                666.66249            678.85999

plot(score ~ STR,
data = CASchools,
main = “Scatterplot of Test Score and STR”,
xlab = “STR (X)”,
ylab = “Test Score (Y)”)

#觀察值在師生比和考試成績的散佈圖

由散佈圖可預期在較大的班級,平均分數可能會較低。


最小平方法(OLS)

Yi=β0+β1Xi+equation. =bo + b1 xi + ei

最小平方法及,求得上式bo 、b1 使得誤差平方(∑e^2)最小

b1=Sxy/Sxx ,b0 = Yˉ – b1 * Xˉ  (回歸線必會經過X,Y平均)

Sxy=(XiXˉ)(YiYˉ),Sxx=(XiXˉ)^2

beta_1 <- sum((STR – mean(STR)) * (score – mean(score))) / sum((STR – mean(STR))^2)

beta_0 <- mean(score) – beta_1 * mean(STR)

#beta_1 =-2.279808

#beta_0 =698.9329

linear_model <- lm(score ~ STR, data = CASchools)

Coefficients:
(Intercept)    STR

698.93         -2.28

注意:lm(X~Y ,data =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))

abline(linear_model)

計量經濟學作業 U4 簡單迴歸模型、OLS 估計量