Skip to contents
library(ASQ3) # Load the package with the data

# Complementary packages
library(data.table)
library(skimr)

We will first calculate the statistics for the entire database without considering the underlying structure of the database.

descriptives <- skim(dataset)

print(descriptives)
#> ── Data Summary ────────────────────────
#>                            Values                       
#> Name                       dataset                      
#> Number of rows             1523                         
#> Number of columns          55                           
#> Key                        paciente_id, fecha_evaluacion
#> _______________________                                 
#> Column type frequency:                                  
#>   character                2                            
#>   Date                     1                            
#>   factor                   13                           
#>   numeric                  39                           
#> ________________________                                
#> Group variables            None                         
#> 
#> ── Variable type: character ────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable n_missing complete_rate   min   max empty n_unique whitespace
#> 1 diagnostico           6         0.996    18   100     0       36          0
#> 2 alteracion           22         0.986     9    25     0        7          0
#> 
#> ── Variable type: Date ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable    n_missing complete_rate min        max        median     n_unique
#> 1 fecha_nacimiento         0             1 2006-05-31 2108-02-13 2019-11-05      656
#> 
#> ── Variable type: factor ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable                       n_missing complete_rate ordered n_unique top_counts                           
#>  1 profesional_id                              0         1     FALSE          4 2: 1070, 4: 353, 1: 99, 3: 1         
#>  2 profesional_especialidad                    0         1     FALSE          3 Enf: 1169, Kin: 353, Fon: 1          
#>  3 paciente_id                                 0         1     FALSE        804 378: 6, 200: 5, 244: 5, 286: 5       
#>  4 sexo_paciente                               1         0.999 FALSE          2 M: 866, F: 656                       
#>  5 respondedor_vinculo                         0         1     FALSE          6 Mad: 1357, Pad: 116, Abu: 28, Tio: 12
#>  6 n_evaluacion                                0         1     FALSE          6 1: 804, 2: 367, 3: 207, 4: 109       
#>  7 evaluacion_tipo                            12         0.992 FALSE          3 Eva: 955, Pri: 549, Eva: 7           
#>  8 fecha_evaluacion                            0         1     FALSE        337 202: 15, 202: 14, 202: 13, 202: 13   
#>  9 comunicacion_interpretacion                 0         1     FALSE          3 Sob: 838, Deb: 357, Ape: 328         
#> 10 motora_gruesa_interpretacion                0         1     FALSE          3 Sob: 790, Deb: 460, Ape: 273         
#> 11 motora_fina_interpretacion                  0         1     FALSE          3 Sob: 897, Ape: 335, Deb: 291         
#> 12 resolucion_problemas_interpretacion         0         1     FALSE          3 Sob: 915, Deb: 305, Ape: 303         
#> 13 socio_individual_interpretacion             0         1     FALSE          3 Sob: 938, Deb: 293, Ape: 292         
#> 
#> ── Variable type: numeric ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable              n_missing complete_rate  mean    sd    p0   p25   p50   p75  p100 hist 
#>  1 edad_cronologica_meses             0             1 17.4  12.8      0     8    14    23    71 ▇▅▂▁▁
#>  2 semanas_prematurez                 0             1  1.84  3.39     0     0     0     3    20 ▇▁▁▁▁
#>  3 edad_corregida_meses               0             1 17.0  12.9     -1     7    14    23    71 ▇▆▂▁▁
#>  4 asq3_meses                         0             1 17.7  12.9      2     8    14    24    60 ▇▇▂▁▁
#>  5 comunicacion_q1                    0             1  7.88  3.86     0    10    10    10    10 ▂▁▁▁▇
#>  6 comunicacion_q2                    0             1  6.85  4.33     0     0    10    10    10 ▃▁▂▁▇
#>  7 comunicacion_q3                    0             1  6.77  4.27     0     0    10    10    10 ▃▁▂▁▇
#>  8 comunicacion_q4                    0             1  5.84  4.70     0     0    10    10    10 ▆▁▂▁▇
#>  9 comunicacion_q5                    0             1  5.10  4.69     0     0     5    10    10 ▇▁▂▁▇
#> 10 comunicacion_q6                    0             1  4.22  4.68     0     0     0    10    10 ▇▁▂▁▆
#> 11 comunicacion_total                 0             1 36.6  17.6      0    25    40    50    60 ▃▂▅▅▇
#> 12 motora_gruesa_q1                   0             1  8.28  3.57     0    10    10    10    10 ▂▁▁▁▇
#> 13 motora_gruesa_q2                   0             1  7.72  3.92     0     5    10    10    10 ▂▁▁▁▇
#> 14 motora_gruesa_q3                   0             1  6.53  4.56     0     0    10    10    10 ▅▁▁▁▇
#> 15 motora_gruesa_q4                   0             1  6.43  4.62     0     0    10    10    10 ▅▁▁▁▇
#> 16 motora_gruesa_q5                   0             1  5.64  4.74     0     0    10    10    10 ▆▁▁▁▇
#> 17 motora_gruesa_q6                   0             1  4.95  4.84     0     0     5    10    10 ▇▁▁▁▇
#> 18 motora_gruesa_total                0             1 39.5  18.1      0    30    45    55    60 ▂▂▃▃▇
#> 19 motora_fina_q1                     0             1  8.37  3.49     0    10    10    10    10 ▁▁▁▁▇
#> 20 motora_fina_q2                     0             1  7.74  4.01     0     5    10    10    10 ▂▁▁▁▇
#> 21 motora_fina_q3                     0             1  6.69  4.53     0     0    10    10    10 ▃▁▁▁▇
#> 22 motora_fina_q4                     0             1  6.92  4.37     0     0    10    10    10 ▃▁▁▁▇
#> 23 motora_fina_q5                     0             1  6.10  4.72     0     0    10    10    10 ▅▁▁▁▇
#> 24 motora_fina_q6                     0             1  5.14  4.78     0     0     5    10    10 ▇▁▂▁▇
#> 25 motora_fina_total                  0             1 40.9  15.1      0    30    45    50    60 ▁▂▃▅▇
#> 26 resolucion_problemas_q1            0             1  8.04  3.86     0    10    10    10    10 ▂▁▁▁▇
#> 27 resolucion_problemas_q2            0             1  7.29  4.30     0     5    10    10    10 ▃▁▁▁▇
#> 28 resolucion_problemas_q3            0             1  7.17  4.36     0     0    10    10    10 ▃▁▁▁▇
#> 29 resolucion_problemas_q4            0             1  6.38  4.66     0     0    10    10    10 ▅▁▁▁▇
#> 30 resolucion_problemas_q5            0             1  6.10  4.71     0     0    10    10    10 ▅▁▁▁▇
#> 31 resolucion_problemas_q6            0             1  5.14  4.88     0     0     5    10    10 ▇▁▁▁▇
#> 32 resolucion_problemas_total         0             1 40.1  14.9      0    30    40    50    60 ▁▂▃▅▇
#> 33 socio_individual_q1                0             1  7.71  3.98     0     5    10    10    10 ▂▁▁▁▇
#> 34 socio_individual_q2                0             1  7.94  3.83     0    10    10    10    10 ▂▁▁▁▇
#> 35 socio_individual_q3                0             1  7.37  4.21     0     5    10    10    10 ▂▁▁▁▇
#> 36 socio_individual_q4                0             1  6.38  4.55     0     0    10    10    10 ▅▁▂▁▇
#> 37 socio_individual_q5                0             1  6.36  4.60     0     0    10    10    10 ▅▁▁▁▇
#> 38 socio_individual_q6                0             1  6.12  4.66     0     0    10    10    10 ▅▁▁▁▇
#> 39 socio_individual_total             0             1 41.9  13.9      0    35    45    50    60 ▁▁▃▅▇

