1. Διερεύνηση του συνόλου δεδομένων (dataset)

Για την παρουσίαση της γραμμικής παλινρόμησης στην συγκεκριμένη εργασία χρησιμοποιήθηκε το 10ο dataset από το παρακάτω link: Πηγή

1.1 Περιγραφή Dataset

Το dataset προέρχεται από τον Παγκόσμιο Οργανισμό Υγείας (WHO) και καλύπτει την χρονική περίοδο 2000–2015 για 193 χώρες. Αποτελείται από 22 στήλες και 2938 γραμμές. Διαιρείται σε 4 βασικές κατηγορίες:

  • Ανοσοποίηση
  • Θνησιμότητα
  • Οικονομία
  • Κοινωνία

1.2 Στόχος Μελέτης

Να εντοπιστούν οι βασικοί παράγοντες που επηρεάζουν το προσδόκιμο ζωής, δίνοντας έμφαση:

  • Στην ανοσοποίηση (π.χ. Ηπατίτιδα Β, Πολιομυελίτιδα)

  • Στη θνησιμότητα (βρεφική και ενήλικη)

  • Σε κοινωνικούς (εκπαίδευση), οικονομικούς (κατά κεφαλήν εισόδημα, δαπάνες υγείας) και συμπεριφορικούς παράγοντες (αλκοόλ, κάπνισμα)

1.3 Ερευνητικά Ερωτήματα

  • Ποιοι παράγοντες επηρεάζουν το προσδόκιμο ζωής;

  • Πώς επηρεάζει η θνησιμότητα βρεφών/ενηλίκων;

  • Υπάρχει συσχέτιση με το κάπνισμα, το αλκοόλ ή την εκπαίδευση;

  • Βοηθά η αύξηση των δαπανών υγείας σε χώρες με προσδόκιμο <65 ετών;

1.4 Μετατροπές πάνω στο Dataset

Κατά τη διαδικασία δημιουργίας γραφημάτων παρατηρήθηκε ότι ορισμένες στήλες περιείχαν κενά (whitespace) στα ονόματά τους, γεγονός που προκαλούσε προβλήματα στην εκτέλεση του κώδικα, καθώς οι στήλες δεν αναγνωρίζονταν σωστά.

Για την αντιμετώπιση του προβλήματος πραγματοποιήθηκαν τροποποιήσεις στα ονόματα των στηλών, με χρήση του εργαλείου OpenRefine, ώστε να αφαιρεθούν τα κενά και να διασφαλιστεί η ομαλή επεξεργασία των δεδομένων όπως φαίνεται παρακάτω.

Summary

Το summary του dataset φαίνεται παρακάτω για όλες τις μεταβλητές.

