Summarize Data

summary(data)
   country          income_group        continent        
 Length:141         Length:141         Length:141        
 Class :character   Class :character   Class :character  
 Mode  :character   Mode  :character   Mode  :character  
                                                         
                                                         
                                                         
 people_fully_vaccinated_per_hund (pfvph) total_deaths_per_million
 Min.   : 0.35                            Min.   :   3.21         
 1st Qu.:17.93                            1st Qu.: 167.92         
 Median :41.17                            Median : 773.22         
 Mean   :40.95                            Mean   :1048.29         
 3rd Qu.:64.22                            3rd Qu.:1750.86         
 Max.   :87.56                            Max.   :6013.44         
 hospital_beds_per_thousand (hbpt) cardiovasc_death_rate
 Min.   : 0.100                    Min.   : 85.75       
 1st Qu.: 1.300                    1st Qu.:155.90       
 Median : 2.500                    Median :237.37       
 Mean   : 2.994                    Mean   :253.09       
 3rd Qu.: 4.200                    3rd Qu.:329.63       
 Max.   :12.270                    Max.   :724.42       
 diabetes_prevalence population_density   population       
 Min.   : 1.820      Min.   :   1.98    Min.   :9.873e+04  
 1st Qu.: 5.310      1st Qu.:  37.73    1st Qu.:2.973e+06  
 Median : 7.110      Median :  82.60    Median :1.022e+07  
 Mean   : 7.781      Mean   : 209.20    Mean   :4.995e+07  
 3rd Qu.: 9.750      3rd Qu.: 157.83    3rd Qu.:3.780e+07  
 Max.   :22.020      Max.   :7915.73    Max.   :1.444e+09  
 aged_70_older       log_vacc          code                year     
 Min.   : 0.617   Min.   :-1.050   Length:141         Min.   :2020  
 1st Qu.: 2.385   1st Qu.: 2.886   Class :character   1st Qu.:2020  
 Median : 4.458   Median : 3.718   Mode  :character   Median :2020  
 Mean   : 6.073   Mean   : 3.275                      Mean   :2020  
 3rd Qu.: 9.720   3rd Qu.: 4.162                      3rd Qu.:2020  
 Max.   :16.240   Max.   : 4.472                      Max.   :2020  
 gdppercapitapppcons2017 (gdppcapita)
 Min.   :   928.6                    
 1st Qu.:  6118.4                    
 Median : 14064.0                    
 Mean   : 21489.7                    
 3rd Qu.: 31007.8                    
 Max.   :110261.2                    

Glance of the data: top 10


head(data,10)

Variable list

ls(data)
 [1] "aged_70_older"                           
 [2] "cardiovasc_death_rate"                   
 [3] "code"                                    
 [4] "continent"                               
 [5] "country"                                 
 [6] "diabetes_prevalence"                     
 [7] "gdppercapitapppcons2017 (gdppcapita)"    
 [8] "hospital_beds_per_thousand (hbpt)"       
 [9] "income_group"                            
[10] "log_vacc"                                
[11] "people_fully_vaccinated_per_hund (pfvph)"
[12] "population"                              
[13] "population_density"                      
[14] "total_deaths_per_million"                
[15] "year"                                    

Plot


ggplot(data=data, aes(x = log(`people_fully_vaccinated_per_hund (pfvph)`),
                           y= log(total_deaths_per_million))) + geom_point() + 
              geom_smooth(method = "lm", se=FALSE)  +
  ggtitle("Vaccination and death per million") + 
  xlab(" people fully vaccinated per hundred") + ylab("total deaths per million")

NA
NA

Regression - Restricted


reg1 <- lm(data=data,log(total_deaths_per_million)~ log(`people_fully_vaccinated_per_hund (pfvph)`))
summary (reg1)

Call:
lm(formula = log(total_deaths_per_million) ~ log(`people_fully_vaccinated_per_hund (pfvph)`), 
    data = data)

Residuals:
    Min      1Q  Median      3Q     Max 