Despite the above results, we cannot ignore that there is more than one observation per subject, so it is necessary to consider each subject as the minimum unit of analysis. For this we will use the first observation for each subject.

descriptives_by_patient <- skim(
  data = dataset[n_evaluacion == 1]
)

print(descriptives_by_patient)
#> ── Data Summary ────────────────────────
#>                            Values                       
#> Name                       dataset[n_evaluacion == 1... 
#> Number of rows             804                          
#> Number of columns          55                           
#> Key                        paciente_id, fecha_evaluacion
#> _______________________                                 
#> Column type frequency:                                  
#>   character                2                            
#>   Date                     1                            
#>   factor                   13                           
#>   numeric                  39                           
#> ________________________                                
#> Group variables            None                         
#> 
#> ── Variable type: character ────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable n_missing complete_rate   min   max empty n_unique whitespace
#> 1 diagnostico           4         0.995    18   100     0       34          0
#> 2 alteracion           13         0.984     9    25     0        6          0
#> 
#> ── Variable type: Date ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable    n_missing complete_rate min        max        median     n_unique
#> 1 fecha_nacimiento         0             1 2006-05-31 2108-02-13 2019-09-17      624
#> 
#> ── Variable type: factor ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable                       n_missing complete_rate ordered n_unique top_counts                        
#>  1 profesional_id                              0         1     FALSE          4 2: 436, 4: 343, 1: 24, 3: 1       
#>  2 profesional_especialidad                    0         1     FALSE          3 Enf: 460, Kin: 343, Fon: 1        
#>  3 paciente_id                                 0         1     FALSE        804 1: 1, 2: 1, 3: 1, 4: 1            
#>  4 sexo_paciente                               1         0.999 FALSE          2 M: 461, F: 342                    
#>  5 respondedor_vinculo                         0         1     FALSE          5 Mad: 724, Pad: 63, Abu: 11, Tio: 4
#>  6 n_evaluacion                                0         1     FALSE          1 1: 804, 2: 0, 3: 0, 4: 0          
#>  7 evaluacion_tipo                            12         0.985 FALSE          3 Pri: 532, Eva: 259, Eva: 1        
#>  8 fecha_evaluacion                            0         1     FALSE        235 202: 15, 202: 14, 202: 13, 202: 13
#>  9 comunicacion_interpretacion                 0         1     FALSE          3 Sob: 467, Deb: 174, Ape: 163      
#> 10 motora_gruesa_interpretacion                0         1     FALSE          3 Sob: 397, Deb: 260, Ape: 147      
#> 11 motora_fina_interpretacion                  0         1     FALSE          3 Sob: 449, Ape: 187, Deb: 168      
#> 12 resolucion_problemas_interpretacion         0         1     FALSE          3 Sob: 466, Deb: 181, Ape: 157      
#> 13 socio_individual_interpretacion             0         1     FALSE          3 Sob: 487, Deb: 163, Ape: 154      
#> 
#> ── Variable type: numeric ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable              n_missing complete_rate  mean    sd    p0   p25   p50   p75  p100 hist 
#>  1 edad_cronologica_meses             0             1 16.7  14.5      1   5      12  24.2    65 ▇▃▂▁▁
#>  2 semanas_prematurez                 0             1  1.90  3.28     0   0       0   3      16 ▇▂▁▁▁
#>  3 edad_corregida_meses               0             1 16.3  14.6     -1   5      12  24      65 ▇▃▂▂▁
#>  4 asq3_meses                         0             1 16.8  14.5      2   6      12  24      60 ▇▃▂▁▁
#>  5 comunicacion_q1                    0             1  8.10  3.68     0  10      10  10      10 ▂▁▁▁▇
#>  6 comunicacion_q2                    0             1  7.18  4.17     0   5      10  10      10 ▃▁▂▁▇
#>  7 comunicacion_q3                    0             1  6.77  4.21     0   5      10  10      10 ▃▁▂▁▇
#>  8 comunicacion_q4                    0             1  6.07  4.58     0   0      10  10      10 ▅▁▂▁▇
#>  9 comunicacion_q5                    0             1  5.18  4.63     0   0       5  10      10 ▇▁▂▁▇
#> 10 comunicacion_q6                    0             1  5.01  4.73     0   0       5  10      10 ▇▁▂▁▇
#> 11 comunicacion_total                 0             1 38.3  17.2      0  30      40  50      60 ▂▂▃▅▇
#> 12 motora_gruesa_q1                   0             1  8.25  3.55     0  10      10  10      10 ▂▁▁▁▇
#> 13 motora_gruesa_q2                   0             1  7.41  4.06     0   5      10  10      10 ▂▁▁▁▇
#> 14 motora_gruesa_q3                   0             1  6.45  4.55     0   0      10  10      10 ▅▁▁▁▇
#> 15 motora_gruesa_q4                   0             1  6.18  4.66     0   0      10  10      10 ▅▁▁▁▇
#> 16 motora_gruesa_q5                   0             1  6.04  4.62     0   0      10  10      10 ▅▁▂▁▇
#> 17 motora_gruesa_q6                   0             1  5.04  4.82     0   0       5  10      10 ▇▁▁▁▇
#> 18 motora_gruesa_total                0             1 39.3  18.2      0  28.8    45  55      60 ▂▂▃▃▇
#> 19 motora_fina_q1                     0             1  8.21  3.58     0  10      10  10      10 ▂▁▁▁▇
#> 20 motora_fina_q2                     0             1  7.79  3.91     0   5      10  10      10 ▂▁▁▁▇
#> 21 motora_fina_q3                     0             1  6.14  4.67     0   0      10  10      10 ▅▁▁▁▇
#> 22 motora_fina_q4                     0             1  6.62  4.42     0   0      10  10      10 ▃▁▂▁▇
#> 23 motora_fina_q5                     0             1  6.23  4.65     0   0      10  10      10 ▅▁▁▁▇
#> 24 motora_fina_q6                     0             1  5.06  4.77     0   0       5  10      10 ▇▁▂▁▇
#> 25 motora_fina_total                  0             1 40.0  15.4      0  30      40  50      60 ▂▂▅▅▇
#> 26 resolucion_problemas_q1            0             1  7.95  3.92     0  10      10  10      10 ▂▁▁▁▇
#> 27 resolucion_problemas_q2            0             1  7.37  4.24     0   5      10  10      10 ▂▁▁▁▇
#> 28 resolucion_problemas_q3            0             1  7.20  4.30     0   5      10  10      10 ▃▁▁▁▇
#> 29 resolucion_problemas_q4            0             1  6.29  4.68     0   0      10  10      10 ▅▁▁▁▇
#> 30 resolucion_problemas_q5            0             1  6.01  4.71     0   0      10  10      10 ▅▁▁▁▇
#> 31 resolucion_problemas_q6            0             1  4.92  4.86     0   0       5  10      10 ▇▁▁▁▇
#> 32 resolucion_problemas_total         0             1 39.7  15.5      0  30      40  50      60 ▂▂▃▅▇
#> 33 socio_individual_q1                0             1  7.54  4.07     0   5      10  10      10 ▂▁▁▁▇
#> 34 socio_individual_q2                0             1  7.74  3.97     0   5      10  10      10 ▂▁▁▁▇
#> 35 socio_individual_q3                0             1  7.57  4.12     0   5      10  10      10 ▂▁▁▁▇
#> 36 socio_individual_q4                0             1  6.38  4.47     0   0      10  10      10 ▅▁▂▁▇
#> 37 socio_individual_q5                0             1  6.15  4.66     0   0      10  10      10 ▅▁▁▁▇
#> 38 socio_individual_q6                0             1  6.26  4.60     0   0      10  10      10 ▅▁▁▁▇
#> 39 socio_individual_total             0             1 41.6  14.0      0  35      45  50      60 ▁▁▃▅▇