summary(LifeData)
##    Country               Year         Status          LifeExpectancy 
##  Length:2938        Min.   :2000   Length:2938        Min.   :36.30  
##  Class :character   1st Qu.:2004   Class :character   1st Qu.:63.10  
##  Mode  :character   Median :2008   Mode  :character   Median :72.10  
##                     Mean   :2008                      Mean   :69.22  
##                     3rd Qu.:2012                      3rd Qu.:75.70  
##                     Max.   :2015                      Max.   :89.00  
##                                                       NA's   :10     
##  AdultMortality   InfantDeaths       Alcohol        PercentageExpenditure
##  Min.   :  1.0   Min.   :   0.0   Min.   : 0.0100   Min.   :    0.000    
##  1st Qu.: 74.0   1st Qu.:   0.0   1st Qu.: 0.8775   1st Qu.:    4.685    
##  Median :144.0   Median :   3.0   Median : 3.7550   Median :   64.913    
##  Mean   :164.8   Mean   :  30.3   Mean   : 4.6029   Mean   :  738.251    
##  3rd Qu.:228.0   3rd Qu.:  22.0   3rd Qu.: 7.7025   3rd Qu.:  441.534    
##  Max.   :723.0   Max.   :1800.0   Max.   :17.8700   Max.   :19479.912    
##  NA's   :10                       NA's   :194                            
##    HepatitisB       Measles              BMI        Under.five.deaths
##  Min.   : 1.00   Min.   :     0.0   Min.   : 1.00   Min.   :   0.00  
##  1st Qu.:77.00   1st Qu.:     0.0   1st Qu.:19.30   1st Qu.:   0.00  
##  Median :92.00   Median :    17.0   Median :43.50   Median :   4.00  
##  Mean   :80.94   Mean   :  2419.6   Mean   :38.32   Mean   :  42.04  
##  3rd Qu.:97.00   3rd Qu.:   360.2   3rd Qu.:56.20   3rd Qu.:  28.00  
##  Max.   :99.00   Max.   :212183.0   Max.   :87.30   Max.   :2500.00  
##  NA's   :553                        NA's   :34                       
##      Polio       TotalExpenditure   Diphtheria       HIVAIDS      
##  Min.   : 3.00   Min.   : 0.370   Min.   : 2.00   Min.   : 0.100  
##  1st Qu.:78.00   1st Qu.: 4.260   1st Qu.:78.00   1st Qu.: 0.100  
##  Median :93.00   Median : 5.755   Median :93.00   Median : 0.100  
##  Mean   :82.55   Mean   : 5.938   Mean   :82.32   Mean   : 1.742  
##  3rd Qu.:97.00   3rd Qu.: 7.492   3rd Qu.:97.00   3rd Qu.: 0.800  
##  Max.   :99.00   Max.   :17.600   Max.   :99.00   Max.   :50.600  
##  NA's   :19      NA's   :226      NA's   :19                      
##       GDP              Population        Thinness1.19.years Thinness5.9.years
##  Min.   :     1.68   Min.   :3.400e+01   Min.   : 0.10      Min.   : 0.10    
##  1st Qu.:   463.94   1st Qu.:1.958e+05   1st Qu.: 1.60      1st Qu.: 1.50    
##  Median :  1766.95   Median :1.387e+06   Median : 3.30      Median : 3.30    
##  Mean   :  7483.16   Mean   :1.275e+07   Mean   : 4.84      Mean   : 4.87    
##  3rd Qu.:  5910.81   3rd Qu.:7.420e+06   3rd Qu.: 7.20      3rd Qu.: 7.20    
##  Max.   :119172.74   Max.   :1.294e+09   Max.   :27.70      Max.   :28.60    
##  NA's   :448         NA's   :652         NA's   :34         NA's   :34       
##  IncomeCompositionOfResources   Schooling    
##  Min.   :0.0000               Min.   : 0.00  
##  1st Qu.:0.4930               1st Qu.:10.10  
##  Median :0.6770               Median :12.30  
##  Mean   :0.6276               Mean   :11.99  
##  3rd Qu.:0.7790               3rd Qu.:14.30  
##  Max.   :0.9480               Max.   :20.70  
##  NA's   :167                  NA's   :163

2. Δημιουργία (και αξιολόγηση) μοντέλου παλινδρόμησης

Μοντέλο 1

m1 <- lm(LifeExpectancy ~ Alcohol, LifeData)
summary(m1)
## 
## Call:
## lm(formula = LifeExpectancy ~ Alcohol, data = LifeData)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -33.962  -4.722   1.622   6.408  20.757 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 64.76334    0.25321  255.76   <2e-16 ***
## Alcohol      0.95464    0.04124   23.15   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 8.735 on 2733 degrees of freedom
##   (203 observations deleted due to missingness)
## Multiple R-squared:  0.1639, Adjusted R-squared:  0.1636 
## F-statistic: 535.8 on 1 and 2733 DF,  p-value: < 2.2e-16
coef(m1)
## (Intercept)     Alcohol 
##  64.7633398   0.9546442
SSE1 <- sum(m1$residuals^2) 
RMSE1 <- sqrt(SSE1/nrow(LifeData)) 

Μοντέλο 2

