library(readxl)
TAD <- read_excel("TAD.xlsx", col_types = c("numeric",
"numeric", "numeric", "numeric", "text",
"text"))
colnames(TAD)=c("Edad","Colesterol","IMC","TADias","GEN","EST")
head(TAD)
## # A tibble: 6 × 6
## Edad Colesterol IMC TADias GEN EST
## <dbl> <dbl> <dbl> <dbl> <chr> <chr>
## 1 42 292 31.6 97 f 1
## 2 64 235 30.8 90 f 3
## 3 47 200 25.6 80 f 4
## 4 56 200 26.2 75 m 5
## 5 54 300 32.0 100 m 6
## 6 48 215 23.2 67 m 5
tail(TAD)
## # A tibble: 6 × 6
## Edad Colesterol IMC TADias GEN EST
## <dbl> <dbl> <dbl> <dbl> <chr> <chr>
## 1 57 216 21.2 65 f 4
## 2 52 254 27.0 70 m 3
## 3 67 243 23.9 85 m 3
## 4 49 239 22.0 75 f 2
## 5 42 292 31.6 97 f 1
## 6 64 235 30.8 90 f 3
str(TAD)
## tibble [203 × 6] (S3: tbl_df/tbl/data.frame)
## $ Edad : num [1:203] 42 64 47 56 54 48 57 52 67 46 ...
## $ Colesterol: num [1:203] 292 235 200 200 300 215 216 254 310 237 ...
## $ IMC : num [1:203] 31.6 30.8 25.6 26.2 32 ...
## $ TADias : num [1:203] 97 90 80 75 100 67 65 70 105 70 ...
## $ GEN : chr [1:203] "f" "f" "f" "m" ...
## $ EST : chr [1:203] "1" "3" "4" "5" ...
media_col=mean(TAD$Colesterol)
varianza_col=var(TAD$Colesterol)
sd_col=sd(TAD$Colesterol)
#calcular cve
cve_media_col=100*sd_col/media_col
medianaCol=median(TAD$Colesterol)
MAD_col=mad(TAD$Colesterol)
cve_mediana_col=100*MAD_col/medianaCol
#min,max,cuartiles,media y median
resumen=data.frame(Estadísticos_Descriptivos_univariados=c(mean(TAD$Colesterol),var(TAD$Colesterol),sd(TAD$Colesterol),100*sd(TAD$Colesterol)/mean(TAD$Colesterol),median(TAD$Colesterol),100*mad(TAD$Colesterol),mad(TAD$Colesterol)/median(TAD$Colesterol)))
rownames(resumen)=c("Promedio","Varianza","Desv_estandar","cve_media","Mediana","MAD","cve_mediana")
resumen
## Estadísticos_Descriptivos_univariados
## Promedio 239.2413793
## Varianza 1270.9166951
## Desv_estandar 35.6499186
## cve_media 14.9012343
## Mediana 231.0000000
## MAD 3409.9800000
## cve_mediana 0.1476182
summary(TAD$Colesterol)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 175.0 214.5 231.0 239.2 268.0 315.0
min_TAD <- min(TAD$TADias)
min_TAD
## [1] 65
max_TAD <- max(TAD$TADias)
max_TAD
## [1] 105
range(TAD$TADias)
## [1] 65 105
rango_TAD=max(TAD$TADias)-min(TAD$TADias)
cuartiles_TAD <- quantile(TAD$TADias,probs = seq(0,1,by=0.25))
cuartiles_TAD
## 0% 25% 50% 75% 100%
## 65.0 75.0 80.0 92.5 105.0
#Cuartil 3 - Cuartil !
rango_intercuartil_TAD<- IQR(TAD$TADias)
rango_intercuartil_TAD
## [1] 17.5
Medidas_Posic=data.frame("Medidas de posición"=c(min(TAD$TADias),max(TAD$TADias),max(TAD$TADias)-min(TAD$TADias),quantile(TAD$TADias,probs = seq(0,1,by=0.25)),IQR(TAD$TADias)))
rownames(Medidas_Posic)=c("Mínimo","Máximo","Rango","Cuartil0_min","Cuartil_1","Cuartil_2","Cuartil_3","Cuartil_4_max","IQR")
Medidas_Posic
## Medidas.de.posición
## Mínimo 65.0
## Máximo 105.0
## Rango 40.0
## Cuartil0_min 65.0
## Cuartil_1 75.0
## Cuartil_2 80.0
## Cuartil_3 92.5
## Cuartil_4_max 105.0
## IQR 17.5
conteoEST=table(TAD$EST)
pie(conteoEST,col="#D02090")
conteoGEN=table(TAD$GEN)
pie(conteoGEN,col="#FFC1C1")
library(plotrix)
pie3D(table(TAD$GEN), radius=0.9,main="Numero de personas de cada género",labels=c("Mujeres","Hombres"),explode=0.1,col = topo.colors(length(table(TAD$GEN))), border = "white")
#r_color <- colors()
#head(r_color, 50)
barplot(table(TAD$GEN),col="thistle3")
barplot(table(TAD$EST),col="#D02090",main="Frecuencias de la variable estrato socioeconómico")
#vcreacion del grafico, título, leyenda
leyenda <-c("Mujeres","Hombres")
pie(table(TAD$GEN), main="Numero de personas de cada género", col = heat.colors(length(table(TAD$GEN))))
legend("topright", leyenda, cex = 0.8, fill = heat.colors(length(leyenda)))
pie(table(TAD$EST), main="Numero de personas de cada género", col = terrain.colors(length(table(TAD$EST))))
leyenda <-c("1","2","3","4","5","6")
legend("topright", leyenda, cex = 0.8, fill = terrain.colors(length(leyenda)))
##Diagrama de tallo y hojas. Histograma frecuencias absolutas sin y con título
stem(TAD$Colesterol, scale = 1)
##
## The decimal point is 1 digit(s) to the right of the |
##
## 17 | 5555
## 18 | 7
## 19 | 888888
## 20 | 0000000000000000000111226666889
## 21 | 333444444555555555556666688888888888
## 22 | 0000000133333
## 23 | 0000001111133455555555555555557779999
## 24 | 033333334668
## 25 | 344444444
## 26 | 0888888
## 27 | 55
## 28 | 000005557
## 29 | 00000222222222222255
## 30 | 00000
## 31 | 00000000555
hist(TAD$Colesterol,col="purple",freq=F)
hist(TAD$Colesterol,col="#98F5FF",freq=F,main="Distribución de frecuencias de los niveles de colesterol",xlab="Colesterol",ylab="Frecuencias")
hist(TAD$Colesterol,col="#98F5FF",freq=F,main="Distribución de frecuencias de los niveles de colesterol",xlab="Colesterol",ylab="Frecuencias",plot=F)
## Warning in hist.default(TAD$Colesterol, col = "#98F5FF", freq = F, main =
## "Distribución de frecuencias de los niveles de colesterol", : arguments 'freq',
## 'col', 'main', 'xlab', 'ylab' are not made use of
## $breaks
## [1] 160 180 200 220 240 260 280 300 320
##
## $counts
## [1] 4 26 55 44 21 13 29 11
##
## $density
## [1] 0.0009852217 0.0064039409 0.0135467980 0.0108374384 0.0051724138
## [6] 0.0032019704 0.0071428571 0.0027093596
##
## $mids
## [1] 170 190 210 230 250 270 290 310
##
## $xname
## [1] "TAD$Colesterol"
##
## $equidist
## [1] TRUE
##
## attr(,"class")
## [1] "histogram"
##Diagrama de caja general, por grupos y puntos superpuestos
boxplot(TAD$Colesterol,col="green")
boxplot(TAD$Colesterol,col="#66CDAA",ylab="Colesterol",main="Diagrama de caja de Colesterol")
boxplot(TAD$Colesterol,col="burlywood1",ylab="Colesterol",main="Diagrama de caja de Colesterol")
boxplot(TAD$IMC,col="#F0FFFF",ylab="Colesterol",main="Diagrama de caja de Colesterol")
stripchart(TAD$IMC, method = "jitter", pch = 19, add = TRUE, col = "red", vertical = TRUE)
boxplot(TAD$Colesterol~ TAD$GEN,col="#FFE4E1",ylab="Colesterol",main="Diagrama de caja de Colesterol")
stripchart(TAD$Colesterol~ TAD$GEN, method = "jitter", pch = 19, add = TRUE, col = "#CD8162", vertical = TRUE)
boxplot(TAD$TADias~ TAD$GEN,col="#FFE4E1",ylab="Colesterol",main="Diagrama de caja de Colesterol")
stripchart(TAD$TADias~ TAD$EST, method = "jitter", pch = 19, add = TRUE, col = "#6A5ACD", vertical = TRUE)
##Tablas de contingencia, conteos, proporción, porcentajes con respecto al total, porcentajes por fila y porcentajes por columna, diagramas de barras bivariados
TablaCruzada <- table(TAD$GEN,TAD$EST)
TablaCruzada
##
## 1 2 3 4 5 6
## f 16 14 19 42 21 3
## m 2 3 26 15 30 12
TablaCruzada_propFilas=prop.table(TablaCruzada, margin = 1)
TablaCruzada_propColumnas=prop.table(TablaCruzada, margin = 2)
TablaCruzada100 <- addmargins(TablaCruzada * 100)
par(mfrow = c(1, 2))
colores2 <- c("#A020F0", "#FFBBFF")
barplot(TablaCruzada, col = colores2)
par(mfrow = c(1, 2))
barplot(TablaCruzada_propFilas, col = colores2, beside = TRUE)
legend("topleft", legend = c("Femenino", "Masculino"), fill = colores2)
colores6 <- c("salmon", "salmon1","salmon2","salmon3","salmon4","tan1")
barplot(TablaCruzada_propColumnas, col = colores6, beside = TRUE)
par(mfrow = c(1, 1))
par(mfrow = c(1, 2))
mosaicplot(TablaCruzada, cex = 1.1, col = colores6)
mosaicplot(TablaCruzada_propFilas, col = colores2)
par(mfrow = c(1, 1))
legend("topleft", legend = c("No", "Si"), fill = colores6)
barplot(TablaCruzada_propColumnas, col = colores6)
##Diagramas de dispersión generales y por grupos
plot(TAD$Colesterol,TAD$IMC,main="Diagrama de dispersión, Colesterol Vs. Índice de masa corporal",xlab="Colesterol",ylab="Índice de masa corporal")
plot(TAD$Colesterol,TAD$IMC,col=rainbow(length(levels(factor(TAD$GEN)))),main="Diagrama de dispersión, Colesterol Vs. Índice de masa corporal por género",xlab="Colesterol",ylab="Índice de masa corporal")
leyenda=c("Mujeres","Hombres")
legend("topright", leyenda, cex = 0.8, fill = rainbow(length(leyenda)))
##Matrices de diagramas de dispersión generales y por grupos. Diferentes gráficos en la diagonal, diagramas de caja, histogramas, densidades.
library(car)
## Loading required package: carData
scatterplotMatrix(~ Colesterol + IMC + TADias + Edad, data = TAD,diagonal=list(method="boxplot"))
scatterplotMatrix(~ Colesterol + IMC + TADias + Edad, data = TAD,diagonal=list(method="histogram"))
scatterplotMatrix(~ Colesterol + IMC + TADias + Edad, data = TAD,groups=TAD$GEN,by.groups=T)
scatterplotMatrix(~ Colesterol + IMC + TADias + Edad, data = TAD,groups=TAD$EST,by.groups=T)
##Gráfico de violin
plot(density(TAD$TADias))
library(vioplot)
## Loading required package: sm
## Package 'sm', version 2.2-6.0: type help(sm) for summary information
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
vioplot(TAD$Colesterol~ TAD$GEN)
vioplot(TAD$Colesterol~ TAD$EST, horizontal = TRUE,col=rainbow(6))
##Matrices de covarianza y correlación
MatrizCor=cor(TAD[,1:4])
MatrizCor
## Edad Colesterol IMC TADias
## Edad 1.0000000 0.1712920 0.1083315 0.3001454
## Colesterol 0.1712920 1.0000000 0.6193804 0.7376903
## IMC 0.1083315 0.6193804 1.0000000 0.6441986
## TADias 0.3001454 0.7376903 0.6441986 1.0000000
MatrizCov=cov(TAD[,1:4])
MatrizCov
## Edad Colesterol IMC TADias
## Edad 62.043945 48.10003 3.510507 27.69097
## Colesterol 48.100034 1270.91670 90.840898 308.02748
## IMC 3.510507 90.84090 16.925086 31.04145
## TADias 27.690972 308.02748 31.041455 137.18724
MatrizVar=var(TAD[,1:4])
MatrizVar
## Edad Colesterol IMC TADias
## Edad 62.043945 48.10003 3.510507 27.69097
## Colesterol 48.100034 1270.91670 90.840898 308.02748
## IMC 3.510507 90.84090 16.925086 31.04145
## TADias 27.690972 308.02748 31.041455 137.18724
##Rostros de Chernoff
library(aplpack)
## Warning in fun(libname, pkgname): couldn't connect to display ":0"
faces(TAD[1:12,1:4])
## effect of variables:
## modified item Var
## "height of face " "Edad"
## "width of face " "Colesterol"
## "structure of face" "IMC"
## "height of mouth " "TADias"
## "width of mouth " "Edad"
## "smiling " "Colesterol"
## "height of eyes " "IMC"
## "width of eyes " "TADias"
## "height of hair " "Edad"
## "width of hair " "Colesterol"
## "style of hair " "IMC"
## "height of nose " "TADias"
## "width of nose " "Edad"
## "width of ear " "Colesterol"
## "height of ear " "IMC"