Entregable 2.4: Base de Datos Merma

Librerías

library(dplyr)
library(plyr)
library(ggplot2)
library(naniar)
library(Hmisc)         
library(psych)
library(tidyverse)
library(janitor)
library(knitr)

Importar la base de datos

#file.choose()
bd_merma <- read.csv("/Users/ErickaMtz/Desktop/FORM - Merma.csv")
bd_scrap <- read.csv("/Users/ErickaMtz/Desktop/FORM - Scrap.csv")
bd_prod <- read.csv("/Users/ErickaMtz/Downloads/FORM - Produccion Carton Mes.csv")

Analiza las bases de datos y responde lo siguiente:

1) ¿Cuántas variables y cuantos registros tiene la base de datos?

La base de datos Merma tiene 3 variables y 60 registros.

describe(bd_merma)
##        vars  n  mean    sd median trimmed   mad min max range  skew kurtosis
## Fecha*    1 60 19.77 13.83   20.5   19.40 17.79   1  43    42  0.05    -1.34
## Mes*      2 60  6.25  4.56    5.0    5.60  4.45   1  19    18  1.05     0.44
## Kilos*    3 60 28.72 15.92   29.0   28.77 19.27   1  56    55 -0.03    -1.21
##          se
## Fecha* 1.79
## Mes*   0.59
## Kilos* 2.06
dim(bd_merma)
## [1] 60  3

La base de datos Scrap tiene 9 variables y 251 registros.

describe(bd_scrap)
##                       vars   n   mean     sd median trimmed   mad min  max
## Referencia*              1 251 126.00  72.60    126  126.00 93.40   1  251
## Fecha*                   2 251  16.21   7.11     17   16.50  7.41   1   27
## Hora*                    3 251 126.00  72.60    126  126.00 93.40   1  251
## Producto*                4 251  45.20  24.83     46   44.94 26.69   1   96
## Cantidad                 5 251  13.34 105.90      2    3.95  1.48   0 1674
## Unidad.de.medida*        6 251   2.00   0.06      2    2.00  0.00   1    2
## Ubicación.de.origen*     7 251   3.47   0.86      4    3.60  0.00   1    4
## Ubicación.de.desecho*    8 251   2.00   0.06      2    2.00  0.00   1    2
## a*                       9 251   2.00   0.06      2    2.00  0.00   1    2
##                       range   skew kurtosis   se
## Referencia*             250   0.00    -1.21 4.58
## Fecha*                   26  -0.29    -0.99 0.45
## Hora*                   250   0.00    -1.21 4.58
## Producto*                95   0.01    -0.80 1.57
## Cantidad               1674  15.37   237.90 6.68
## Unidad.de.medida*         1 -15.65   244.02 0.00
## Ubicación.de.origen*      3  -1.11    -0.62 0.05
## Ubicación.de.desecho*     1 -15.65   244.02 0.00
## a*                        1 -15.65   244.02 0.00
dim(bd_scrap)
## [1] 251   9

La base de datos Producción tiene