m2 <- lm(LifeExpectancy ~ Alcohol + BMI, LifeData)
summary(m2)
## 
## Call:
## lm(formula = LifeExpectancy ~ Alcohol + BMI, data = LifeData)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -35.012  -4.236   0.759   3.855  27.631 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 57.677698   0.321664  179.31   <2e-16 ***
## Alcohol      0.559536   0.037998   14.73   <2e-16 ***
## BMI          0.235550   0.007748   30.40   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.56 on 2717 degrees of freedom
##   (218 observations deleted due to missingness)
## Multiple R-squared:  0.375,  Adjusted R-squared:  0.3746 
## F-statistic: 815.2 on 2 and 2717 DF,  p-value: < 2.2e-16
coef(m2)
## (Intercept)     Alcohol         BMI 
##  57.6776980   0.5595358   0.2355500
SSE2 <- sum(m2$residuals^2) 
RMSE2 <- sqrt(SSE2/nrow(LifeData)) 

Μοντέλο 3

m3 <- lm(LifeExpectancy ~ Alcohol + BMI + Schooling, LifeData)
summary(m3)
## 
## Call:
## lm(formula = LifeExpectancy ~ Alcohol + BMI + Schooling, data = LifeData)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -27.0992  -2.9448   0.4659   3.5452  31.3794 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 43.309525   0.471804  91.796  < 2e-16 ***
## Alcohol     -0.108684   0.035310  -3.078  0.00211 ** 
## BMI          0.104648   0.007231  14.473  < 2e-16 ***
## Schooling    1.870962   0.049572  37.743  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 6.011 on 2565 degrees of freedom
##   (369 observations deleted due to missingness)
## Multiple R-squared:  0.5908, Adjusted R-squared:  0.5904 
## F-statistic:  1235 on 3 and 2565 DF,  p-value: < 2.2e-16
coef(m3)
## (Intercept)     Alcohol         BMI   Schooling 
##  43.3095248  -0.1086842   0.1046482   1.8709625
SSE3 <- sum(m3$residuals^2) 
RMSE3 <- sqrt(SSE3/nrow(LifeData)) 

Μοντέλο 4

m4 <- lm(LifeExpectancy ~ Alcohol + BMI + Schooling + HIVAIDS, LifeData)
summary(m4)
## 
## Call:
## lm(formula = LifeExpectancy ~ Alcohol + BMI + Schooling + HIVAIDS, 
##     data = LifeData)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -27.7763  -2.7155  -0.0378   2.8292  25.9428 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 48.123234   0.394078 122.116   <2e-16 ***
## Alcohol      0.008987   0.028165   0.319     0.75    
## BMI          0.070792   0.005800  12.206   <2e-16 ***
## Schooling    1.642517   0.039748  41.323   <2e-16 ***
## HIVAIDS     -0.712284   0.018303 -38.916   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.767 on 2564 degrees of freedom
##   (369 observations deleted due to missingness)
## Multiple R-squared:  0.7428, Adjusted R-squared:  0.7424 
## F-statistic:  1851 on 4 and 2564 DF,  p-value: < 2.2e-16
coef(m4)
##  (Intercept)      Alcohol          BMI    Schooling      HIVAIDS 
## 48.123233653  0.008987216  0.070792071  1.642516804 -0.712283953
SSE4 <- sum(m4$residuals^2) 
RMSE4<- sqrt(SSE4/nrow(LifeData)) 

Μοντέλο 5

