getwd()
[1] "/cloud/project"

[1]“/cloud/project”

launch<-read.csv("challenger2.csv")
View(launch)
#Estimate beta mannually
b<-cov(launch$temperature,launch$distress_ct)/var(launch$temperature)
b
[1] -0.03364796
#estimate alpha manually
a<-mean(launch$distress_ct)-b*mean((launch$temperature))
a
[1] 2.814585
#Let us get the correlation between temperature and distress
r<-cor(launch$temperature,launch$distress_ct)
#computing the slope using correlation
r*(sd(launch$distress_ct)/sd(launch$temperature))
[1] -0.03364796
model<-lm(distress_ct~temperature,data = launch)
model

Call:
lm(formula = distress_ct ~ temperature, data = launch)

Coefficients:
(Intercept)  temperature  
    2.81458     -0.03365  

the values obtained vida the liniar regresion model are very similar to the ones that we got manually in alpha and beta

summary(model)

Call:
lm(formula = distress_ct ~ temperature, data = launch)

Residuals:
    Min      1Q  Median      3Q     Max 
-1.0649 -0.4929 -0.2573  0.3052  1.7090 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)  
(Intercept)  2.81458    1.24629   2.258   0.0322 *
temperature -0.03365    0.01815  -1.854   0.0747 .
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.7076 on 27 degrees of freedom
Multiple R-squared:  0.1129,    Adjusted R-squared:  0.08004 
F-statistic: 3.436 on 1 and 27 DF,  p-value: 0.07474
#creating a SL Function
reg <- function(y, x) {
  # Ensure x is a matrix
  x <- as.matrix(x)
  
  # Add the intercept term to x
  x <- cbind(1, x)  # 1 is the intercept term
  
  # Solve for the regression coefficients using the normal equation
  b <- solve(t(x) %*% x) %*% t(x) %*% y
  
  # Assign column name to the result
  colnames(b) <- "estimate"
  
  # Print the regression coefficients
  print(b)
}
str(launch)
'data.frame':   29 obs. of  4 variables:
 $ distress_ct         : int  0 1 0 0 0 0 0 0 1 1 ...
 $ temperature         : int  66 70 69 68 67 72 73 70 57 63 ...
 $ field_check_pressure: int  50 50 50 50 50 50 100 100 200 200 ...
 $ flight_num          : int  1 2 3 4 5 6 7 8 9 10 ...
reg(y=launch$distress_ct,x=launch[2:4])
                          estimate
                      2.239817e+00
temperature          -3.124185e-02
field_check_pressure -2.586765e-05
flight_num            2.762455e-02
summary(model)

Call:
lm(formula = distress_ct ~ temperature, data = launch)

Residuals:
    Min      1Q  Median      3Q     Max 
-1.0649 -0.4929 -0.2573  0.3052  1.7090 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)  
(Intercept)  2.81458    1.24629   2.258   0.0322 *
temperature -0.03365    0.01815  -1.854   0.0747 .
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.7076 on 27 degrees of freedom
Multiple R-squared:  0.1129,    Adjusted R-squared:  0.08004 
F-statistic: 3.436 on 1 and 27 DF,  p-value: 0.07474
model<-lm(distress_ct ~ temperature + field_check_pressure + flight_num, data = launch)
model

Call:
lm(formula = distress_ct ~ temperature + field_check_pressure + 
    flight_num, data = launch)

Coefficients:
         (Intercept)           temperature  field_check_pressure  
           2.240e+00            -3.124e-02            -2.587e-05  
          flight_num  
           2.762e-02  
#we obtained the same values
summary (model)

Call:
lm(formula = distress_ct ~ temperature + field_check_pressure + 
    flight_num, data = launch)

Residuals:
    Min      1Q  Median      3Q     Max 
-1.2744 -0.3335 -0.1657  0.2975  1.5284 

Coefficients:
                       Estimate Std. Error t value Pr(>|t|)  
