Ejercicio 4.39

Primero vamos a cargar la base de datos indicada en la tabla 4.6 del ejercicio 4.39

data <-read.table("T4-6.DAT", col.names = c("Indep", "Supp", "Benev", "Conform", "Leader","Gender","Socio"))

#(a) Examinar cada variable individualmente Se pide analizar normalidad marginal (univariada).
Test Shapiro-Wilk.
Si p ≥ 0.05 → no se rechaza la normalidad para esa variable.
Si p < 0.05 → esa variable muestra evidencia de no ser normal.

apply(data[,1:5], 2, shapiro.test)
## $Indep
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.97486, p-value = 0.01617
## 
## 
## $Supp
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.97788, p-value = 0.03198
## 
## 
## $Benev
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.98387, p-value = 0.1269
## 
## 
## $Conform
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.98461, p-value = 0.15
## 
## 
## $Leader
## 
##  Shapiro-Wilk normality test
## 
## data:  newX[, i]
## W = 0.96256, p-value = 0.001196

En esta prueba indica que “Benev”, “Conform” son las unicas variables que no se rechaza la normalidad, mientras que el resto de variables muestran evidencia de no ser normales.

#(b) Normalidad multivariada Utilizando una prueba royston se podrá verificar si existe normalidad multivariada,
Si p ≥ 0.05 → los datos podrían provenir de una distribución normal multivariada.
Si p < 0.05 → se rechaza la hipótesis de normalidad multivariada.

library(MVN)
mvn(data[,1:5],mvn_test ="royston")
## $multivariate_normality
##      Test Statistic p.value     Method          MVN
## 1 Royston    23.208  <0.001 asymptotic ✗ Not normal
## 
## $univariate_normality
##               Test Variable Statistic p.value    Normality
## 1 Anderson-Darling    Indep     1.003   0.012 ✗ Not normal
## 2 Anderson-Darling     Supp     1.210   0.004 ✗ Not normal
## 3 Anderson-Darling    Benev     0.540   0.163     ✓ Normal
## 4 Anderson-Darling  Conform     0.587   0.124     ✓ Normal
## 5 Anderson-Darling   Leader     1.465  <0.001 ✗ Not normal
## 
## $descriptives
##   Variable   n   Mean Std.Dev Median Min Max  25th 75th   Skew Kurtosis
## 1    Indep 130 15.669   5.895     15   3  31 11.25   19  0.432    2.670
## 2     Supp 130 17.077   4.185     18   6  27 14.00   20 -0.314    2.611
## 3    Benev 130 18.785   5.463     19   2  29 15.00   22 -0.302    2.829
## 4  Conform 130 15.500   5.748     16   1  27 11.25   19 -0.163    2.409
## 5   Leader 130 11.731   5.192     11   2  29  8.00   15  0.677    3.173
## 
## $data
##     Indep Supp Benev Conform Leader
## 1      27   13    14      20     11
## 2      12   13    24      25      6
## 3      14   20    15      16      7
## 4      18   20    17      12      6
## 5       9   22    22      21      6
## 6      18   15    17      25      9
## 7      12   18    29      18      4
## 8      10   19    21      10     16
## 9       8   23    23      19      9
## 10     21   11    17       9     16
## 11     15   16    16      12     19
## 12      9   20    29      14      7
## 13     16   22    24      17      4
## 14     14   19    17      18     15
## 15     13   26    23      17      5
## 16     13   20    22      18      5
## 17     18   17    11      23     14
## 18     15   24    15       8     15
## 19     18   22    24      11      6
## 20     18   18    17      24      7
## 21      9   16    27      18      9
## 22     25   17    15      14     14
## 23      9   21    21      18      4
## 24     28   17    19      12      7
## 25     18   18    26      14      6
## 26     25   13    11      20      6
## 27      6   16    22      23     15
## 28     25   13    18       9     15
## 29      4   23    27      16      8
## 30     17    7    19      22     12
## 31     13   14    16      20     16
## 32     14   16    21      19     10
## 33     17   12    22      19     12
## 34     14   16    19      18     13
## 35     10   19    23      23      3
## 36      8   21    16      20     10
## 37     15   12    15      23     11
## 38      8   22    18      15      9
## 39      9   17    29      20     10
## 40      9   14    23      21     12
## 41     21   16    22      11     11
## 42     12   18    19      18      8
## 43     18   20    13      13     17
## 44     10   14    28      20     10
## 45     15   11    22      25      9
## 46     20   14    14       9     17
## 47      7   14    23      17     23
## 48     22   17    11      15     11
## 49     18   21    15       8     15
## 50      7   14    24      24     14
## 51     13   17    19      24      8
## 52     15   20    17      19     10
## 53     15   19    29      17      2
## 54      7   21    21      25      8
## 55     29   16     8      12     18
## 56     14   16    23      22      9
## 57     15   19    12      15     14
## 58     19   17    21      18      5
## 59      9   14    21      18     17
## 60     25    6    19      11     25
## 61     10   18    22      18     12
## 62     16   18    19      21     10
## 63     12   14    21      27      9
## 64     12   21    19      17     10
## 65     18   22    14       8     23
## 66     15   12    15      19     17
## 67      8   15    25      17     16
## 68      7   23    29      14      8
## 69     15   16    14      18     15
## 70     10   19    22      15     14
## 71     10   11    28      18      9
## 72     20   10    14      27     13
## 73     27   13    19       4     17
## 74     29   21    11       4     13
## 75     16   13     9      16     22
## 76      3   20    25      20      8
## 77     12   17     9      14     21
## 78     19   27    12       6      7
## 79     22   17    21      11      9
## 80     20   11    23      18      7
## 81     15   21    21      14      8
## 82     12   12    28      25      5
## 83     26   18     9       1     19
## 84     26   22    16       5     14
## 85     12   17    10      15     20
## 86     22   12    18      14     14
## 87     19   20    17      15     11
## 88     22   24     9      11     10
## 89     23   15    14      14     11
## 90      9   19    18      21      6
## 91     15   12    12      17     21
## 92     15   20    20      10     11
## 93     16   19    19      16      7
## 94     11   20    22      13     11
## 95     14    7    20      14     19
## 96     13   11    26       9     22
## 97     21   13    18      19     14
## 98     12   19    20       7     14
## 99     22   22    14      13      4
## 100    21   21    21       5      9
## 101    17   19    25      10     14
## 102    14   18    12      12     17
## 103    16   19    14      12     15
## 104    24    9     2      20     23
## 105    21   18    18       8      8
## 106    11   11    24      27      9
## 107    28   23    11       6     10
## 108    13   19    24      19      4
## 109    17   19    20       8      6
## 110    14   20    21      13      7
## 111    31   10     6       7     21
## 112    19   20    12       4     18
## 113    10   19    22      11     11
## 114    10   22    26       9     10
## 115    18   15    19      17      9
## 116    18   20     8       6     17
## 117    13   19    24      17     12
## 118    18   24    16      12     10
## 119    20   13    18      23      7
## 120    16   21    19      12     13
## 121     9   19    19      19     12
## 122    10   15    20      22     10
## 123    13   22    14      12      9
## 124    22   10    17      14     18
## 125    16   18    16       8     16
## 126    10   11    26      17     10
## 127    14   12    14      11     29
## 128    19   11    23      18     13
## 129    27   19    22       7      9
## 130    10   17    22      22      8
## 
## $subset
## NULL
## 
## $outlierMethod
## [1] "none"
## 
## attr(,"class")
## [1] "mvn"