m5 <- lm(LifeExpectancy ~ Alcohol + BMI + Schooling + HIVAIDS + IncomeCompositionOfResources, LifeData)
summary(m5)
## 
## Call:
## lm(formula = LifeExpectancy ~ Alcohol + BMI + Schooling + HIVAIDS + 
##     IncomeCompositionOfResources, data = LifeData)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -27.6957  -2.5169  -0.1844   2.5388  26.5321 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                  47.703573   0.379532 125.691   <2e-16 ***
## Alcohol                      -0.008500   0.027075  -0.314    0.754    
## BMI                           0.061399   0.005606  10.952   <2e-16 ***
## Schooling                     1.168324   0.049936  23.397   <2e-16 ***
## HIVAIDS                      -0.685205   0.017674 -38.770   <2e-16 ***
## IncomeCompositionOfResources 10.386243   0.705123  14.730   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.578 on 2563 degrees of freedom
##   (369 observations deleted due to missingness)
## Multiple R-squared:  0.7628, Adjusted R-squared:  0.7624 
## F-statistic:  1649 on 5 and 2563 DF,  p-value: < 2.2e-16
coef(m5)
##                  (Intercept)                      Alcohol 
##                 47.703572961                 -0.008500224 
##                          BMI                    Schooling 
##                  0.061399480                  1.168324116 
##                      HIVAIDS IncomeCompositionOfResources 
##                 -0.685204546                 10.386242882
SSE5 <- sum(m5$residuals^2) 
RMSE5 <- sqrt(SSE5/nrow(LifeData)) 
results <- data.frame(
  Model = c(
    "Alcohol",
    "Alcohol + BMI",
    "Alcohol + BMI + Schooling",
    "Alcohol + BMI + Schooling + HIVAIDS",
    "Alcohol + BMI + Schooling + HIVAIDS + IncomeCompositionOfResources"
    
  ),
  R_squared = c(
    summary(m1)$r.squared,
    summary(m2)$r.squared,
    summary(m3)$r.squared,
    summary(m4)$r.squared,
    summary(m5)$r.squared
  ),
  SSE = c(
    SSE1,
    SSE2,
    SSE3,
    SSE4,
    SSE5
  ),
  RMSE = c(
    RMSE1,
    RMSE2,
    RMSE3,
    RMSE4,
    RMSE5
  )
)

knitr::kable(results, digits = 4, caption = "Σύγκριση Μοντέλων: R-squared και SSE")
Σύγκριση Μοντέλων: R-squared και SSE
Model R_squared SSE RMSE
Alcohol 0.1639 208521.92 8.4246
Alcohol + BMI 0.3750 155296.68 7.2703
Alcohol + BMI + Schooling 0.5908 92666.83 5.6161
Alcohol + BMI + Schooling + HIVAIDS 0.7428 58257.13 4.4530
Alcohol + BMI + Schooling + HIVAIDS + IncomeCompositionOfResources 0.7628 53710.42 4.2757

Αξιολόγηση Μοντέλων για την Πρόβλεψη Προσδόκιμου Ζωής

Η πρόβλεψη του προσδόκιμου ζωής βελτιώνεται σταδιακά με την προσθήκη σημαντικών κοινωνικοοικονομικών και υγειονομικών μεταβλητών:

Alcohol μόνο → Πολύ χαμηλή εξηγητική ικανότητα (R² = 0.16, RMSE = 8.42).

Συμπέρασμα Το καλύτερο μοντέλο περιλαμβάνει μεταβλητές που αντικατοπτρίζουν την υγεία, την εκπαίδευση και την οικονομική ευημερία, προσφέροντας ικανοποιητική ακρίβεια πρόβλεψης.

Περαιτέρω προσθήκη μεταβλητών δοκιμάστηκε αλλά οδήγησε σε ελάχιστες βελτιώσεις, μη αξιόλογες υπολογιστικά για τη συνολική απόδοση του μοντέλου.

3. Εφαρμογή σε νέο σύνολο δεδομένων - Πρόβλεψη

set.seed(956)

split <- sample.split(LifeData$LifeExpectancy,SplitRatio=0.75)
LifeTrain = subset(LifeData,split==TRUE)
LifeTest = subset(LifeData,split==FALSE)
nrow(LifeTest)
## [1] 733

Χωρίζουμε το αρχικό dataset σε εκπαιδευτικό σύνολο (75%) και σύνολο ελέγχου (25%) για να αξιολογήσουμε την απόδοση του μοντέλου μας.

vars_used <- all.vars(formula(m5))  
LifeTestClean <- LifeTest %>% filter(if_all(all_of(vars_used), ~ !is.na(.)))
nrow(LifeTestClean)
## [1] 638

Σε αυτό το σημείο φιλτράρουμε το test set, αφαιρώντας τις γραμμές που περιέχουν ελλιπείς τιμές (NA) για οποιαδήποτε από τις μεταβλητές που χρησιμοποιεί το μοντέλο μας (m5). Έτσι αποφεύγουμε λάθη στην πρόβλεψη.