Let’s try the same but only with the patients with congenital hypotonia (ch).

ch_patients <- skim(
  data = dataset[n_evaluacion == 1 & diagnostico %like% "hipotonia"]
)

print(ch_patients)
#> ── Data Summary ────────────────────────
#>                            Values                       
#> Name                       dataset[n_evaluacion == 1... 
#> Number of rows             234                          
#> Number of columns          55                           
#> Key                        paciente_id, fecha_evaluacion
#> _______________________                                 
#> Column type frequency:                                  
#>   character                2                            
#>   Date                     1                            
#>   factor                   13                           
#>   numeric                  39                           
#> ________________________                                
#> Group variables            None                         
#> 
#> ── Variable type: character ────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable n_missing complete_rate   min   max empty n_unique whitespace
#> 1 diagnostico           0             1    26    26     0        1          0
#> 2 alteracion            0             1    19    19     0        1          0
#> 
#> ── Variable type: Date ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>   skim_variable    n_missing complete_rate min        max        median     n_unique
#> 1 fecha_nacimiento         0             1 2016-10-28 2022-01-18 2020-03-10      212
#> 
#> ── Variable type: factor ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable                       n_missing complete_rate ordered n_unique top_counts                       
#>  1 profesional_id                              0         1     FALSE          3 2: 167, 4: 63, 1: 4, 3: 0        
#>  2 profesional_especialidad                    0         1     FALSE          2 Enf: 171, Kin: 63, Fon: 0        
#>  3 paciente_id                                 0         1     FALSE        234 3: 1, 45: 1, 62: 1, 69: 1        
#>  4 sexo_paciente                               0         1     FALSE          2 M: 140, F: 94                    
#>  5 respondedor_vinculo                         0         1     FALSE          4 Mad: 218, Pad: 11, Abu: 3, Tio: 2
#>  6 n_evaluacion                                0         1     FALSE          1 1: 234, 2: 0, 3: 0, 4: 0         
#>  7 evaluacion_tipo                             2         0.991 FALSE          2 Pri: 141, Eva: 91, Eva: 0        
#>  8 fecha_evaluacion                            0         1     FALSE        135 202: 5, 202: 5, 202: 4, 202: 4   
#>  9 comunicacion_interpretacion                 0         1     FALSE          3 Sob: 141, Ape: 51, Deb: 42       
#> 10 motora_gruesa_interpretacion                0         1     FALSE          3 Deb: 92, Sob: 89, Ape: 53        
#> 11 motora_fina_interpretacion                  0         1     FALSE          3 Sob: 128, Deb: 54, Ape: 52       
#> 12 resolucion_problemas_interpretacion         0         1     FALSE          3 Sob: 131, Deb: 56, Ape: 47       
#> 13 socio_individual_interpretacion             0         1     FALSE          3 Sob: 143, Ape: 49, Deb: 42       
#> 
#> ── Variable type: numeric ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────
#>    skim_variable              n_missing complete_rate   mean    sd    p0   p25   p50   p75  p100 hist 
#>  1 edad_cronologica_meses             0             1 11.4    9.98     1  4      8      17    48 ▇▃▂▁▁
#>  2 semanas_prematurez                 0             1  0.812  2.01     0  0      0       0    14 ▇▁▁▁▁
#>  3 edad_corregida_meses               0             1 11.2   10.0      0  3.25   8      17    48 ▇▅▂▁▁
#>  4 asq3_meses                         0             1 11.7    9.99     2  4      8      18    48 ▇▃▁▁▁
#>  5 comunicacion_q1                    0             1  8.33   3.50     0 10     10      10    10 ▁▁▁▁▇
#>  6 comunicacion_q2                    0             1  7.16   4.19     0  5     10      10    10 ▃▁▂▁▇
#>  7 comunicacion_q3                    0             1  6.82   4.09     0  5     10      10    10 ▃▁▃▁▇
#>  8 comunicacion_q4                    0             1  6.65   4.44     0  0     10      10    10 ▃▁▂▁▇
#>  9 comunicacion_q5                    0             1  5.21   4.70     0  0      5      10    10 ▇▁▂▁▇
#> 10 comunicacion_q6                    0             1  5.26   4.78     0  0      5      10    10 ▇▁▂▁▇
#> 11 comunicacion_total                 0             1 39.4   16.6      0 30     40      50    60 ▂▂▅▅▇
#> 12 motora_gruesa_q1                   0             1  8.23   3.55     0 10     10      10    10 ▂▁▁▁▇
#> 13 motora_gruesa_q2                   0             1  6.97   4.19     0  5     10      10    10 ▃▁▂▁▇
#> 14 motora_gruesa_q3                   0             1  5.73   4.69     0  0     10      10    10 ▆▁▂▁▇
#> 15 motora_gruesa_q4                   0             1  5.58   4.77     0  0     10      10    10 ▆▁▁▁▇
#> 16 motora_gruesa_q5                   0             1  5.53   4.71     0  0      7.5    10    10 ▆▁▂▁▇
#> 17 motora_gruesa_q6                   0             1  4.51   4.82     0  0      0      10    10 ▇▁▁▁▆
#> 18 motora_gruesa_total                0             1 36.4   17.7      0 25     40      50    60 ▃▂▆▅▇
#> 19 motora_fina_q1                     0             1  8.38   3.46     0 10     10      10    10 ▁▁▁▁▇
#> 20 motora_fina_q2                     0             1  7.82   3.90     0  5     10      10    10 ▂▁▁▁▇
#> 21 motora_fina_q3                     0             1  5.75   4.79     0  0     10      10    10 ▆▁▁▁▇
#> 22 motora_fina_q4                     0             1  6.69   4.45     0  0     10      10    10 ▃▁▁▁▇
#> 23 motora_fina_q5                     0             1  6.65   4.49     0  0     10      10    10 ▃▁▁▁▇
#> 24 motora_fina_q6                     0             1  5.04   4.77     0  0      5      10    10 ▇▁▂▁▇
#> 25 motora_fina_total                  0             1 40.3   15.0      0 30     40      50    60 ▁▂▅▅▇
#> 26 resolucion_problemas_q1            0             1  8.08   3.87     0 10     10      10    10 ▂▁▁▁▇
#> 27 resolucion_problemas_q2            0             1  7.35   4.30     0  5     10      10    10 ▃▁▁▁▇
#> 28 resolucion_problemas_q3            0             1  6.86   4.43     0  0     10      10    10 ▃▁▁▁▇
#> 29 resolucion_problemas_q4            0             1  6.15   4.63     0  0     10      10    10 ▅▁▁▁▇
#> 30 resolucion_problemas_q5            0             1  5.58   4.79     0  0     10      10    10 ▆▁▁▁▇
#> 31 resolucion_problemas_q6            0             1  4.85   4.87     0  0      5      10    10 ▇▁▁▁▇
#> 32 resolucion_problemas_total         0             1 38.8   15.6      0 30     40      50    60 ▂▂▅▅▇
#> 33 socio_individual_q1                0             1  7.37   4.17     0  5     10      10    10 ▂▁▁▁▇
#> 34 socio_individual_q2                0             1  8.21   3.67     0 10     10      10    10 ▂▁▁▁▇
#> 35 socio_individual_q3                0             1  7.88   3.95     0 10     10      10    10 ▂▁▁▁▇
#> 36 socio_individual_q4                0             1  6.67   4.35     0  0     10      10    10 ▃▁▂▁▇
#> 37 socio_individual_q5                0             1  6.09   4.65     0  0     10      10    10 ▅▁▁▁▇
#> 38 socio_individual_q6                0             1  5.94   4.70     0  0     10      10    10 ▅▁▁▁▇
#> 39 socio_individual_total             0             1 42.2   12.7      0 35     45      50    60 ▁▁▅▅▇