En este caso p < 0.05, lo que indica que los 5 indicadores psicológicos no siguen una normalidad conjunta.

#(c) Transformacion Box–Cox para la normalidad

library(MASS)
library(nortest)
library(car)
## Cargando paquete requerido: carData
library(moments)
df<-as.data.frame(data[,1:5])
lambda_bc<-sapply(df, function(V) {
  pt<-powerTransform(V ~ 1, family="bcPower")
  pt$lambda})
lambda_bc
##   Indep.Y1    Supp.Y1   Benev.Y1 Conform.Y1  Leader.Y1 
##  0.5237726  1.3962619  1.2618757  1.0392663  0.3815471
df_bc <- as.data.frame(mapply(bcPower, df, lambda_bc))
names(df_bc) <- names(df)
univ_tests <- function(x) {
  c(
    SW   = shapiro.test(x)$p.value,
    AD   = ad.test(x)$p.value,
    CVM  = cvm.test(x)$p.value,
    KS_L = lillie.test(x)$p.value,
    Pear = pearson.test(x)$p.value,
    SF   = sf.test(x)$p.value,
    JB   = jarque.test(x)$p.value)}
uni_orig <- t(sapply(df,    univ_tests))
uni_bc   <- t(sapply(df_bc, univ_tests))
round(uni_orig, 4)
##             SW     AD    CVM   KS_L   Pear     SF     JB
## Indep   0.0162 0.0117 0.0248 0.0098 0.0000 0.0275 0.0984
## Supp    0.0320 0.0036 0.0027 0.0002 0.0001 0.0412 0.2287
## Benev   0.1269 0.1634 0.1380 0.0380 0.6698 0.1601 0.3431
## Conform 0.1500 0.1236 0.0923 0.0057 0.0000 0.2583 0.2916
## Leader  0.0012 0.0008 0.0011 0.0001 0.0010 0.0020 0.0064
round(uni_bc, 4)
##             SW     AD    CVM   KS_L   Pear     SF     JB
## Indep   0.3965 0.3156 0.3653 0.1250 0.2211 0.4229 0.7866
## Supp    0.1050 0.0177 0.0143 0.0014 0.0001 0.1283 0.4800
## Benev   0.2733 0.3257 0.2986 0.1141 0.6698 0.4050 0.5716
## Conform 0.1611 0.1399 0.1065 0.0080 0.0000 0.2831 0.3010
## Leader  0.7276 0.3412 0.2314 0.0701 0.0588 0.6844 0.8208

Al aplicar de nuevo las pruebas de normalidad, se observó que algunas pruebas corrigieron la normalidad. Los tests de Shapiro–Wilk, Shapiro–Francia (SF) y Jarque–Bera (JB) dieron p-valores ≥ 0.05, es decir, no rechazaron la normalidad. Esto indica que tras la transformación, las distribuciones de esas variables se aproximaron lo suficiente a la normal en los test antes mencionados.