describe(bd_prod)
##                     vars  n  mean    sd median trimmed   mad min max range skew
## X*                     1 51 26.00 14.87     26   26.00 19.27   1  51    50 0.00
## X.1*                   2 51  5.24  2.16      5    5.15  2.97   1   9     8 0.34
## X.2*                   3 51 22.39 13.72     22   22.29 17.79   1  46    45 0.04
## X.3*                   4 51 26.00 14.87     26   26.00 19.27   1  51    50 0.00
## X.4*                   5 51 10.49  6.77      8   10.00  7.41   1  24    23 0.47
## X.5*                   6 51  3.53  2.59      2    3.17  1.48   1  11    10 0.93
## X.6*                   7 51 11.49  9.55     11   10.83 14.83   1  29    28 0.32
## X.7*                   8 51  7.63  4.60      8    7.56  7.41   1  14    13 0.08
## TIEMPO.DE.MAQUINAS*    9 51 10.04  8.53      9    9.17 10.38   1  28    27 0.58
## X.8*                  10 51  7.49  7.20      2    6.49  1.48   1  24    23 0.87
## X.9*                  11 51  7.88  7.94      2    6.73  1.48   1  26    25 0.94
## X.10*                 12 51 11.92 10.58      9   10.90 10.38   1  33    32 0.54
## X.11*                 13 51 11.92 10.58      9   10.90 10.38   1  33    32 0.54
## X.12*                 14 51  2.69  0.91      3    2.66  0.00   1   6     5 0.80
## X.13*                 15 51  1.16  0.42      1    1.05  0.00   1   3     2 2.60
##                     kurtosis   se
## X*                     -1.27 2.08
## X.1*                   -1.05 0.30
## X.2*                   -1.28 1.92
## X.3*                   -1.27 2.08
## X.4*                   -1.15 0.95
## X.5*                    0.16 0.36
## X.6*                   -1.39 1.34
## X.7*                   -1.61 0.64
## TIEMPO.DE.MAQUINAS*    -1.04 1.19
## X.8*                   -0.70 1.01
## X.9*                   -0.62 1.11
## X.10*                  -1.20 1.48
## X.11*                  -1.20 1.48
## X.12*                   2.58 0.13
## X.13*                   6.36 0.06
dim(bd_prod)
## [1] 51 15

2) y 3) Clasifica cada variable en cualitativa, cuantitativa discreta o cuantitativa continua y escala de medición

Tipos de Variable: Merma

Variable Type
Fecha Cualitativa
Mes Cualitativa
Kilos Cuantitativa (discreta)

Tipos de Variable: Scrap

Variable Type
Referencia Cualitativa
Fecha Cualitativa
Hora Cuantitativa (continua)
Producto Cualitativa
Cantidad Cuantitativa (discreta)
Unidad de medidad Cualitativa
Ubicación de origen Cualitativa
Ubicacuón de desecho Cualitativa
Estado Cualitativa

Tipos de Variable: Producción

Variable<-c("`Cliente`","`ID Form`", "`Producto`","`Piezas programadas`", "`Tiempo minutos`", "`Hora fin`", "`Estacion arranque`", "`Laminas procesadas`", "`Inicio set up`", "`Fin inicio set up`", "`Inicio de proceso`", "`Fin de proceso`", "`Tiempo calidad`")
Type<-c("Cualitativa","Cualitativa", "Cualitativa","Cuantitativa (discreta)", "Cuantitativa (discreta)", "Cuantitativa (continua)", "Cualitativa", "Cuantitativa (discreta)", "Cuantitativa (continua)", "Cuantitativa (continua)", "Cuantitativa (continua)", "Cuantitativa (continua)", "Cuantitativa (discreta)" )
table<-data.frame(Variable,Type)
knitr::kable(table)
Variable Type
Cliente Cualitativa
ID Form Cualitativa
Producto Cualitativa
Piezas programadas Cuantitativa (discreta)
Tiempo minutos Cuantitativa (discreta)
Hora fin Cuantitativa (continua)
Estacion arranque Cualitativa
Laminas procesadas Cuantitativa (discreta)
Inicio set up Cuantitativa (continua)
Fin inicio set up Cuantitativa (continua)
Inicio de proceso Cuantitativa (continua)
Fin de proceso Cuantitativa (continua)
Tiempo calidad Cuantitativa (discreta)

4) Aplica al menos 2 técnicas de limpieza de bases de datos y explícalas brevemente, ¿por qué realizaste esas técnicas?

Limpieza de Datos: Merma

Cambio de tipo de Variable: La variable de Kilos estaba en formato de carácter y se paso a numérica.

str(bd_merma)
## 'data.frame':    60 obs. of  3 variables:
##  $ Fecha: chr  "11/01/2022" "11/01/2022" "22/01/2022" "22/01/2022" ...
##  $ Mes  : chr  "ENERO" "ENERO" "ENERO" "ENERO" ...
##  $ Kilos: chr  "5080" "3810" "2990" "2680" ...
bd_merma$Kilos <- as.numeric(bd_merma$Kilos)
## Warning: NAs introduced by coercion

