L’obiettivo di questo progetto consiste nello studio e nell’analisi dei dati racconti dalle tre infrastrutture ospedaliere al fine di creare un modello predittivo per il peso di un neonato. Questo studio ha particolare rilevanza nel contesto della prevenzione di gravidanze a rischio e della pianificazione clinica in vista di possibili problemi del neonato.

Di seguito, i principali benefici che questo progetto porterà all’azienda e al settore sanitario:

1. Raccolta dati e struttura del DataSet

Mostriamo qui un sottoinsieme del dataset utilizzato per condurre la nostra analisi e costruire i modelli di cui in seguito.

Anni.madre N.gravidanze Fumatrici Gestazione Peso Lunghezza Cranio Tipo.parto Ospedale Sesso
26 0 0 42 3380 490 325 Nat osp3 M
21 2 0 39 3150 490 345 Nat osp1 F
34 3 0 38 3640 500 375 Nat osp2 M
28 1 0 41 3690 515 365 Nat osp2 M
20 0 0 38 3700 480 335 Nat osp3 F
32 0 0 40 3200 495 340 Nat osp2 F

In particolare le variabili raccolte includono:

2. Analisi e Modellizzazione

Analisi Preliminare

Anzitutto iniziamo dando una panoramica sulle statistiche di sintesi dei dati quantitativi continui:

Statistiche Anni_madre Gestazione Lunghezza Cranio Peso
Min. 0.00 25.00 310.00 235.00 830.00
1st Qu. 25.00 38.00 480.00 330.00 2990.00
Median 28.00 39.00 500.00 340.00 3300.00
Mean 28.16 38.98 494.69 340.03 3284.08
3rd Qu. 32.00 40.00 510.00 350.00 3620.00
Max. 46.00 43.00 565.00 390.00 4930.00

A colpo d’occhio noto che il minimo della variabile Anni.madre è 0, il che mi porta ad investigare possibili dati errati presenti nel database. Lo riordino per la variabile Anni.madre e controllo le prime entrate

Anni.madre N.gravidanze Fumatrici Gestazione Peso Lunghezza Cranio Tipo.parto Ospedale Sesso
1380 0 0 0 39 3060 490 330 Nat osp3 M
1152 1 1 0 41 3250 490 350 Nat osp2 F
138 13 0 0 38 2760 470 325 Nat osp2 F
1075 14 1 0 39 3510 490 365 Nat osp2 M
1532 14 0 0 39 3550 500 355 Ces osp1 M
66 15 0 0 37 2810 490 325 Ces osp3 F

Effettivamente i primi due valori del database sono sballati e perciò li escludo dallo studio e rianalizziamo il dataset così acquisito.

Statistiche Anni_madre Gestazione Lunghezza Cranio Peso
Min. 13.00 25.00 310.0 235.00 830.00
1st Qu. 25.00 38.00 480.0 330.00 2990.00
Median 28.00 39.00 500.0 340.00 3300.00
Mean 28.19 38.98 494.7 340.03 3284.18
3rd Qu. 32.00 40.00 510.0 350.00 3620.00
Max. 46.00 43.00 565.0 390.00 4930.00

Ora visualizziamo rapidamente il boxplot associato a ciascuna di queste variabili per identificare simmetrie e outliers:

Questa visualizzazione con i boxplot ci permette di notare degli outliers “allineati” verso il basso delle variabili Peso, Cranio, Gestazione e Lunghezza, che corrispondono presumibilmente a dei parti molto prematuri. La variabile Anni.madre segue un’andatura più simmetrica invece. Dopodiché diamo un’occhiata anche alle frequenze delle variabili qualitative e quantitative discrete:

