url <- 'https://raw.githubusercontent.com/fhernanb/datos/master/medidas_cuerpo'
datos <- read.table (file= url, header= T)
head (datos) # Para ver el encabezado de la base de datos
edad peso altura sexo muneca biceps
1 43 87.3 188.0 Hombre 12.2 35.8
2 65 80.0 174.0 Hombre 12.0 35.0
3 45 82.3 176.5 Hombre 11.2 38.5
4 37 73.6 180.3 Hombre 11.2 32.2
5 55 74.1 167.6 Hombre 11.8 32.9
6 33 85.9 188.0 Hombre 12.4 38.5
#con la siguiente funcion se denota el promedio por sexo
sapply (split (x= datos$ altura, f= datos$ sexo),mean)
Hombre Mujer
179.0778 164.0333
sapply (split (x= datos$ peso, f= datos$ sexo),median)
con la funcion quantile encontramos el percentil deseado.
quantile (x= datos$ peso, probs= 0.1 )
para calcular la moda hacemos una tabla de conteo con la funcion table
tabla <- table (datos$ edad)
tabla
19 20 21 22 23 24 25 26 28 29 30 32 33 35 37 40 43 45 51 55 65
1 1 1 3 2 1 5 3 2 1 2 1 1 2 3 1 2 1 1 1 1
sort (tabla,decreasing= TRUE )
25 22 26 37 23 28 30 35 43 19 20 21 24 29 32 33 40 45 51 55 65
5 3 3 3 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1
z<- rnorm (40 ,mean= 7.2 ,sd= 2.1 )
res<- hist (x= z,breaks= c (2 ,4 ,6 ,8 ,10 ,12 ),plot= TRUE )
$breaks
[1] 2 4 6 8 10 12
$counts
[1] 5 9 11 12 3
$density
[1] 0.0625 0.1125 0.1375 0.1500 0.0375
$mids
[1] 3 5 7 9 11
$xname
[1] "z"
$equidist
[1] TRUE
attr(,"class")
[1] "histogram"
Adjuntando el paquete: 'dplyr'
The following objects are masked from 'package:stats':
filter, lag
The following objects are masked from 'package:base':
intersect, setdiff, setequal, union
datos %>%
group_by (sexo) %>%
summarise (el_rango= max (edad)- min (edad))
# A tibble: 2 × 2
sexo el_rango
<chr> <int>
1 Hombre 41
2 Mujer 21