INTRODUCCION

En estadistica descriptiva se trabaja con datos. Los datos se originan en dos tipos. Variables de tipo cualitativo y cuantitativo

Variables cualitativas

Estas variables miden cualidad, por ejemplo estado civil, partido politico, genero, etc

Variables cuantitativas

Se clasifican en:

Discretas: una variable es discreta cuando sus elementos pueden tener una relacion uno a uno con el conjunto de los numeros naturales o ser un conjunto finito. ejemplo, numero de hijos, cantidad de carros ensamblados en un año

Continua: cuando sus elementos son infinitos no numerables. (subconjunto de los numeros reales) Ejemplo el area, el volumen, el tiempo

Estadistica para analisis grafico.

para realizar analisis grafico se necesitaran los siguientes paquetes

knitr::opts_chunk$set(echo = TRUE)
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.5.1
library(descriptr)
## Warning: package 'descriptr' was built under R version 4.5.1
library(ggplot2)

library(datos)
## Warning: package 'datos' was built under R version 4.5.1
install.packages("datos") 
## Warning: package 'datos' is in use and will not be installed
install.packages("dplyr") 
## Warning: package 'dplyr' is in use and will not be installed
library(datos)
library(dplyr)

Variables cualitativas

Realizaremos graficas para

datos.e <- datos::encuesta
head(datos.e)
## # A tibble: 6 × 9
##    anio estado_civil   edad raza  ingreso partido religion denominacion horas_tv
##   <int> <fct>         <int> <fct> <fct>   <fct>   <fct>    <fct>           <int>
## 1  2000 Nunca se ha …    26 Blan… 8000 -… Ind, p… Protest… Bautistas d…       12
## 2  2000 Divorciado       48 Blan… 8000 -… No fue… Protest… Bautista, n…       NA
## 3  2000 Viudo            67 Blan… No apl… Indepe… Protest… No denomina…        2
## 4  2000 Nunca se ha …    39 Blan… No apl… Ind, p… Cristia… No aplica           4
## 5  2000 Divorciado       25 Blan… No apl… No fue… Ninguna  No aplica           1
## 6  2000 Casado           25 Blan… 20000 … Fuerte… Protest… Bautistas d…       NA
set.seed(2548) # sembrar una semilla

library(dplyr)
datos.m <- sample_n(tbl = datos.e, size = 120, replace = FALSE)

frec1 <- table(datos.m$raza)
frec1
## 
##      Otra     Negra    Blanca No aplica 
##         9        23        88         0
head(datos.m, 5)
## # A tibble: 5 × 9
##    anio estado_civil  edad raza   ingreso partido religion denominacion horas_tv
##   <int> <fct>        <int> <fct>  <fct>   <fct>   <fct>    <fct>           <int>
## 1  2002 Viudo           88 Blanca No apl… Fuerte… Ninguna  No aplica           4
## 2  2000 Casado          26 Blanca 25000 … Fuerte… Protest… Iglesia met…        2
## 3  2012 Casado          43 Otra   No sabe Indepe… Católica No aplica           0
## 4  2004 Divorciado      67 Blanca No apl… Ind, p… Católica No aplica          NA
## 5  2008 Casado          55 Negra  25000 … Fuerte… Protest… Otra                7
tail(datos.m, 5) # muestra los 10 ultimos
## # A tibble: 5 × 9
##    anio estado_civil   edad raza  ingreso partido religion denominacion horas_tv
##   <int> <fct>         <int> <fct> <fct>   <fct>   <fct>    <fct>           <int>
## 1  2012 Casado           41 Blan… 25000 … No fue… Ninguna  No aplica          NA
## 2  2008 Casado           71 Blan… No apl… Indepe… Otra     No aplica           4
## 3  2008 Nunca se ha …    36 Blan… 20000 … Otro p… Ninguna  No aplica           1
## 4  2000 Nunca se ha …    18 Blan… No apl… No fue… Ninguna  No aplica          NA
## 5  2000 Viudo            38 Negra 8000 -… Ind, p… Protest… Bautista, n…       NA
str(datos.m) # describe el tipo de variable
## tibble [120 × 9] (S3: tbl_df/tbl/data.frame)
##  $ anio        : int [1:120] 2002 2000 2012 2004 2008 2008 2002 2012 2000 2002 ...
##  $ estado_civil: Factor w/ 6 levels "Sin respuesta",..: 5 6 6 4 6 3 2 2 6 5 ...
##  $ edad        : int [1:120] 88 26 43 67 55 58 38 23 57 71 ...
##  $ raza        : Factor w/ 4 levels "Otra","Negra",..: 3 3 1 3 2 1 3 2 3 3 ...
##  $ ingreso     : Factor w/ 16 levels "Sin respuesta",..: 16 4 2 16 4 7 14 5 14 14 ...
##  $ partido     : Factor w/ 10 levels "Sin respuesta",..: 10 10 7 8 10 5 9 10 7 5 ...
##  $ religion    : Factor w/ 16 levels "Sin respuesta",..: 12 15 14 14 15 14 14 12 12 15 ...
##  $ denominacion: Factor w/ 30 levels "Sin respuesta",..: 30 20 30 30 4 30 30 30 30 4 ...
##  $ horas_tv    : int [1:120] 4 2 0 NA 7 1 1 1 5 NA ...
names(datos.m)
## [1] "anio"         "estado_civil" "edad"         "raza"         "ingreso"     
## [6] "partido"      "religion"     "denominacion" "horas_tv"
attach(datos.m)

