Objetivo

1. Cargar librerías library (readr) y (ftdh).

  • readr Permite cargar un archvo csv.
  • fdth Habilita usar funciones como fdt() y fdt_cat() para generar tablas de distribución.
library(fdth)
## 
## Attaching package: 'fdth'
## The following objects are masked from 'package:stats':
## 
##     sd, var
library(readr)

2. Cargar los datos de la dirección citada.

  • read.csv().
  • Cargando datos de una dirección URL de internet de github.
datos.alumnos <- read.csv("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/datos/promedios%20alumnos/datos%20alumnos%20promedios%20SEP%202020.csv")

3. Mostrar los primeros seis y últimos seis observaciones del conjunto de datos.

  • Mostrar los datos head() y tail().
head(datos.alumnos)
##   No..Control Alumno Semestre Cr..Apr. Carga Promedio  Carrera
## 1    20190001      1       11      198    19    80.21 SISTEMAS
## 2    20190002      2       11      235    10    84.33 SISTEMAS
## 3    20190003      3        9      235    10    95.25 SISTEMAS
## 4    20190004      4        9      226    19    95.00 SISTEMAS
## 5    20190005      5       10      231    14    82.32 SISTEMAS
## 6    20190006      6        9      212    23    95.02 SISTEMAS
tail(datos.alumnos)
##      No..Control Alumno Semestre Cr..Apr. Carga Promedio        Carrera
## 5924    20195924   5924        2       27    28    92.83 ADMINISTRACION
## 5925    20195925   5925        7       94    13    80.95 ADMINISTRACION
## 5926    20195926   5926        5      103    32    92.68 ADMINISTRACION
## 5927    20195927   5927        4       79    34    86.18 ADMINISTRACION
## 5928    20195928   5928        5      108    32    90.48 ADMINISTRACION
## 5929    20195929   5929        7      169    32    92.33 ADMINISTRACION

4. Tabla de distribución de frecuencias de los alumnos inscritos de primer semestre de cada carrera

  • subset() Filtra solo los alumnos de primer semestre. head() y tail() para mostrar los primeros seis y últimos seis registros de este subconjunto de datos.
alumnosPrimero <- subset(datos.alumnos, Semestre == 1)
head(alumnosPrimero)
##    No..Control Alumno Semestre Cr..Apr. Carga Promedio  Carrera
## 75    20190075     75        1       NA    27        0 SISTEMAS
## 76    20190076     76        1       NA    27        0 SISTEMAS
## 77    20190077     77        1       NA    27        0 SISTEMAS
## 83    20190083     83        1       NA    27        0 SISTEMAS
## 85    20190085     85        1       NA    27        0 SISTEMAS
## 86    20190086     86        1       NA    27        0 SISTEMAS
tail(alumnosPrimero)
##      No..Control Alumno Semestre Cr..Apr. Carga Promedio        Carrera
## 5885    20195885   5885        1       NA    27        0 ADMINISTRACION
## 5893    20195893   5893        1       NA    27        0 ADMINISTRACION
## 5894    20195894   5894        1       NA    27        0 ADMINISTRACION
## 5895    20195895   5895        1       NA    27        0 ADMINISTRACION
## 5914    20195914   5914        1       NA    27        0 ADMINISTRACION
## 5915    20195915   5915        1       NA    27        0 ADMINISTRACION
  • fdt_cat() Genera tabla de distribución.
  • data.frame() Convierte a conjunto de datos data.frame.
  • La función fdt_cat() ordena la tabla de distribucón de mayor a menor lo que repercute en la gráfica de barras de mayor a menor.
tabla.frec.Primero <- data.frame(fdt_cat(alumnosPrimero$Carrera))
tabla.frec.Primero
##               Category   f         rf     rf...   cf     cf...
## 1         ARQUITECTURA 128 0.12415131 12.415131  128  12.41513
## 2  GESTION EMPRESARIAL  89 0.08632396  8.632396  217  21.04753
## 3              QUIMICA  89 0.08632396  8.632396  306  29.67992
## 4           INDUSTRIAL  88 0.08535403  8.535403  394  38.21532
## 5                CIVIL  86 0.08341416  8.341416  480  46.55674
## 6           BIOQUIMICA  84 0.08147430  8.147430  564  54.70417
## 7       ADMINISTRACION  83 0.08050436  8.050436  647  62.75461
## 8             SISTEMAS  78 0.07565470  7.565470  725  70.32008
## 9            ELECTRICA  77 0.07468477  7.468477  802  77.78855
## 10            MECANICA  76 0.07371484  7.371484  878  85.16004
## 11         MECATRONICA  70 0.06789525  6.789525  948  91.94956
## 12         ELECTRONICA  36 0.03491756  3.491756  984  95.44132
## 13         INFORMATICA  30 0.02909796  2.909796 1014  98.35112
## 14                 TIC  17 0.01648885  1.648885 1031 100.00000
  • Cambiar nombres a las columnas del conjunto de datos tabla.frec.Primero
  • se usa la función names().
