library(htmltab)
link= "https://en.wikipedia.org/wiki/Democracy_Index"
path= '/html/body/div[3]/div[3]/div[5]/div[1]/table[6]/tbody'
data=htmltab(link,path)
data=data[,c(3, 5:11)] 
str(data)
## 'data.frame':    167 obs. of  8 variables:
##  $ Country >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes                          : chr  " Norway" " New Zealand" " Finland" " Sweden" ...
##  $ Overall score >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes                    : chr  "9.75" "9.37" "9.27" "9.26" ...
##  $ Δ Score >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes                          : chr  "0.06" "0.12" "0.07" NA ...
##  $ Elec­toral pro­cessand plura­lism >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes: chr  "10.00" "10.00" "10.00" "9.58" ...
##  $ Func­tioningof govern­ment >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes       : chr  "9.64" "8.93" "9.29" "9.29" ...
##  $ Poli­ticalpartici­pation >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes         : chr  "10.00" "9.44" "8.89" "8.33" ...
##  $ Poli­ticalcul­ture >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes               : chr  "10.00" "8.75" "8.75" "10.00" ...
##  $ Civilliber­ties >> Full democracies >> Flawed democracies >> Hybrid regimes >> Authoritarian regimes                  : chr  "9.12" "9.71" "9.41" "9.12" ...
data[,-1]=lapply(data[,-1], as.numeric)
newNames=c('Pais','OverallScore','FullScore','Pluralismo','Funcional','Participacion','Cultura','Libertades')
names(data)=newNames
m1 = lm(FullScore~Funcional+Participacion, data=data)
summary(m1)
## 
## Call:
## lm(formula = FullScore ~ Funcional + Participacion, data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.38716 -0.15284 -0.05460  0.08316  1.97102 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    0.55981    0.08330   6.721 6.15e-10 ***
## Funcional     -0.01186    0.01499  -0.791   0.4304    
## Participacion -0.04869    0.02019  -2.411   0.0174 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3023 on 122 degrees of freedom
##   (42 observations deleted due to missingness)
## Multiple R-squared:  0.1365, Adjusted R-squared:  0.1223 
## F-statistic: 9.641 on 2 and 122 DF,  p-value: 0.0001297
m2 = lm(FullScore~Funcional+Participacion+Libertades, data = data)
summary(m2)
## 
## Call:
## lm(formula = FullScore ~ Funcional + Participacion + Libertades, 
##     data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -0.38237 -0.15910 -0.05630  0.09122  1.97045 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    0.55787    0.08366   6.669 8.16e-10 ***
## Funcional     -0.01786    0.01951  -0.916   0.3617    
## Participacion -0.05345    0.02252  -2.373   0.0192 *  
## Libertades     0.01011    0.02093   0.483   0.6298    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3032 on 121 degrees of freedom
##   (42 observations deleted due to missingness)
## Multiple R-squared:  0.1381, Adjusted R-squared:  0.1168 
## F-statistic: 6.464 on 3 and 121 DF,  p-value: 0.0004273