frela1 <- table(datos.m$raza)

Diagrama de barras para la variable Raza

barplot(frec1,
        col = c("darkblue","purple","#C1CDCD","cadetblue3"),
        horiz = FALSE, 
        ylab = "Frecuencia absoluta",
        border = TRUE,
        ylim = c(0, max(frec1) + 10),   # ajusta automáticamente
        xlab = "Categorías de raza", 
        main = "Gráfico de barras para raza")

#Grafico tipo pastel

pie(frela1,labels = names(frela1),
    density=NULL,edges = 500, radius = 1.2,
    col=c("aquamarine1","antiquewhite2", "purple","darkseagreen2"),
    clockwise = TRUE, main = "Primer diagrama de torta",
    border = "blue")

?pie
## starting httpd help server ... done

####Con ggplot

sample(x=22,size=3)
## [1]  5 19  1
set.seed(25) # Sembrar una semilla
names(datos.m)
## [1] "anio"         "estado_civil" "edad"         "raza"         "ingreso"     
## [6] "partido"      "religion"     "denominacion" "horas_tv"
str(datos.m)
## tibble [120 × 9] (S3: tbl_df/tbl/data.frame)
##  $ anio        : int [1:120] 2002 2000 2012 2004 2008 2008 2002 2012 2000 2002 ...
##  $ estado_civil: Factor w/ 6 levels "Sin respuesta",..: 5 6 6 4 6 3 2 2 6 5 ...
##  $ edad        : int [1:120] 88 26 43 67 55 58 38 23 57 71 ...
##  $ raza        : Factor w/ 4 levels "Otra","Negra",..: 3 3 1 3 2 1 3 2 3 3 ...
##  $ ingreso     : Factor w/ 16 levels "Sin respuesta",..: 16 4 2 16 4 7 14 5 14 14 ...
##  $ partido     : Factor w/ 10 levels "Sin respuesta",..: 10 10 7 8 10 5 9 10 7 5 ...
##  $ religion    : Factor w/ 16 levels "Sin respuesta",..: 12 15 14 14 15 14 14 12 12 15 ...
##  $ denominacion: Factor w/ 30 levels "Sin respuesta",..: 30 20 30 30 4 30 30 30 30 4 ...
##  $ horas_tv    : int [1:120] 4 2 0 NA 7 1 1 1 5 NA ...
frec_datos.m<- table(datos.m$raza)

frec_datos.m
## 
##      Otra     Negra    Blanca No aplica 
##         9        23        88         0

Grafico de barras

?barplot
barplot(frec_datos.m, width = 1.3, ylim=c(0,100),col = 'cadetblue',
        border = '#B03060',ylab="Frecuencia absoluta",main = "Diagrama de barras raza",
        xlab = "Categoría", density = 25)

library(ggplot2)
is.data.frame(frec_datos.m)
## [1] FALSE
df <- as.data.frame(frec_datos.m)

is.data.frame(df)
## [1] TRUE
df
##        Var1 Freq
## 1      Otra    9
## 2     Negra   23
## 3    Blanca   88
## 4 No aplica    0
View(df)
attach(df)
df <- rename(df, clase = Var1, valor= Freq)

diag_barra <- ggplot(df, aes(x = clase, y=valor)) +
 geom_col() 

diag_barra

diag_barra <- ggplot(df, aes(x = clase, y=valor)) +
                geom_col() +
                geom_text(aes(label = clase), vjust = 1, colour = "blue")

diag_barra

diag_barra <- ggplot(df, aes(x = clase, y = valor, fill = clase)) +
                 geom_bar(stat = 'identity') +
                 ylim(c(0,100)) 
diag_barra

Grafica de torta

?pie

torta1 <- pie(frec_datos.m, 
              labels = names(frec_datos.m), 
              radius = 0.8,
              main = "Diagrama de Torta por Raza")

torta1 <- pie(frec_datos.m, 
              labels = c("Otra", "Negra", "Blanca"), 
              main = "Diagrama de Tarta", 
              radius = 0.8)

names(df)
## [1] "clase" "valor"
attach(df)

pct <- round(valor/sum(valor)*100)


etiquetas <- paste(clase, pct) # Adicionando porcentajes a etiquetas

etiquetas <- paste(etiquetas,"%") # Adicionando el símbolo de %

torta2 <- pie(pct,labels = etiquetas, radius = 0.8,
    col=rainbow(length(etiquetas)),
    main="Diagrama de torta")

# Adicionando un cuadro con leyendas

legend("topright", c("otra","Negra","Blanca"), 
       cex = 0.5,  fill = rainbow(length(etiquetas)))