# esaminiamo i dati:
readLines("http://macosa.dima.unige.it/om/prg/r/battit2.txt",n=11)
 [1] "# battiti prima di eventuale corsa di 1 min"                    
 [2] "# battiti dopo"                                                 
 [3] "# fatta corsa (1 si`;0 no; a seconda di esito di lancio moneta)"
 [4] "# fumatore (1 si`;0 no)"                                        
 [5] "# sesso (1 M; 2 F)"                                             
 [6] "# altezza"                                                      
 [7] "# peso"                                                         
 [8] "# attivita` fisica (0 nulla;1 poca;2 media; 3 molta)"           
 [9] "  BatPrima BatDopo Corsa Fumo Sesso Alt Peso Fis"               
[10] "01  64  88 1 0 1 168 64 2"                                      
[11] "02  58  70 1 0 1 183 66 2"
# e' una tabella; carichiamola  (poiche' la righe da saltare iniziano
# con # posso evitare di mettere skip=8):
dati <- read.table("http://macosa.dima.unige.it/om/prg/r/battit2.txt")
# esaminiamone sinteticamente i dati
str(dati)
'data.frame':   92 obs. of  8 variables:
 $ BatPrima: int  64 58 62 66 64 74 84 68 62 76 ...
 $ BatDopo : int  88 70 76 78 80 84 84 72 75 118 ...
 $ Corsa   : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Fumo    : int  0 0 1 1 0 0 0 0 0 0 ...
 $ Sesso   : int  1 1 1 1 1 1 1 1 1 1 ...
 $ Alt     : int  168 183 186 184 176 184 184 188 184 181 ...
 $ Peso    : int  64 66 73 86 70 75 68 86 88 63 ...
 $ Fis     : int  2 2 3 1 2 1 3 2 2 2 ...
# estraiamo la tabella costituita dalle prime tre colonne
cc <- dati[1:3]; summary(cc)
    BatPrima         BatDopo        Corsa       
 Min.   : 48.00   Min.   : 50   Min.   :0.0000  
 1st Qu.: 64.00   1st Qu.: 68   1st Qu.:0.0000  
 Median : 71.00   Median : 76   Median :0.0000  
 Mean   : 72.87   Mean   : 80   Mean   :0.3804  
 3rd Qu.: 80.00   3rd Qu.: 85   3rd Qu.:1.0000  
 Max.   :100.00   Max.   :140   Max.   :1.0000
# estraiamo poi quella di chi ha fatto la corsa:
cc1 <- subset(cc, cc$Corsa==1); summary(cc1)
    BatPrima        BatDopo           Corsa  
 Min.   : 58.0   Min.   : 58.00   Min.   :1  
 1st Qu.: 65.0   1st Qu.: 76.00   1st Qu.:1  
 Median : 70.0   Median : 88.00   Median :1  
 Mean   : 73.6   Mean   : 92.51   Mean   :1  
 3rd Qu.: 80.0   3rd Qu.:105.00   3rd Qu.:1  
 Max.   :100.0   Max.   :140.00   Max.   :1
# e quella di chi non l'ha fatta:
cc2 <- subset(cc, cc$Corsa==0); summary(cc2)
    BatPrima        BatDopo          Corsa  
 Min.   :48.00   Min.   :50.00   Min.   :0  
 1st Qu.:64.00   1st Qu.:66.00   1st Qu.:0  
 Median :72.00   Median :70.00   Median :0  
 Mean   :72.42   Mean   :72.32   Mean   :0  
 3rd Qu.:80.00   3rd Qu.:78.00   3rd Qu.:0  
 Max.   :94.00   Max.   :94.00   Max.   :0
# Esistono vari altri modi di estrarre sottotabelle. Es.:
dd <- dati[c(-1,-2,-3,-4)]; summary(dd)
     Sesso           Alt             Peso            Fis       
 Min.   :1.00   Min.   :154.0   Min.   :43.00   Min.   :0.000  
 1st Qu.:1.00   1st Qu.:167.8   1st Qu.:57.00   1st Qu.:2.000  
 Median :1.00   Median :175.0   Median :66.00   Median :2.000  
 Mean   :1.38   Mean   :174.4   Mean   :65.84   Mean   :2.109  
 3rd Qu.:2.00   3rd Qu.:183.0   3rd Qu.:70.25   3rd Qu.:2.000  
 Max.   :2.00   Max.   :190.0   Max.   :97.00   Max.   :3.000
# altro modo di togliere le prime 4 colonne
dd <- dati[c(-1:-4)]; summary(dd)
     Sesso           Alt             Peso            Fis       
 Min.   :1.00   Min.   :154.0   Min.   :43.00   Min.   :0.000  
 1st Qu.:1.00   1st Qu.:167.8   1st Qu.:57.00   1st Qu.:2.000  
 Median :1.00   Median :175.0   Median :66.00   Median :2.000  
 Mean   :1.38   Mean   :174.4   Mean   :65.84   Mean   :2.109  
 3rd Qu.:2.00   3rd Qu.:183.0   3rd Qu.:70.25   3rd Qu.:2.000  
 Max.   :2.00   Max.   :190.0   Max.   :97.00   Max.   :3.000
# Più in generale, come estrarre la sottotabella costituita dagli
# elementi che sono nelle righe 2,3,4 e nelle colonne 1,3,7
dati[c(2,3,4),c(1,3,7)]
   BatPrima Corsa Peso
02       58     1   66
03       62     1   73
04       66     1   86