Crear base de datos que muestre total de kilos por mes solamente Se descubrió que el mes con mayor cantidad de merma fue agosto.

bd_merma1<-aggregate(Kilos ~ Mes , data = bd_merma, sum)

Eliminar renglones de Total General x Mes

bd_merma2 <-bd_merma [- grep("Total", bd_merma$Mes),]

Limpieza de Datos: Scrap

Eliminar columnas que no agreguen valor o que sean datos repetitivos

bd_scrap1 <- bd_scrap
bd_scrap1 <- select(bd_scrap1, Fecha, Cantidad, Ubicación.de.origen)

Eliminar renglón de Unidades totales de scrap

bd_scrap1 <- bd_scrap1 [- c(1),]

Limpieza de Datos: Producción

Eliminar columnas

Eliminar comluna No. de cliente

bd_prod <- select(bd_prod, -X)

Eliminar columna Tipo de meteriales

bd_prod <- select(bd_prod, -X.13)

Pasar primer renglón a que sea los nombres de columna

bd_prod1 <- bd_prod
colnames(bd_prod1) <- bd_prod[1,]
colnames(bd_prod1)
##  [1] "CLIENTE"              "ID FORM"              "PRODUCTO"            
##  [4] "PIEZAS PROG."         "TMO: MIN."            "HR. FIN"             
##  [7] "ESTACION ARRANQUE"    "Laminas procesadas "  "INICIO SEP UP"       
## [10] "FIN INICIO DE SEP UP" "INICIO de PROCESO"    "FIN de PROCESO"      
## [13] "TIEMPO CALIDAD"

Eliminar primer fila

bd_prod1 <- bd_prod1[-1,]

Tabla de frencuencia: Merma

mes <- bd_merma %>% group_by(Mes) %>% tally()
mes
## # A tibble: 19 × 2
##    Mes                  n
##    <chr>            <int>
##  1 ABRIL                5
##  2 AGOSTO              11
##  3 ENERO                4
##  4 FEBRERO              6
##  5 JULIO                5
##  6 JUNIO                4
##  7 MARZO                6
##  8 MAYO                 5
##  9 SEPTIEMBRE           4
## 10 Total ABRIL          1
## 11 Total AGOSTO         1
## 12 Total ENERO          1
## 13 Total FEBRERO        1
## 14 Total general        1
## 15 Total JULIO          1
## 16 Total JUNIO          1
## 17 Total MARZO          1
## 18 Total MAYO           1
## 19 Total SEPTIEMBRE     1

Tabla de frencuencia: Scrap

ubicacion <- bd_scrap1 %>% group_by(Ubicación.de.origen) %>% tally()
ubicacion
## # A tibble: 3 × 2
##   Ubicación.de.origen           n
##   <chr>                     <int>
## 1 SAB/Calidad/Entrega de PT    58
## 2 SAB/Post-Production          13
## 3 SAB/Pre-Production          179

Tabla de frencuencia: Producción

Gráfica de Dispersión: Merma

ggplot(bd_merma2 , aes(x=Mes, y=Kilos)) + 
    geom_point()

Gráfica de Dispersión: Scrap

ggplot(data=bd_scrap1, mapping =
aes(Cantidad, Ubicación.de.origen)) +
  geom_point(aes()) + theme_bw()

Gráfica de Dispersión: Producción

ggplot(bd_prod1, aes(x=`PIEZAS PROG.`, y=CLIENTE)) + 
    geom_point() 

Graficos de datos cualitativos

Bar Graph de Kilos x Mes

ggplot(bd_merma2, aes(x=Mes, y=Kilos)) +
  geom_bar(stat="identity", fill="purple") + scale_fill_grey() + 
  labs(title = "Kilos de Merma por Mes", 
       x = "Mes", y = "Kilos")

Bar Graph de Cantidad de Piezas por Ubicación

ggplot(bd_scrap1, aes(x=Ubicación.de.origen, y=Cantidad)) +
  geom_bar(stat="identity", fill="purple") + scale_fill_grey() + 
  labs(title = "Unidades de Scrap por Estación", 
       x = "Unidades", y = "Ubicación")

Propuestas