LifePrediction <- predict(m5, newdata=LifeTestClean)

SSEPred <- sum((LifePrediction - LifeTestClean$LifeExpectancy)^2)
SSTPred <- sum((mean(LifeTrain$LifeExpectancy) - LifeTestClean$LifeExpectancy)^2)
R2Pred <- 1 - SSEPred/SSTPred
R2Pred
## [1] 0.7459865
RMSEPred <- sqrt(SSEPred / nrow(LifeTestClean))
RMSEPred
## [1] 4.521762

Υπολογίζουμε το out-of-sample R-squared, που μας δείχνει πόσο καλά γενικεύει το μοντέλο σε νέα, μη εκπαιδευμένα δεδομένα. Συγκρίνουμε με το R² του training set.

Επίσης, υπολογίζουμε και το μέσο τετραγωνικό σφάλμα (RMSE), το οποίο μας λέει κατά πόσο οι προβλέψεις μας αποκλίνουν από τις πραγματικές τιμές.

4. Συμπεράσματα της Έρευνας

4.1 Η εκπαίδευση, η υγεία και η οικονομία επηρεάζουν το προσδόκιμο ζωής

Καθώς ενισχύαμε το μοντέλο με επιπλέον μεταβλητές, παρατηρήσαμε σημαντική αύξηση στην εξηγητική του ικανότητα (R²):

Η εκπαίδευση (Schooling) αποδείχθηκε ιδιαίτερα σημαντικός παράγοντας, προσφέροντας μεγάλη βελτίωση στην ακρίβεια του μοντέλου (από R² = 0.27 σε R² = 0.59).

Η μεταβλητή HIV/AIDS είχε θεαματική επίδραση στην πρόβλεψη, πιθανόν λόγω της επίδρασής της σε ευάλωτες πληθυσμιακές ομάδες.

Το IncomeCompositionOfResources, που αντανακλά την οικονομική ικανότητα μιας χώρας να επενδύει σε κοινωνικούς και υγειονομικούς πόρους, οδήγησε σε ακόμα υψηλότερη ακρίβεια (R² = 0.76), επιβεβαιώνοντας ότι ο πλούτος μιας χώρας συσχετίζεται με το προσδόκιμο ζωής.

4.2 Η προσθήκη μεταβλητών αυξάνει την ακρίβεια αλλά με φθίνουσα απόδοση

Παρόλο που κάθε νέα μεταβλητή βελτίωνε το μοντέλο, η οριακή συνεισφορά μειωνόταν όσο προσθέταμε περισσότερες:

Η μετάβαση από μοντέλο 4 σε μοντέλο 5 είχε μικρότερο αντίκτυπο από τις προηγούμενες.

Αυτό υποδεικνύει ότι υπάρχει ένα όριο στην απόδοση που μπορούμε να επιτύχουμε με γραμμικά μοντέλα, ακόμη κι αν προσθέσουμε πολλές μεταβλητές.

4.3 Το τελικό μοντέλο γενικεύει ικανοποιητικά σε νέα δεδομένα

Με τη χρήση test set για πρόβλεψη, επιβεβαιώσαμε ότι:

Το μοντέλο παρουσιάζει υψηλό R² και χαμηλό RMSE και στο test set.

Η προσεκτική προεπεξεργασία (καθαρισμός ελλιπών τιμών) συνέβαλε καθοριστικά στη σωστή πρόβλεψη.

4.4 Αξιοσημείωτη η σημασία κοινωνικών και υγειονομικών παραγόντων

Η έρευνα επιβεβαιώνει ότι:

Η πρόσβαση στην εκπαίδευση, η πρόληψη ασθενειών, και η οικονομική ευρωστία είναι κρίσιμοι παράγοντες μακροζωίας.

Παράγοντες όπως αλκοόλ και BMI, αν και σχετικοί, δεν αρκούν από μόνοι τους για να εξηγήσουν τη μεταβλητότητα στο προσδόκιμο ζωής.