names(tabla.frec.Primero) <- c("Carrera","Frec.Absoluta","Frec.Relativa","Frec.Porc","Frec.Acum","Frec.Acum.Porc") # Cambiar nombre a tabla.frec.Primero

tabla.frec.Primero
##                Carrera Frec.Absoluta Frec.Relativa Frec.Porc Frec.Acum
## 1         ARQUITECTURA           128    0.12415131 12.415131       128
## 2  GESTION EMPRESARIAL            89    0.08632396  8.632396       217
## 3              QUIMICA            89    0.08632396  8.632396       306
## 4           INDUSTRIAL            88    0.08535403  8.535403       394
## 5                CIVIL            86    0.08341416  8.341416       480
## 6           BIOQUIMICA            84    0.08147430  8.147430       564
## 7       ADMINISTRACION            83    0.08050436  8.050436       647
## 8             SISTEMAS            78    0.07565470  7.565470       725
## 9            ELECTRICA            77    0.07468477  7.468477       802
## 10            MECANICA            76    0.07371484  7.371484       878
## 11         MECATRONICA            70    0.06789525  6.789525       948
## 12         ELECTRONICA            36    0.03491756  3.491756       984
## 13         INFORMATICA            30    0.02909796  2.909796      1014
## 14                 TIC            17    0.01648885  1.648885      1031
##    Frec.Acum.Porc
## 1        12.41513
## 2        21.04753
## 3        29.67992
## 4        38.21532
## 5        46.55674
## 6        54.70417
## 7        62.75461
## 8        70.32008
## 9        77.78855
## 10       85.16004
## 11       91.94956
## 12       95.44132
## 13       98.35112
## 14      100.00000

5. Genera gráfica de barra de la frecuencia de alumnos de primer semestre por cada carrera.

  • barplot(tabla.frecuencias.Primero).
  • Barra de Frecuencias Absolutas.
barplot(main = "Alumnos de Primer Semestre",
        xlab = "Carreras", ylab = "Frecuencia Absoluta",
        height = tabla.frec.Primero$Frec.Absoluta, 
        names.arg = substr(tabla.frec.Primero$Carrera,1,3))

6. Generar tabla de distribución de frecuencias de todos los alumnos inscritos

  • Generar tabla.
  • Cambiar nombres a columnas.
  • Presentar tabla de frecuecias.
  • Automáticamente se ordena de mayor a menor ….
tabla.frec <- data.frame(fdt_cat(datos.alumnos$Carrera))
names(tabla.frec) <- c("Carrera","Frec.Absoluta","Frec.Relativa","Frec.Porc","Frec.Acum","Frec.Acum.Porc") # Cambiar nombre a tabla.frec

tabla.frec
##                Carrera Frec.Absoluta Frec.Relativa Frec.Porc Frec.Acum
## 1           INDUSTRIAL           707    0.11924439 11.924439       707
## 2         ARQUITECTURA           675    0.11384719 11.384719      1382
## 3                CIVIL           648    0.10929330 10.929330      2030
## 4  GESTION EMPRESARIAL           585    0.09866757  9.866757      2615
## 5              QUIMICA           568    0.09580030  9.580030      3183
## 6       ADMINISTRACION           497    0.08382527  8.382527      3680
## 7             SISTEMAS           452    0.07623545  7.623545      4132
## 8           BIOQUIMICA           441    0.07438017  7.438017      4573
## 9          MECATRONICA           432    0.07286220  7.286220      5005
## 10            MECANICA           301    0.05076741  5.076741      5306
## 11           ELECTRICA           280    0.04722550  4.722550      5586
## 12         ELECTRONICA           161    0.02715466  2.715466      5747
## 13         INFORMATICA           101    0.01703491  1.703491      5848
## 14                 TIC            81    0.01366166  1.366166      5929
##    Frec.Acum.Porc
## 1        11.92444
## 2        23.30916
## 3        34.23849
## 4        44.10525
## 5        53.68528
## 6        62.06780
## 7        69.69135
## 8        77.12936
## 9        84.41558
## 10       89.49233
## 11       94.21488
## 12       96.93034
## 13       98.63383
## 14      100.00000

