Practica 11 Analisis descriptivo con women data
Objetivo Trabajar con el archivi women data
determinar media, mediana, moda, frecuencia, desviacion estandar,varianza, cuartiles, percentiles
##cargar en una variable w<-women
w<-women
w
## height weight
## 1 58 115
## 2 59 117
## 3 60 120
## 4 61 123
## 5 62 126
## 6 63 129
## 7 64 132
## 8 65 135
## 9 66 139
## 10 67 142
## 11 68 146
## 12 69 150
## 13 70 154
## 14 71 159
## 15 72 164
##cuantas variables
##cuantas observaciones
str(w)
## 'data.frame': 15 obs. of 2 variables:
## $ height: num 58 59 60 61 62 63 64 65 66 67 ...
## $ weight: num 115 117 120 123 126 129 132 135 139 142 ...
## Tipo de datos
class(w)
## [1] "data.frame"
##sacar la media de las personas
mean(w$height)
## [1] 65
##sacar el valor max y min de altura de las personas
max(w$height)
## [1] 72
min(w$height)
## [1] 58
##ordenamos para entender la mediana
sort(w$height)
## [1] 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
##determinar la mediana de la altura
median(w$height)
## [1] 65
## sacar la moda, el que mas se repite, hay muchas formas
##usando table
##agregar un dato
w<-women
w<-rbind(w,c(70,146)) ##heigth y weigth
##otra forma
w<-rbind.data.frame(w,c(71,164))
w
## height weight
## 1 58 115
## 2 59 117
## 3 60 120
## 4 61 123
## 5 62 126
## 6 63 129
## 7 64 132
## 8 65 135
## 9 66 139
## 10 67 142
## 11 68 146
## 12 69 150
## 13 70 154
## 14 71 159
## 15 72 164
## 16 70 146
## 17 71 164
moda<-table(w$height)
moda ##se repite mas veces
##
## 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
## 1 1 1 1 1 1 1 1 1 1 1 1 2 2 1
## es multimodal
vamos a generar unos numeros aleatorios entre 70 y 100 y determinamos la moda
set.seed(10) ## semilla para generar los mismos numeros
numeros<-sample(70:100,size=100,replace=TRUE)
numeros
## [1] 85 79 83 91 72 76 78 78 89 83 90 87 73 88 81 83 71 78 82 95 96 89 94
## [24] 81 82 91 95 77 93 81 86 72 75 97 83 93 95 99 91 85 78 77 70 92 77 74
## [47] 70 85 73 94 80 99 77 84 75 88 84 84 82 85 70 73 84 82 95 93 87 83 72
## [70] 76 72 86 89 86 71 86 81 99 77 76 96 84 76 89 76 70 94 78 75 75 85 92
## [93] 88 86 81 95 77 86 93 70
##sacamos la moda
table(numeros)
## numeros
## 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94
## 5 2 4 3 1 4 5 6 5 1 1 5 4 5 5 5 6 2 3 4 1 3 2 4 3
## 95 96 97 99
## 5 2 1 3
Visualizar datos comando plot() grafica de dispercion o puntos
##plot()
##plot(numeros)
plot(x=1:100, y=numeros, type= "l") ##es igual a la linea de arriba b(puntos y lineas) y p (puntos)

generando un histograma
hist(x=numeros,breaks=30,col="pink")

hist(x=numeros,breaks=70,col="pink")

Grafica de barras
graficando los numeros
numeros
## [1] 85 79 83 91 72 76 78 78 89 83 90 87 73 88 81 83 71 78 82 95 96 89 94
## [24] 81 82 91 95 77 93 81 86 72 75 97 83 93 95 99 91 85 78 77 70 92 77 74
## [47] 70 85 73 94 80 99 77 84 75 88 84 84 82 85 70 73 84 82 95 93 87 83 72
## [70] 76 72 86 89 86 71 86 81 99 77 76 96 84 76 89 76 70 94 78 75 75 85 92
## [93] 88 86 81 95 77 86 93 70
barplot(height=numeros, col="blue", xlab="numeros", ylab="valores", main= "Los numeros generados", names.arg=numeros)

## graficando dos variables
barplot(w$height, col="blue",xlab="personas", ylab="alturas", names.arg=1:length(w$height),main = "Altura de w")

regresando a los numeros para ver
grafica de hojas y de cajas
numeros
## [1] 85 79 83 91 72 76 78 78 89 83 90 87 73 88 81 83 71 78 82 95 96 89 94
## [24] 81 82 91 95 77 93 81 86 72 75 97 83 93 95 99 91 85 78 77 70 92 77 74
## [47] 70 85 73 94 80 99 77 84 75 88 84 84 82 85 70 73 84 82 95 93 87 83 72
## [70] 76 72 86 89 86 71 86 81 99 77 76 96 84 76 89 76 70 94 78 75 75 85 92
## [93] 88 86 81 95 77 86 93 70
stem(numeros) ##visualiza la moda
##
## The decimal point is 1 digit(s) to the right of the |
##
## 7 | 000001122223334
## 7 | 555566666777777888889
## 8 | 01111122223333344444
## 8 | 55555666666778889999
## 9 | 0111223333444
## 9 | 55555667999
grafica de cajas
boxplot(numeros)

median(numeros)
## [1] 83
los cuartiles de la distribucion funcion quantile
quantile(numeros)
## 0% 25% 50% 75% 100%
## 70 77 83 89 99
resumen de los datos con la funcion summary
summary(numeros)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 70.00 77.00 83.00 83.29 89.00 99.00
haciendo un pastel con otra distribución de datos con variables categoricas
datos<-data.frame(nombre=c('Hugo','Paco','Luis', 'Paty','Roberto','Mary'),genero=c('M','M','M','F','M','F'))
datos
## nombre genero
## 1 Hugo M
## 2 Paco M
## 3 Luis M
## 4 Paty F
## 5 Roberto M
## 6 Mary F
table(datos)
## genero
## nombre F M
## Hugo 0 1
## Luis 0 1
## Mary 1 0
## Paco 0 1
## Paty 1 0
## Roberto 0 1
genero<- table(datos$genero)
##determina mediante grafica de pastel numero de personas por genero pie()
pie(genero,main="personas por cada genero", labels = names(datos$genero))
