Lavorare con gli oggetti di output

R per utenti SAS

Melinda Higgins, PhD

Research Professor/Senior Biostatistician Emory University

Output da summary

# Salva l'output di summary, visualizza davissmry
davissmry <- daviskeep %>%
  select(weight, height, bmi) %>%
  summary()
# Mostra l'oggetto di output summary
davissmry
     weight          height           bmi       
 Min.   : 39.0   Min.   :148.0   Min.   :15.82  
 1st Qu.: 55.0   1st Qu.:164.0   1st Qu.:20.22  
 Median : 63.0   Median :170.0   Median :21.80  
 Mean   : 65.3   Mean   :170.6   Mean   :22.26  
 3rd Qu.: 73.5   3rd Qu.:177.5   3rd Qu.:23.94  
 Max.   :119.0   Max.   :197.0   Max.   :36.73
R per utenti SAS

Output da summary

# Classe di davissmry
class(davissmry)
# Verifica che davissmry sia anche una matrice
is.matrix(davissmry)
# Mostra le dimensioni di davissmry
dim(davissmry)

[1] "table"

[1] TRUE

[1] 6 3
R per utenti SAS

Selezionare elementi dall'oggetto summary

# Mostra le colonne da 1 a 2 dell'output
davissmry[,1:2]
     weight          height     
 Min.   : 39.0   Min.   :148.0  
 1st Qu.: 55.0   1st Qu.:164.0  
 Median : 63.0   Median :170.0  
 Mean   : 65.3   Mean   :170.6  
 3rd Qu.: 73.5   3rd Qu.:177.5  
 Max.   :119.0   Max.   :197.0
# Mostra le righe da 4 a 6 dell'output
davissmry[4:6,]
     weight          height           bmi       
 Mean   : 65.3   Mean   :170.6   Mean   :22.26  
 3rd Qu.: 73.5   3rd Qu.:177.5   3rd Qu.:23.94  
 Max.   :119.0   Max.   :197.0   Max.   :36.73
R per utenti SAS

Output da dplyr summarise

# Salva l'output di summarise
davissmall <- daviskeep %>%
  select(weight, height) %>%
  summarise(across(everything(), 
                   list(mean = ~mean(.x),
                        sd = ~sd(.x))))
# Mostra l'oggetto di output davissmall
davissmall
  weight_mean weight_sd height_mean height_sd
1    65.29648  13.34346    170.5879  8.948848
# Mostra la struttura dell'oggetto davissmall
str(davissmall)
'data.frame':    1 obs. of  4 variables:
 $ weight_mean: num 65.3
 $ weight_sd  : num 13.3
 $ height_mean: num 171
 $ height_sd  : num 8.95
R per utenti SAS

Mostrare elementi dall'output di summarise

# Mostra la colonna 3 per la media dell'altezza
davissmall[, 3]
[1] 170.5879
# Mostra l'elemento con nome height_mean
davissmall$height_mean
[1] 170.5879
R per utenti SAS

Output da dplyr group_by

# Usa group_by per statistiche di bmi per sex
davisbmisex <- daviskeep %>%
  group_by(sex) %>%
  select(bmi, sex) %>%
  summarise(across(everything(), 
                   list(mean = ~mean(.x),
                        sd = ~sd(.x))))
# Mostra l'oggetto di output
davisbmisex
# A tibble: 2 × 3
  sex   bmi_mean bmi_sd
  <fct>    <dbl>  <dbl>
1 F         21.0   2.18
2 M         23.9   3.12
# Struttura di davisbmisex
str(davisbmisex)
tibble [2 × 3] (S3: tbl_df/tbl/data.frame)
 $ sex     : Factor w/ 2 levels "F","M": 1 2
 $ bmi_mean: num [1:2] 21 23.9
 $ bmi_sd  : num [1:2] 2.18 3.12
1 La variabile sex è stata codificata automaticamente come tipo Factor.
R per utenti SAS

Mostrare elementi dall'output di group_by

# Mostra la colonna 2 di davisbmisex
davisbmisex[, 2]
# A tibble: 2 × 1
  bmi_mean
     <dbl>
1     21.0
2     23.9
# Mostra la riga 1 di davisbmisex
davisbmisex[1,]
# A tibble: 1 × 3
  sex   bmi_mean bmi_sd
  <fct>    <dbl>  <dbl>
1 F         21.0   2.18
R per utenti SAS

Mostrare elementi dall'output di group_by

# Mostra l'elemento sd da davisbmisex
davisbmisex$bmi_sd
[1] 2.176094 3.120285
# Mostra la riga per i maschi
davisbmisex %>%
  filter(sex == "M")
# A tibble: 1 × 3
  sex   bmi_mean bmi_sd
  <fct>    <dbl>  <dbl>
1 M         23.9   3.12
R per utenti SAS

Output da psych describe

# Salva l'output di psych::describe() come davispsych
davispsych <- daviskeep %>%
  select(weight, height, bmi) %>%
  psych::describe()
# Mostra l'oggetto di output davispsych
davispsych
       vars   n   mean    sd median trimmed   mad    min    max range skew kurtosis   se
weight    1 199  65.30 13.34   63.0   64.12 11.86  39.00 119.00 80.00 0.91     0.84 0.95
height    2 199 170.59  8.95  170.0  170.40 10.38 148.00 197.00 49.00 0.21    -0.38 0.63
bmi       3 199  22.26  3.01   21.8   22.08  2.55  15.82  36.73 20.91 0.91     1.91 0.21
R per utenti SAS

Classe e struttura dell'output di psych describe

str(davispsych)
Classi ‘psych’, ‘describe’ e 'data.frame':
     3 obs. di  13 variabili:
 $ vars    : int  1 2 3
 $ n       : num  199 199 199
 $ mean    : num  65.3 170.6 22.3
 $ sd      : num  13.34 8.95 3.01
 $ median  : num  63 170 21.8
 $ trimmed : num  64.1 170.4 22.1
 $ mad     : num  11.86 10.38 2.55
 $ min     : num  39 148 15.8
 $ max     : num  119 197 36.7
 $ range   : num  80 49 20.9
 $ skew    : num  0.905 0.21 0.913
 $ kurtosis: num  0.843 -0.379 1.914
 $ se      : num  0.946 0.634 0.213
R per utenti SAS

Mostrare elementi dell'output di psych describe

# Mostra le medie trimmed
davispsych$trimmed
[1]  64.12422 170.40373  22.08452
# Mostra la riga 2 per height
davispsych %>%
  slice(2)
  vars   n   mean   sd median trimmed   mad min max range skew kurtosis   se
1    2 199 170.59 8.95    170   170.4 10.38 148 197    49 0.21    -0.38 0.63
R per utenti SAS

Mostrare elementi dell'output di psych describe

# Mostra n, median, min e max
davispsych %>%
  select(n, median, min, max)
         n median    min    max
weight 199   63.0  39.00 119.00
height 199  170.0 148.00 197.00
bmi    199   21.8  15.82  36.73
R per utenti SAS

Personalizziamo i risultati per l'output statistico sugli abaloni!

R per utenti SAS

Preparing Video For Download...