## 
## Frequenze per Sesso:
## 
## 
## |Categoria | Frequenza| Percentuale|
## |:---------|---------:|-----------:|
## |F         |      1255|       50.24|
## |M         |      1243|       49.76|
## 
## Frequenze per Ospedale:
## 
## 
## |Categoria | Frequenza| Percentuale|
## |:---------|---------:|-----------:|
## |osp1      |       816|       32.67|
## |osp2      |       848|       33.95|
## |osp3      |       834|       33.39|
## 
## Frequenze per Tipo parto:
## 
## 
## |Categoria | Frequenza| Percentuale|
## |:---------|---------:|-----------:|
## |Ces       |       728|       29.14|
## |Nat       |      1770|       70.86|
## 
## Frequenze per Fumatrici:
## 
## 
## |Categoria | Frequenza| Percentuale|
## |:---------|---------:|-----------:|
## |0         |      2394|       95.84|
## |1         |       104|        4.16|
## 
## Frequenze per Numero gravidanze:
## 
## 
## |Categoria | Frequenza| Percentuale|
## |:---------|---------:|-----------:|
## |0         |      1095|       43.84|
## |1         |       817|       32.71|
## |2         |       340|       13.61|
## |3         |       150|        6.00|
## |4         |        48|        1.92|
## |5         |        21|        0.84|
## |6         |        11|        0.44|
## |7         |         1|        0.04|
## |8         |         8|        0.32|
## |9         |         2|        0.08|
## |10        |         3|        0.12|
## |11        |         1|        0.04|
## |12        |         1|        0.04|

Riguardo a queste variabili notiamo che il Sesso e l’Ospedale campioni molto omogenei ed equidistribuiti. Il Tipo di parto e la variabili Fumatrici invece riporta dei valori più sbilanciati con un numero maggiore di parti naturali e di non fumatrici. Per quanto riguarda il numero di gravidanze invece notiamo come il 96.16% del campione riporti un numero di gravidanze inferiore o uguale a 3, mentre la restante porzione del campione risulta un outlier verso l’altro fino ad un massimo di 12 gravidanze.

Ora che abbiamo una panoramica statistica dei dati vediamo di verificare le seguenti ipotesi:

1- In alcuni ospedali si fanno più parti cesarei:

Verifichiamo anzitutto le frequenze assolute e relative dei parti naturali e cesarei in ciascun ospedale.

Ces Nat
osp1 242 574
osp2 254 594
osp3 232 602
Ces Nat
osp1 0.2965686 0.7034314
osp2 0.2995283 0.7004717
osp3 0.2781775 0.7218225

Ad occhio non sembrano esserci differenze significative nei campioni ma per avere conferma di ciò saggiamo questa ipotesi con il test del Chi quadro di Pearson:

chisq.test(table_parto_ospedale)
## 
##  Pearson's Chi-squared test
## 
## data:  table_parto_ospedale
## X-squared = 1.083, df = 2, p-value = 0.5819

Dato che il test ha un p-value ampiamente sopra la soglia di accettazione concludiamo che non c’è una correlazione tra ospedale e tipo di parto.

2- La media del peso e della lunghezza di questo campione di neonati sono significativamente uguali a quelle della popolazione:

