X=c(15.50,23.75,8.00,17.00,5.50,19.00,24.00,2.50,7.50,11.00,13.00,3.75,25.00,9.75,22.00,18.00,6.00,12.50,2.00,21.50)

Y=c(2158.70,1678.15,2316.00,2061.30,2207.50,1708.30,1784.70,2575.00,2357.90,2256.70,2165.20,2399.55,1779.80,2336.75,1765.30,2053.50,2414.40,2200.50,2654.20,1753.70)
N=20
P=2
Model=lm(Y ~ X)
summary(Model)
## 
## Call:
## lm(formula = Y ~ X)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -215.98  -50.68   28.74   66.61  106.76 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 2627.822     44.184   59.48  < 2e-16 ***
## X            -37.154      2.889  -12.86 1.64e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 96.11 on 18 degrees of freedom
## Multiple R-squared:  0.9018, Adjusted R-squared:  0.8964 
## F-statistic: 165.4 on 1 and 18 DF,  p-value: 1.643e-10
names(Model)
##  [1] "coefficients"  "residuals"     "effects"       "rank"         
##  [5] "fitted.values" "assign"        "qr"            "df.residual"  
##  [9] "xlevels"       "call"          "terms"         "model"
Model$residuals
##           1           2           3           4           5           6 
##  106.758301  -67.274574  -14.593631   65.088687 -215.977609 -213.604131 
##           7           8           9          10          11          12 
##   48.563824   40.061618    8.729573   37.567141   20.374323  -88.946393 
##          13          14          15          16          17          18 
##   80.817415   71.175153  -45.143358   94.442278    9.499187   37.097528 
##          19          20 
##  100.684823  -75.320154
Model$df.residual
## [1] 18
Y_Est=fitted.values(Model)
Y_Est
##        1        2        3        4        5        6        7        8 
## 2051.942 1745.425 2330.594 1996.211 2423.478 1921.904 1736.136 2534.938 
##        9       10       11       12       13       14       15       16 
## 2349.170 2219.133 2144.826 2488.496 1698.983 2265.575 1810.443 1959.058 
##       17       18       19       20 
## 2404.901 2163.402 2553.515 1829.020
Residuals=residuals(Model)
Residuals
##           1           2           3           4           5           6 
##  106.758301  -67.274574  -14.593631   65.088687 -215.977609 -213.604131 
##           7           8           9          10          11          12 
##   48.563824   40.061618    8.729573   37.567141   20.374323  -88.946393 
##          13          14          15          16          17          18 
##   80.817415   71.175153  -45.143358   94.442278    9.499187   37.097528 
##          19          20 
##  100.684823  -75.320154
SCRes=sum((Y-Y_Est)^2)
gl_SCRes = N-P
s2=SCRes/gl_SCRes
Fuente=c("regresión","Residual","Total")
Fuente
## [1] "regresión" "Residual"  "Total"
SCTotal=sum((Y-mean(Y))^2)

gl_SCTotal= N-1
SCReg=sum((Y_Est-mean(Y))^2)
gl_SCReg=1
Fuente=c("regresión","Residual","Total")
suma_cuadrados=c(SCReg,SCRes,SCTotal)
suma_cuadrados
## [1] 1527482.7  166254.9 1693737.6
GL=c(gl_SCReg,gl_SCRes,gl_SCTotal)
GL
## [1]  1 18 19
cuadrados_medios=c(SCReg/gl_SCReg,SCRes/gl_SCRes,NA)
cuadrados_medios
## [1] 1527482.743    9236.381          NA
fo=c(cuadrados_medios[1]/cuadrados_medios[2],NA,NA)
fo
## [1] 165.3768       NA       NA
Tabla=cbind(Fuente,suma_cuadrados,GL,cuadrados_medios,fo)
Tabla
##      Fuente      suma_cuadrados     GL   cuadrados_medios   fo                
## [1,] "regresión" "1527482.74330802" "1"  "1527482.74330802" "165.376757703329"
## [2,] "Residual"  "166254.858066981" "18" "9236.38100372114" NA                
## [3,] "Total"     "1693737.601375"   "19" NA                 NA