¡Hola , aquí tienes el código con chunks para que lo uses en tu documento R Markdown! He añadido comentarios para explicar cada sección del código:
title: “Gráfico de Control” output: html_document —
{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE)
Con los primeros 60 datos que se presentan a continuación, diseñar un gráfico de control para la variable peso (el valor nominal de la variable es 500g ±7 g. Y a partir del gráfico diseñado, graficar los siguientes 20 datos y definir si el proceso se encuentra o no en control estadístico.
{r carga_y_preparacion_datos} # Cargar las librerías necesarias y los datos desde el archivo Excel install.packages(“readxl”) library(readxl) PC2 <- read_excel(“C:/Users/josef/Downloads/PC2.xlsx”, sheet = “Punto3”) head(PC2)
datos_60 <- PC2[1:60, ] # primeras 60 muestras datos_20 <- PC2[61:80, ] # ultimas 20 muestras
{r calculo_estadisticos} # Calcular los promedios y los rangos para las primeras 60 muestras xbar <- apply(datos_60[, 2:6], 1, mean) #promedios rango <- apply(datos_60[, 2:6], 1, function(x) max(x) - min(x)) #maximo y minimo
xbar_LC <- mean(xbar) r_LC <- mean(rango)
cat(“LC de X̄ =”, xbar_LC, “
”) cat(“LC de R =”, r_LC, “
”)
{r definicion_limites_control} # Definir los valores de A2, D3 y D4 para n=5 (constantes para los gráficos de control) A2 <- 0.577; D3 <- 0; D4 <- 2.114 #valores para n=5
Xbar_LSC <- xbar_LC + A2 * r_LC Xbar_LIC <- xbar_LC - A2 * r_LC
R_LSC <- D4 * r_LC R_LIC <- D3 * r_LC
cat(“Gráfico X̄:
LIC =”, Xbar_LIC, “| LC =”, xbar_LC, “| LSC =”, Xbar_LSC, “
”) cat(“Gráfico R:
LIC =”, R_LIC, “| LC =”, r_LC, “| LSC =”, R_LSC, “
”)
{r graficos_control, fig.width=12, fig.height=6} # Crear los gráficos de control X̄ y R para las primeras 60 muestras par(mfrow=c(1,2)) #para mostrar los dos gráficos juntos
plot(xbar, type=“b”, pch=19, col=“blue”, ylim=c(Xbar_LIC-5, Xbar_LSC+5), ylab=“Promedios (X)”, xlab=“Muestra”, main=“Gráfico de Control X (Muestras 1 - 60)”) abline(h=c(Xbar_LSC, xbar_LC, Xbar_LIC), col=c(“red”,“green”,“red”), lty=2)
plot(rango, type=“b”, pch=19, col=“blue”, ylim=c(R_LIC-1, R_LSC+1), ylab=“Rango (R)”, xlab=“Muestra”, main=“Gráfico de Control R (Muestras 1 - 60)”) abline(h=c(R_LSC, r_LC, R_LIC), col=c(“red”,“green”,“red”), lty=2) par(mfrow=c(1,1)) #restablecer la configuración de gráficos
{r evaluacion_nuevas_muestras} # Evaluar si las nuevas muestras (datos_20) están fuera de control estadístico xbar_nuevos <- apply(datos_20[, 2:6], 1, mean)
fuera_control <- which(xbar_nuevos > Xbar_LSC | xbar_nuevos < Xbar_LIC)
if(length(fuera_control) == 0){ cat(“El proceso se mantiene en
control (ninguna muestra fuera de los límites).
”) } else { cat(“Muestras fuera de control:”, fuera_control + 60,
“
”) }
{r resultados_finales} # Mostrar los resultados en una tabla resultados <- data.frame( Muestra = 1:60, Xbar = round(xbar, 2), Rango = rango ) View(resultados)
\`
¡Espero que esto te sea de gran ayuda! Si tienes alguna otra pregunta, no dudes en consultarme.