7. Genera gráfica de barra de la frecuencia de alumnos de todos los semestres por carrera

  • Frecuenci Absoluta
barplot(main = "Alumnos de Todos los Semestre",
        xlab = "Carreras", ylab = "Frecuencia Absoluta",
        height = tabla.frec$Frec.Absoluta, 
        names.arg = substr(tabla.frec$Carrera,1,3))

  • Frecuencia Relativa
barplot(main = "Alumnos de Todos los Semestre",
        xlab = "Carreras", ylab = "Frecuencia Relativa",
        height = tabla.frec$Frec.Relativa, 
        names.arg = substr(tabla.frec$Carrera,1,3))

  • Frecuencia Porcentual
barplot(main = "Alumnos de Todos los Semestre",
        xlab = "Carreras", ylab = "Frecuencia Porcentual %",
        height = tabla.frec$Frec.Porc, 
        names.arg = substr(tabla.frec$Carrera,1,3))

8. Generar tabla de distribución de frecuencias de alumnos inscritos por carreras por semestre (Una por cada carrera)

  • Carrera de ARQUITECTURA
  • Convertir a factor (variable categórica ) el Semestre
  • subset() para filtrar datos
ARQUITECTURA <- subset(datos.alumnos, Carrera == "ARQUITECTURA")
ARQUITECTURA$Semestre <- factor(ARQUITECTURA$Semestre)

tabla.frec <- data.frame(fdt_cat(ARQUITECTURA$Semestre))
names(tabla.frec) <- c("Semestre","Frec.Absoluta","Frec.Relativa","Frec.Porc","Frec.Acum","Frec.Acum.Porc") # Cambiar nombre a tabla.frec

tabla.frec
##    Semestre Frec.Absoluta Frec.Relativa Frec.Porc Frec.Acum Frec.Acum.Porc
## 1         1           128    0.18962963 18.962963       128       18.96296
## 2         2            87    0.12888889 12.888889       215       31.85185
## 3         3            66    0.09777778  9.777778       281       41.62963
## 4         6            64    0.09481481  9.481481       345       51.11111
## 5         4            62    0.09185185  9.185185       407       60.29630
## 6         8            60    0.08888889  8.888889       467       69.18519
## 7         5            58    0.08592593  8.592593       525       77.77778
## 8         7            53    0.07851852  7.851852       578       85.62963
## 9         9            47    0.06962963  6.962963       625       92.59259
## 10       10            31    0.04592593  4.592593       656       97.18519
## 11       12            11    0.01629630  1.629630       667       98.81481
## 12       11             8    0.01185185  1.185185       675      100.00000

9. Genera una gráfica de barra de alumnos inscritos por carreras por semestre (Una por cada carrera)

  • ARQUITECTURA
  • Frecuenci Absoluta
barplot(main = "Alumnos de ARQUITECTURA por Semestres",
        xlab = "Semestres", ylab = "Frecuencia Absoluta",
        height = tabla.frec$Frec.Absoluta, 
        names.arg = tabla.frec$Semestre)

PENDIENTES LAS SIGUIENTES CARRERAS

Interpretación

Generar una descripción del caso de manera descriptiva (texto libre) de entre 80 y 100 palabras con ideas claras, ordenadas y explicativas.

Ejemplo contestar las siguientes preguntas:

  • ¿Cuántas observaciones o registros (filas) contiene el conjunto de datos y cuántas variables o atributos (columnas)?
  • ¿Cuál es la variable de interés para determinar frecuencias?
  • ¿Qué representa los estadísticos frecuencia absoluta, frecuencia relativa, frecuencia porcentual y acumulada?
  • ¿Cuáles son las carreras con más y menos alumnos inscritos en primer semestre?
  • ¿Cuáles carreras que tienes más y menos alumnos inscritos en total?
  • ¿Cuáles carreras representan aproximadamente el 35% de la población?
  • ¿Cuáles carreras representan aproximadamente 50% de la población?
  • ¿Para qué sirve una tabla de distribución?
  • ¿Qué se interpreta en una gráfica de barra?
  • Comentarios finales.