Per verficare questa ipotesi eseguiamo un t-test rispetto alla media mondiale del peso e della lunghezza dei neonati che si attestano intorno ai 3300 grammi e 495 mm (fonte: World Health Organization: https://www.who.int/tools/child-growth-standards).

## 
##  One Sample t-test
## 
## data:  Peso
## t = -1.505, df = 2497, p-value = 0.1324
## alternative hypothesis: true mean is not equal to 3300
## 95 percent confidence interval:
##  3263.577 3304.791
## sample estimates:
## mean of x 
##  3284.184
## 
##  One Sample t-test
## 
## data:  Lunghezza
## t = -0.57754, df = 2497, p-value = 0.5636
## alternative hypothesis: true mean is not equal to 495
## 95 percent confidence interval:
##  493.6628 495.7287
## sample estimates:
## mean of x 
##  494.6958

Questi valori ci portano a concludere che per quanto riguarda la variabile Peso e Lunghezza, il valore rilevato nel nostro campione è in linea con gli standard della popolazione.

3- Le misure antropometriche sono significativamente diverse tra i due sessi:

Per verificare o rifiutare qeust’ultima ipotesi studiamo le variabili Lunghezza, Peso e Cranio divise per la variabile Sesso, e andiamo a studiare come questa le influenza

Visivamente vediamo che in tutte e tre le variabili i dati relativi ai neonati di sesso maschile hanno un boxplot spostato verso l’alto. Andiamo a verificare numericamente questa ipotesi tramite dei test con la t di Student

## 
##  Welch Two Sample t-test
## 
## data:  Peso by Sesso
## t = -12.115, df = 2488.7, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group F and group M is not equal to 0
## 95 percent confidence interval:
##  -287.4841 -207.3844
## sample estimates:
## mean in group F mean in group M 
##        3161.061        3408.496
## 
##  Welch Two Sample t-test
## 
## data:  Lunghezza by Sesso
## t = -9.5823, df = 2457.3, p-value < 2.2e-16
## alternative hypothesis: true difference in means between group F and group M is not equal to 0
## 95 percent confidence interval:
##  -11.939001  -7.882672
## sample estimates:
## mean in group F mean in group M 
##        489.7641        499.6750
## 
##  Welch Two Sample t-test
## 
## data:  Cranio by Sesso
## t = -7.4366, df = 2489.4, p-value = 1.414e-13
## alternative hypothesis: true difference in means between group F and group M is not equal to 0
## 95 percent confidence interval:
##  -6.110504 -3.560417
## sample estimates:
## mean in group F mean in group M 
##        337.6231        342.4586

Visti i valori molto piccoli del p-value per tutte le variabili altropometriche possiamo concludere che esse differiscano in modo statisticamente rilevante a seconda del sesso del nascituro.

Creazione del Modello di Regressione

Anzitutto creiamo un modello di regressione lineare multipla semplice che includa tutte le variabili raccolte nel database, in modo da visualizzare quelle che influenzano in modo significativo la variabile Peso.

## 
## Call:
## lm(formula = Peso ~ ., data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1123.26  -181.53   -14.45   161.05  2611.89 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   -6735.7960   141.4790 -47.610  < 2e-16 ***
## Anni.madre        0.8018     1.1467   0.699   0.4845    
## N.gravidanze     11.3812     4.6686   2.438   0.0148 *  
## Fumatrici       -30.2741    27.5492  -1.099   0.2719    
## Gestazione       32.5773     3.8208   8.526  < 2e-16 ***
## Lunghezza        10.2922     0.3009  34.207  < 2e-16 ***
## Cranio           10.4722     0.4263  24.567  < 2e-16 ***
## Tipo.partoNat    29.6335    12.0905   2.451   0.0143 *  
## Ospedaleosp2    -11.0912    13.4471  -0.825   0.4096    
## Ospedaleosp3     28.2495    13.5054   2.092   0.0366 *  
## SessoM           77.5723    11.1865   6.934 5.18e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 274 on 2487 degrees of freedom
## Multiple R-squared:  0.7289, Adjusted R-squared:  0.7278 
## F-statistic: 668.7 on 10 and 2487 DF,  p-value: < 2.2e-16

Cominciamo a commentare i risultati di questo semplice modello: risulta chiaro dall’osservazione dei p-value che diverse variabili non sono significative sull’andamento del Peso, in particolare le variabili Anni.madre e Fumatrici. La variabile Ospedale risulta al limite la manteniamo come variabile di controllo.

Selezione del Modello Ottimale

Inoltre creiamo una visualizzazione ver vedere a occhio queste correlazioni, in particolare rimuovendo le variabili Anni.madre e Fumatrici oltre che le altre qualitative poiché con questo grafico poco significative.

Costruiamo dunque un secondo modello da cui togliamo queste variabili e quelle non utili a fini predittivi come Ospedale e Tipo.parto, e vediamo se la differenza tra i due è significativa usando anova e BIC. Inoltre vedremo tramite il calcolo del VIF se queste variabili rimaste presentano un’eccessiva collinearità:

## 
## Call:
## lm(formula = Peso ~ N.gravidanze + Gestazione + Lunghezza + Cranio + 
##     Sesso, data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1149.37  -180.98   -15.57   163.69  2639.09 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -6681.7251   135.8036 -49.201  < 2e-16 ***
## N.gravidanze    12.4554     4.3416   2.869  0.00415 ** 
## Gestazione      32.3827     3.8008   8.520  < 2e-16 ***
## Lunghezza       10.2455     0.3008  34.059  < 2e-16 ***
## Cranio          10.5410     0.4265  24.717  < 2e-16 ***
## SessoM          77.9807    11.2111   6.956 4.47e-12 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 274.7 on 2492 degrees of freedom
## Multiple R-squared:  0.727,  Adjusted R-squared:  0.7265 
## F-statistic:  1327 on 5 and 2492 DF,  p-value: < 2.2e-16

Vediamo che l’R quadro aggiustato è rimasto bene o male invariato e perciò il modello rimane affidabile. Vediamo tramite il test sulla varianza se il passaggio dal modello 1 al modello 2 ci porta ad una perdita significativa di informazioni. Contemporaneamente eseguiamo un test di Bayes per verificare quale dei due sia migliore:

## Analysis of Variance Table
## 
## Model 1: Peso ~ N.gravidanze + Gestazione + Lunghezza + Cranio + Sesso
## Model 2: Peso ~ Anni.madre + N.gravidanze + Fumatrici + Gestazione + Lunghezza + 
##     Cranio + Tipo.parto + Ospedale + Sesso
##   Res.Df       RSS Df Sum of Sq      F   Pr(>F)   
## 1   2492 188042054                                
## 2   2487 186743194  5   1298860 3.4596 0.004052 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##      df      BIC
## mod2  7 35193.65
## mod1 12 35215.45

Visto l’elevato p-value possiamo dunque ritenere migliore il modello 2. Controlliamo ora che i parametri mantenuti soddifano anche la non eccessiva collinearità, ovvero se il VIF è minore di 5 per ciascuna variabile.

## N.gravidanze   Gestazione    Lunghezza       Cranio        Sesso 
##     1.023462     1.669779     2.075747     1.624568     1.040184

Per ora questo sembra un modello lineare affidabile. Proviamo a costruire altri due modelli che invece siano non lineari e verifichiamo se sono migliori o peggiori di quello precedentemente ottenuto.

Per cominciare proponiamo delle relazioni quadratiche e le interazioni tra ciascuna variabile che dalle visualizzazioni grafiche viste sopra sembrano sottostare ad una relazione di questo tipo, dopodiché rimuovendo le variabile meno significative cerchiamo di perfezionare ulteriormente il modello. Vediamo se queste qualcuno di questi sembra particolarmente efficace e non eccessivamente complicato.

## 
## Call:
## lm(formula = Peso ~ N.gravidanze + Gestazione * Lunghezza + Cranio + 
##     Sesso, data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1133.41  -179.98   -11.52   168.93  2652.65 
## 
## Coefficients:
##                        Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          -1.991e+03  9.206e+02  -2.163 0.030631 *  
## N.gravidanze          1.303e+01  4.321e+00   3.015 0.002594 ** 
## Gestazione           -9.391e+01  2.481e+01  -3.785 0.000157 ***
## Lunghezza            -8.476e-02  2.028e+00  -0.042 0.966661    
## Cranio                1.076e+01  4.264e-01  25.234  < 2e-16 ***
## SessoM                7.225e+01  1.121e+01   6.445 1.38e-10 ***
## Gestazione:Lunghezza  2.729e-01  5.298e-02   5.151 2.79e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 273.3 on 2491 degrees of freedom
## Multiple R-squared:  0.7299, Adjusted R-squared:  0.7292 
## F-statistic:  1122 on 6 and 2491 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = Peso ~ N.gravidanze + Gestazione + I(Gestazione^2) + 
##     Lunghezza + I(Lunghezza^2) + Cranio + Sesso, data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1190.98  -182.32   -13.58   163.60  1403.84 
## 
## Coefficients:
##                   Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     -2.359e+03  9.058e+02  -2.605 0.009245 ** 
## N.gravidanze     1.447e+01  4.249e+00   3.405 0.000673 ***
## Gestazione       3.362e+02  6.274e+01   5.358 9.17e-08 ***
## I(Gestazione^2) -3.868e+00  8.250e-01  -4.689 2.89e-06 ***
## Lunghezza       -3.212e+01  4.039e+00  -7.953 2.73e-15 ***
## I(Lunghezza^2)   4.368e-02  4.142e-03  10.545  < 2e-16 ***
## Cranio           1.045e+01  4.194e-01  24.909  < 2e-16 ***
## SessoM           7.260e+01  1.101e+01   6.596 5.15e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 268.6 on 2490 degrees of freedom
## Multiple R-squared:  0.7392, Adjusted R-squared:  0.7385 
## F-statistic:  1008 on 7 and 2490 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = Peso ~ N.gravidanze + poly(Gestazione, 2) * poly(Lunghezza, 
##     2) + Cranio + Sesso, data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1220.98  -180.76    -9.49   164.71  1345.08 
## 
## Coefficients:
##                                            Estimate Std. Error t value Pr(>|t|)
## (Intercept)                              -2.813e+02  1.433e+02  -1.963 0.049710
## N.gravidanze                              1.429e+01  4.238e+00   3.371 0.000759
## poly(Gestazione, 2)1                      4.706e+03  8.160e+02   5.768 9.04e-09
## poly(Gestazione, 2)2                     -1.751e+03  8.440e+02  -2.075 0.038063
## poly(Lunghezza, 2)1                       1.132e+04  5.575e+02  20.309  < 2e-16
## poly(Lunghezza, 2)2                       4.893e+03  5.941e+02   8.237 2.83e-16
## Cranio                                    1.037e+01  4.211e-01  24.623  < 2e-16
## SessoM                                    7.509e+01  1.100e+01   6.824 1.10e-11
## poly(Gestazione, 2)1:poly(Lunghezza, 2)1 -5.060e+04  2.398e+04  -2.110 0.034933
## poly(Gestazione, 2)2:poly(Lunghezza, 2)1 -4.037e+04  1.790e+04  -2.256 0.024188
## poly(Gestazione, 2)1:poly(Lunghezza, 2)2  2.229e+04  1.654e+04   1.348 0.177894
## poly(Gestazione, 2)2:poly(Lunghezza, 2)2  2.475e+03  7.426e+03   0.333 0.738903
##                                             
## (Intercept)                              *  
## N.gravidanze                             ***
## poly(Gestazione, 2)1                     ***
## poly(Gestazione, 2)2                     *  
## poly(Lunghezza, 2)1                      ***
## poly(Lunghezza, 2)2                      ***
## Cranio                                   ***
## SessoM                                   ***
## poly(Gestazione, 2)1:poly(Lunghezza, 2)1 *  
## poly(Gestazione, 2)2:poly(Lunghezza, 2)1 *  
## poly(Gestazione, 2)1:poly(Lunghezza, 2)2    
## poly(Gestazione, 2)2:poly(Lunghezza, 2)2    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 267.8 on 2486 degrees of freedom
## Multiple R-squared:  0.7412, Adjusted R-squared:   0.74 
## F-statistic: 647.2 on 11 and 2486 DF,  p-value: < 2.2e-16
## 
## Call:
## lm(formula = Peso ~ N.gravidanze + I(N.gravidanze^2) + Gestazione + 
##     I(Gestazione^2) + Lunghezza + Cranio + Sesso, data = dati_filtrati)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1152.94  -181.06   -13.09   167.20  2658.69 
## 
## Coefficients:
##                     Estimate Std. Error t value Pr(>|t|)    
## (Intercept)       -4524.2767   899.9541  -5.027 5.33e-07 ***
## N.gravidanze         26.7356     8.0754   3.311 0.000944 ***
## I(N.gravidanze^2)    -2.7171     1.3049  -2.082 0.037421 *  
## Gestazione          -87.9322    49.8110  -1.765 0.077633 .  
## I(Gestazione^2)       1.6149     0.6633   2.434 0.014985 *  
## Lunghezza            10.3434     0.3038  34.043  < 2e-16 ***
## Cranio               10.5961     0.4284  24.736  < 2e-16 ***
## SessoM               75.8277    11.2361   6.749 1.85e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 274.3 on 2490 degrees of freedom
## Multiple R-squared:  0.7281, Adjusted R-squared:  0.7273 
## F-statistic: 952.4 on 7 and 2490 DF,  p-value: < 2.2e-16
##      df      BIC
## mod2  7 35193.65
## mod3  8 35175.01
## mod4  9 35094.91
## mod5 13 35107.50
## mod6  9 35199.69
##      df      AIC
## mod2  7 35152.89
## mod3  8 35128.42
## mod4  9 35042.50
## mod5 13 35031.80
## mod6  9 35147.28

Con questi semplici test vediamo che a tutti gli effetti il modello 4 sembrerebbe apportare il miglioramento più significativo. Saggiamo ora la possibilità di considerarlo al posto del modello 2 con un testo anova.

anova(mod2, mod4)
## Analysis of Variance Table
## 
## Model 1: Peso ~ N.gravidanze + Gestazione + Lunghezza + Cranio + Sesso
## Model 2: Peso ~ N.gravidanze + Gestazione + I(Gestazione^2) + Lunghezza + 
##     I(Lunghezza^2) + Cranio + Sesso
##   Res.Df       RSS Df Sum of Sq      F    Pr(>F)    
## 1   2492 188042054                                  
## 2   2490 179625530  2   8416523 58.336 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Notiamo che per quanto riguarda la variabile Ospedale, la differenza tra il primo e il secondo ospedale non è statisticamente significativa, ma lo è per l’ospedale 3.

Analisi della Qualità del Modello

Per verificare la qualità del nostro modello partiamo da un’analisi attenta dei residui, che in particolare comincia dalla visione dei seguenti grafici.

Come prima inferenza possiamo vedere come i residui, a meno di un singolo valore (1551), si dispongono in maniera abbastanza simmetrica. Per quanto riguarda la normalità dei residui, vediamo che aderiscono molto nella fascia centrale e si discostano lievemente agli estremi. Anche qui il vaore 1551 è quello che più si allontana. Per verificare computazionalmente la normalità dei residui effettuiamo un test di Shapiro-Wilk, per verificare l’omoschedaticità usiamo il test di Breusch-Pagan e infine con Durbin-Watson verifichiamo un eventuale autocorrelazione.

## 
##  Shapiro-Wilk normality test
## 
## data:  residuals(mod4)
## W = 0.98912, p-value = 7.492e-13
## 
##  studentized Breusch-Pagan test
## 
## data:  mod4
## BP = 97.461, df = 7, p-value < 2.2e-16
## 
##  Durbin-Watson test
## 
## data:  mod4
## DW = 1.9491, p-value = 0.1018
## alternative hypothesis: true autocorrelation is greater than 0

Come ci riporta il test di Shapiro-Wilk, i residui non risultano seguire strettamente una distribuzione normale. I valori troppo disallineati nelle code ne grafico relativo ai residui ci mette dunque in allerta che questo modello può funzionare in modo eccellente per valori non critici ma potrebbe richiedere più attenzione per valori limite. Successivamente, il test di Breusch-Pagan ci dice che dobbiamo rifiutare anche l’ipotesi di omoschedasticità, come potevamo aspettarci. Infatti i valori della varianza differiscono maggiormente nei pressi dei valori più estremi, il che ci porta di nuovo a porre attenzione a quei casi limite. Infine il test di Durbin-Watson ci dice che possiamo rifiutare l’ipotesi di autocorrelazione.

Vediamo ora brevemente come sono distribuiti i casi più influenti (distanza di Cook più elevata) per notare eventuali pattern o distribuzioni legate a qualche variabile.

Dai Boxplot emerge una variabilità molto alta rispetto ai dati più fedeli al modello, portandoci di nuovo a dover porre attenzione ai casi agli estremi.

Dal’analisi con la gestazione vediamo che appunto questi valori influenti ricoprono i casi con gestazioni molto abbreviate o troppo prolungate rispetto alla media.

Possiamo dunque concludere che il nostro modello, che riporta un R quadro aggiustato di 0.7385 e un valore del RSME che ora calcoliamo:

## [1] 268.1562

3. Previsioni e Risultati

Ora che abbiamo scelto il nostro modello ed esaminato punti i suoi di forza e i suoi limiti, utilizziamo per fare qualche previsione di possibili pazienti. In particolare studiamo anche il caso (Paziente 4) di stima del peso di una neonata considerando una madre alla terza gravidanza che partorirà alla 39esima settimana. Dato che valor importanti nel modello come Lunghezza e Cranio non sono forniti assumeremo che siano uguali alla media.

ID_paziente N.gravidanze Gestazione Lunghezza Cranio Sesso Predizione_Peso
Paziente1 1 39 500.0 340.00 M 3364.63
Paziente2 0 37 480.0 330.00 F 2875.11
Paziente3 3 40 510.0 350.00 M 3648.52
Paziente4 3 39 494.7 340.03 F 3261.20