-5.7083 -0.6423  0.2341  0.9019  2.3696 

Coefficients:
                                                Estimate Std. Error
(Intercept)                                      3.73497    0.33591
log(`people_fully_vaccinated_per_hund (pfvph)`)  0.72864    0.09611
                                                t value Pr(>|t|)    
(Intercept)                                      11.119  < 2e-16 ***
log(`people_fully_vaccinated_per_hund (pfvph)`)   7.582  4.4e-12 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.395 on 139 degrees of freedom
Multiple R-squared:  0.2925,    Adjusted R-squared:  0.2875 
F-statistic: 57.48 on 1 and 139 DF,  p-value: 4.398e-12
  

Regression output for Complex Model


reg2 <- lm(data=data,log(total_deaths_per_million)~ log(`people_fully_vaccinated_per_hund (pfvph)`) + 
             log(`hospital_beds_per_thousand (hbpt)`))

summary(reg2)

Call:
lm(formula = log(total_deaths_per_million) ~ log(`people_fully_vaccinated_per_hund (pfvph)`) + 
    log(`hospital_beds_per_thousand (hbpt)`), data = data)

Residuals:
    Min      1Q  Median      3Q     Max 
-5.8265 -0.5765  0.2353  0.9306  2.3972 

Coefficients:
                                                Estimate Std. Error
(Intercept)                                       4.0201     0.3416
log(`people_fully_vaccinated_per_hund (pfvph)`)   0.5287     0.1162
log(`hospital_beds_per_thousand (hbpt)`)          0.4732     0.1628
                                                t value Pr(>|t|)    
(Intercept)                                      11.767  < 2e-16 ***
log(`people_fully_vaccinated_per_hund (pfvph)`)   4.551 1.16e-05 ***
log(`hospital_beds_per_thousand (hbpt)`)          2.907  0.00425 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.359 on 138 degrees of freedom
Multiple R-squared:  0.3334,    Adjusted R-squared:  0.3237 
F-statistic: 34.51 on 2 and 138 DF,  p-value: 7.045e-13

Regression Tables side by side


huxreg(reg1,reg2)
          ───────────────────────────────────────────────────────
                                        (1)            (2)       
                                  ───────────────────────────────
            (Intercept)                3.735 ***      4.020 ***  
                                      (0.336)        (0.342)     
            log(`people_fully_vac      0.729 ***      0.529 ***  
            cinated_per_hund                                     
            (pfvph)`)                                            
                                      (0.096)        (0.116)     
            log(`hospital_beds_pe                     0.473 **   
            r_thousand (hbpt)`)                                  
                                                     (0.163)     
                                  ───────────────────────────────
            N                        141            141          
            R2                         0.293          0.333      
            logLik                  -245.964       -241.773      
            AIC                      497.928        491.547      
          ───────────────────────────────────────────────────────
            *** p < 0.001; ** p < 0.01; * p < 0.05.              

Column names: names, model1, model2

Analysis of Variance: F-test


anova(reg1, reg2, test='F')
Analysis of Variance Table

Model 1: log(total_deaths_per_million) ~ log(`people_fully_vaccinated_per_hund (pfvph)`)
Model 2: log(total_deaths_per_million) ~ log(`people_fully_vaccinated_per_hund (pfvph)`) + 
    log(`hospital_beds_per_thousand (hbpt)`)
  Res.Df    RSS Df Sum of Sq      F   Pr(>F)   
1    139 270.35                                
2    138 254.75  1    15.601 8.4512 0.004252 **
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Conlusion for the nested model: the null hypothesis that ‘naive’ model is better is rejected.

Data source: https://ourworldindata.org/