(Intercept)           2.240e+00  1.267e+00   1.767   0.0894 .
temperature          -3.124e-02  1.787e-02  -1.748   0.0927 .
field_check_pressure -2.587e-05  2.383e-03  -0.011   0.9914  
flight_num            2.762e-02  1.798e-02   1.537   0.1369  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.6926 on 25 degrees of freedom
Multiple R-squared:  0.2132,    Adjusted R-squared:  0.1188 
F-statistic: 2.259 on 3 and 25 DF,  p-value: 0.1063
#there isn't enough evidence to reject the null with any of the coefficients, even they might affect.
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayBhY3Rpdml0eSA3IgpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKLS0tCgoKCmBgYHtyfQpnZXR3ZCgpCmBgYAoKWzFdIi9jbG91ZC9wcm9qZWN0IgoKYGBge3J9CmBgYAoKCmBgYHtyfQpsYXVuY2g8LXJlYWQuY3N2KCJjaGFsbGVuZ2VyMi5jc3YiKQpgYGAKYGBge3J9ClZpZXcobGF1bmNoKSAjdGhlIG5ldyB3aW5kb3dzIGRvbid0IGFsbG93IHRvIHB1Ymxpc2gKYGBgCgpgYGB7cn0KI0VzdGltYXRlIGJldGEgbWFubnVhbGx5CmI8LWNvdihsYXVuY2gkdGVtcGVyYXR1cmUsbGF1bmNoJGRpc3RyZXNzX2N0KS92YXIobGF1bmNoJHRlbXBlcmF0dXJlKQpiCmBgYApgYGB7cn0KI2VzdGltYXRlIGFscGhhIG1hbnVhbGx5CmE8LW1lYW4obGF1bmNoJGRpc3RyZXNzX2N0KS1iKm1lYW4oKGxhdW5jaCR0ZW1wZXJhdHVyZSkpCmEKYGBgCgpgYGB7cn0KI0xldCB1cyBnZXQgdGhlIGNvcnJlbGF0aW9uIGJldHdlZW4gdGVtcGVyYXR1cmUgYW5kIGRpc3RyZXNzCnI8LWNvcihsYXVuY2gkdGVtcGVyYXR1cmUsbGF1bmNoJGRpc3RyZXNzX2N0KQpgYGAKCmBgYHtyfQojY29tcHV0aW5nIHRoZSBzbG9wZSB1c2luZyBjb3JyZWxhdGlvbgpyKihzZChsYXVuY2gkZGlzdHJlc3NfY3QpL3NkKGxhdW5jaCR0ZW1wZXJhdHVyZSkpCmBgYApgYGB7cn0KbW9kZWw8LWxtKGRpc3RyZXNzX2N0fnRlbXBlcmF0dXJlLGRhdGEgPSBsYXVuY2gpCm1vZGVsCmBgYAojIHRoZSB2YWx1ZXMgb2J0YWluZWQgdmlkYSB0aGUgbGluaWFyIHJlZ3Jlc2lvbiBtb2RlbCBhcmUgdmVyeSBzaW1pbGFyIHRvIHRoZSBvbmVzIHRoYXQgd2UgZ290IG1hbnVhbGx5IGluIGFscGhhIGFuZCBiZXRhIAoKYGBge3J9CnN1bW1hcnkobW9kZWwpCmBgYApgYGB7cn0KI2NyZWF0aW5nIGEgU0wgRnVuY3Rpb24KcmVnIDwtIGZ1bmN0aW9uKHksIHgpIHsKICAjIEVuc3VyZSB4IGlzIGEgbWF0cml4CiAgeCA8LSBhcy5tYXRyaXgoeCkKICAKICAjIEFkZCB0aGUgaW50ZXJjZXB0IHRlcm0gdG8geAogIHggPC0gY2JpbmQoMSwgeCkgICMgMSBpcyB0aGUgaW50ZXJjZXB0IHRlcm0KICAKICAjIFNvbHZlIGZvciB0aGUgcmVncmVzc2lvbiBjb2VmZmljaWVudHMgdXNpbmcgdGhlIG5vcm1hbCBlcXVhdGlvbgogIGIgPC0gc29sdmUodCh4KSAlKiUgeCkgJSolIHQoeCkgJSolIHkKICAKICAjIEFzc2lnbiBjb2x1bW4gbmFtZSB0byB0aGUgcmVzdWx0CiAgY29sbmFtZXMoYikgPC0gImVzdGltYXRlIgogIAogICMgUHJpbnQgdGhlIHJlZ3Jlc3Npb24gY29lZmZpY2llbnRzCiAgcHJpbnQoYikKfQpgYGAKCmBgYHtyfQpzdHIobGF1bmNoKQpgYGAKYGBge3J9CnJlZyh5PWxhdW5jaCRkaXN0cmVzc19jdCx4PWxhdW5jaFsyOjRdKQpgYGAKCmBgYHtyfQpzdW1tYXJ5KG1vZGVsKQoKYGBgCmBgYHtyfQptb2RlbDwtbG0oZGlzdHJlc3NfY3QgfiB0ZW1wZXJhdHVyZSArIGZpZWxkX2NoZWNrX3ByZXNzdXJlICsgZmxpZ2h0X251bSwgZGF0YSA9IGxhdW5jaCkKbW9kZWwKCiN3ZSBvYnRhaW5lZCB0aGUgc2FtZSB2YWx1ZXMKYGBgCmBgYHtyfQpzdW1tYXJ5IChtb2RlbCkKYGBgCmBgYHtyfQojdGhlcmUgaXNuJ3QgZW5vdWdoIGV2aWRlbmNlIHRvIHJlamVjdCB0aGUgbnVsbCB3aXRoIGFueSBvZiB0aGUgY29lZmZpY2llbnRzLCBldmVuIHRoZXkgbWlnaHQgYWZmZWN0LgpgYGAKCg==