LS0tDQp0aXRsZTogIlZhY2NpbmUgQXBhcnRoYWlkOiBXb3JraW5nIEZpbGUiDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCmF1dGhvcjogVGF0byBLaHVuZGFkemUgDQotLS0NCg0KIyMgU3VtbWFyaXplIERhdGEgDQoNCmBgYHtyfQ0Kc3VtbWFyeShkYXRhKQ0KYGBgDQoNCg0KIyMgR2xhbmNlIG9mIHRoZSBkYXRhOiB0b3AgMTAgDQoNCg0KYGBge3J9DQoNCmhlYWQoZGF0YSwxMCkNCmBgYA0KDQoNCiMjIFZhcmlhYmxlIGxpc3QgDQoNCmBgYHtyfQ0KbHMoZGF0YSkNCmBgYA0KDQojIyBQbG90ICANCg0KYGBge3IsIG1lc3NhZ2U9RkFMU0V9DQoNCmdncGxvdChkYXRhPWRhdGEsIGFlcyh4ID0gbG9nKGBwZW9wbGVfZnVsbHlfdmFjY2luYXRlZF9wZXJfaHVuZCAocGZ2cGgpYCksDQogICAgICAgICAgICAgICAgICAgICAgICAgICB5PSBsb2codG90YWxfZGVhdGhzX3Blcl9taWxsaW9uKSkpICsgZ2VvbV9wb2ludCgpICsgDQogICAgICAgICAgICAgIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNlPUZBTFNFKSAgKw0KICBnZ3RpdGxlKCJWYWNjaW5hdGlvbiBhbmQgZGVhdGggcGVyIG1pbGxpb24iKSArIA0KICB4bGFiKCIgcGVvcGxlIGZ1bGx5IHZhY2NpbmF0ZWQgcGVyIGh1bmRyZWQiKSArIHlsYWIoInRvdGFsIGRlYXRocyBwZXIgbWlsbGlvbiIpDQogIA0KICANCmBgYA0KDQoNCiMjIFJlZ3Jlc3Npb24gLSBSZXN0cmljdGVkIA0KDQpgYGB7cn0NCg0KcmVnMSA8LSBsbShkYXRhPWRhdGEsbG9nKHRvdGFsX2RlYXRoc19wZXJfbWlsbGlvbil+IGxvZyhgcGVvcGxlX2Z1bGx5X3ZhY2NpbmF0ZWRfcGVyX2h1bmQgKHBmdnBoKWApKQ0Kc3VtbWFyeSAocmVnMSkNCiAgDQpgYGANCg0KIyMgUmVncmVzc2lvbiBvdXRwdXQgZm9yIENvbXBsZXggTW9kZWwNCg0KDQpgYGB7cn0NCg0KcmVnMiA8LSBsbShkYXRhPWRhdGEsbG9nKHRvdGFsX2RlYXRoc19wZXJfbWlsbGlvbil+IGxvZyhgcGVvcGxlX2Z1bGx5X3ZhY2NpbmF0ZWRfcGVyX2h1bmQgKHBmdnBoKWApICsgDQogICAgICAgICAgICAgbG9nKGBob3NwaXRhbF9iZWRzX3Blcl90aG91c2FuZCAoaGJwdClgKSkNCg0Kc3VtbWFyeShyZWcyKQ0KYGBgDQoNCg0KIyMgUmVncmVzc2lvbiBUYWJsZXMgc2lkZSBieSBzaWRlIA0KDQpgYGB7cn0NCg0KaHV4cmVnKHJlZzEscmVnMikNCmBgYA0KDQojIyBBbmFseXNpcyBvZiBWYXJpYW5jZTogRi10ZXN0IA0KDQoNCg0KYGBge3J9DQoNCmFub3ZhKHJlZzEsIHJlZzIsIHRlc3Q9J0YnKQ0KYGBgDQoNCg0KDQoNCiMjIENvbmx1c2lvbiBmb3IgdGhlIG5lc3RlZCBtb2RlbDogIHRoZSBudWxsIGh5cG90aGVzaXMgdGhhdCAnbmFpdmUnIG1vZGVsIGlzIGJldHRlciBpcyByZWplY3RlZC4gDQoNCiMjIERhdGEgc291cmNlOiBodHRwczovL291cndvcmxkaW5kYXRhLm9yZy8gDQoNCg0KDQoNCg0K