{"id":800,"date":"2025-09-28T13:39:51","date_gmt":"2025-09-28T19:39:51","guid":{"rendered":"https:\/\/victortercero.com\/?p=800"},"modified":"2025-10-09T16:38:41","modified_gmt":"2025-10-09T22:38:41","slug":"puntajes-normales-secuenciales-una-herramienta-moderna-para-el-monitoreo-estadistico-de-procesos","status":"publish","type":"post","link":"https:\/\/victortercero.com\/index.php\/2025\/09\/28\/puntajes-normales-secuenciales-una-herramienta-moderna-para-el-monitoreo-estadistico-de-procesos\/","title":{"rendered":"Puntajes Normales Secuenciales: una herramienta moderna para  el monitoreo estad\u00edstico de procesos"},"content":{"rendered":"\n<p>Los puntajes normales secuenciales, tambi\u00e9n conocidos como <em>sequential normal scores<\/em>, son una transformaci\u00f3n no param\u00e9trica que permite extender el uso de m\u00e9todos param\u00e9tricos de monitoreo estad\u00edstico para su uso no param\u00e9trico. Es decir, cuando tus datos no siguen una distribuci\u00f3n normal o alguna otra requerida. Transformaciones param\u00e9tricas tradicionales pueden generar errores de modelaci\u00f3n que logras mitigar al moverte a un enfoque no param\u00e9trico.<\/p>\n\n\n\n<p>En el mundo de la ingenier\u00eda industrial y de la calidad, uno de los retos m\u00e1s frecuentes es monitorear procesos en tiempo real. Esto implica analizar secuencias de datos que llegan de manera continua, como la vibraci\u00f3n de un rodamiento, el tiempo de servicio de un cajero o la temperatura de un horno.<\/p>\n\n\n\n<p>La mayor\u00eda de los m\u00e9todos cl\u00e1sicos de control estad\u00edstico de procesos (como las gr\u00e1ficas de control Shewhart, CUSUM o EWMA) fueron dise\u00f1ados bajo un supuesto fuerte: que los datos son independientes y provienen de una distribuci\u00f3n normal. Pero, \u00bfqu\u00e9 pasa cuando los datos no cumplen esta condici\u00f3n?<\/p>\n\n\n\n<p>Existen muchas formas de responder esta pregunta. Una estrategia moderna y poderosa para resolver este problema es utilizando <a href=\"https:\/\/www.tandfonline.com\/doi\/full\/10.1080\/07474946.2017.1360091\" title=\"\">puntajes normales secuenciales<\/a>. Los puntajes normales secuenciales son una transformaci\u00f3n no param\u00e9trica dise\u00f1ada para el monitoreo de datos que normaliza tus observaciones. Tal como se ilustra en la Figura 1, esto permite extender el uso de m\u00e9todos tradicionales de monitoreo a situaciones donde tus datos ya no cumplen el supuesto de normalidad.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"346\" src=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3-1024x346.png\" alt=\"Los puntajes normales secuenciales transforman tus datos para que sigan una distribuci\u00f3n normal est\u00e1ndar.\" class=\"wp-image-816\" srcset=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3-1024x346.png 1024w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3-300x101.png 300w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3-768x260.png 768w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3-1536x519.png 1536w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-3.png 1695w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Figura 1. La transformaci\u00f3n de puntajes normales secuenciales permite que cualquier serie independiente de datos  se aproxime a la distribuci\u00f3n normal.<\/figcaption><\/figure>\n\n\n\n<p>Imagina poder utilizar una carta Shewhart, EWMA o CUSUM cuando tus observaciones bajo control no son normales. Esta es una situaci\u00f3n com\u00fan en servicios con sus mediciones de tiempos de ciclo, procesos de manufactura con alg\u00fan l\u00edmite f\u00edsico como la dureza, o el espesor, o en procesos modernos de <a href=\"https:\/\/es.wikipedia.org\/wiki\/Internet_de_las_cosas\" title=\"\">IoT<\/a> con sus se\u00f1ales de vibraciones y temperaturas. Observa en la Figura 2 como gracias a los puntajes normales secuenciales es posible utilizar una gr\u00e1fica EWMA con un mejor control de las falsas alarmas.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"369\" src=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4-1024x369.png\" alt=\"Los puntajes normales secuenciales te permiten utilizar herramientas param\u00e9tricas que asumen normalidad aunque los datos originales no siguan este comportamiento.\" class=\"wp-image-819\" srcset=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4-1024x369.png 1024w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4-300x108.png 300w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4-768x277.png 768w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4-1536x554.png 1536w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-4.png 1795w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Figura 2. Carta EWMA con datos nor normales y con los mismos datos transformados con puntajes normales secuenciales.<\/figcaption><\/figure>\n\n\n\n<p>Usando transformaciones param\u00e9tricas tracicionales como la transformaci\u00f3n Box-Cox o la transformaci\u00f3n de Johnson corres el riesgo de cometer errores de modelaci\u00f3n. Como se discute en <a href=\"https:\/\/www.tandfonline.com\/doi\/abs\/10.1080\/08982112.2021.1909731\" title=\"\">este art\u00edculo<\/a> sobre la importancia de la normalidad en el monitoreo estad\u00edstico, las transformaciones param\u00e9tricas pueden ser peligrosas. Como alternativa, las transformaciones no param\u00e9tricas como la transformaci\u00f3n de puntajes normales tienden a ser m\u00e1s seguras bajo condiciones muy generales.<\/p>\n\n\n\n<p>A trav\u00e9s de esta p\u00e1gina analizaremos el problema de los datos no normales, c\u00f3mo funcionan los enfoques no param\u00e9tricos, y c\u00f3mo se desarrolla la alternativa de los puntajes normales secuenciales como estrategia no param\u00e9trica para el monitoreo y\/o control estad\u00edstico. Al final del documento encontrar\u00e1s tips avanzados para resolver estas transformaciones utilizando un paquete de disponible en <a href=\"https:\/\/cran.r-project.org\/\" title=\"\">lenguaje R<\/a> llamado <a href=\"https:\/\/victortercero.com\/index.php\/2025\/08\/30\/r-package-snschart\/\" title=\"R Package: SNSchart\">SNSchart<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El problema: datos no normales y los enfoques no param\u00e9tricos tradicionales<\/h2>\n\n\n\n<p>Cuando los datos no son normales \u2014por ejemplo, presentan asimetr\u00eda, colas pesadas o valores at\u00edpicos\u2014, los m\u00e9todos param\u00e9tricos pierden potencia para detectar cambios.<\/p>\n\n\n\n<p>Una alternativa muy utilizada son los m\u00e9todos no param\u00e9tricos. Estos, en lugar de trabajar con los valores originales, t\u00edpicamente usan transformaciones ingeniosas cuyo resultado puede ser caracterizado de forma exacta, aunque la distribuci\u00f3n original de los datos sea desconocida. En la Figura 3 se ilustra este enfoque de transformaciones no param\u00e9tricas.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"332\" src=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-1024x332.jpg\" alt=\"La mayor parte de las transformaciones no param\u00e9tricas se basan en el an\u00e1lisis de la posici\u00f3n relativa de los datos, y para ello no se requiere conocer la distribui\u00f3n original.\" class=\"wp-image-805\" srcset=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-1024x332.jpg 1024w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-300x97.jpg 300w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-768x249.jpg 768w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-1536x497.jpg 1536w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/transformacionnoparametrica-2048x663.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Figura 3. Una transformaci\u00f3n no param\u00e9trica apropiada puede ayudarte a analizar tus datos cuando no tienes un marco de referencia, o distribuci\u00f3n, conocida.<\/figcaption><\/figure>\n\n\n\n<p>Probablemente la transformaci\u00f3n m\u00e1s utilizada sea la transformaci\u00f3n de rangos. La transformaci\u00f3n de rangos es la base de la mayor parte de los m\u00e9todos no param\u00e9tricos populares. Como se ejemplifica en la Tabla 1. La idea es sencilla: en lugar de preocuparse por la forma de la distribuci\u00f3n de los datos, basta con conocer el orden relativo en que se encuentran las observaciones.<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table class=\"has-fixed-layout\"><thead><tr><th><em>i:<\/em><\/th><th>1<\/th><th>2<\/th><th>3<\/th><th>4<\/th><th>5<\/th><th>6<\/th><th>7<\/th><\/tr><\/thead><tbody><tr><th scope=\"row\"><em>x:<\/em><\/th><td>3.0<\/td><td>4.5<\/td><td>8.6<\/td><td>2.3<\/td><td>2.8<\/td><td>1.7<\/td><td>6.6<\/td><\/tr><tr><th scope=\"row\"><em>r:<\/em><\/th><td>4<\/td><td>5<\/td><td>7<\/td><td>2<\/td><td>3<\/td><td>1<\/td><td>6<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 1. La transformaci\u00f3n de rangos cambia el valor de tus datos (x) por su posici\u00f3n relativa en el grupo (r).<\/figcaption><\/figure>\n\n\n\n<p>Observa en la tabla que la observaci\u00f3n m\u00e1s peque\u00f1a, x =1.7, en la sexta posici\u00f3n i = 7, recibe el rango de r = 1. La segunda m\u00e1s peque\u00f1a, 2.3, recibe el rango de 2, y as\u00ed hasta la observaci\u00f3n m\u00e1s grande, 8.7, que recibe el rango m\u00e1s alto que es 7. La letra i corresponde al orden o posici\u00f3n en que las mediciones fueron tomadas.<\/p>\n\n\n\n<p>El inconveniente es que, en un contexto secuencial,  volver a calcular todos los rangos cada vez que llega un nuevo dato es computacionalmente costoso, especialmente si hablamos de grandes vol\u00famenes de informaci\u00f3n.  Un contexto secuencial t\u00edpico es, por ejemplo, un proceso de manufactura, donde las mediciones aparecen seg\u00fan  el orden de la producci\u00f3n. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">La soluci\u00f3n: rangos secuenciales<\/h2>\n\n\n\n<p>Para enfrentar este reto, <a href=\"https:\/\/books.google.com.mx\/books?id=pYFCAAAAIAAJ\" title=\"\">Parent (1965)<\/a> propuso los rangos secuenciales:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Cuando llega un nuevo dato, solo se calcula su rango relativo a los datos anteriores.<\/li>\n\n\n\n<li>Los rangos previos permanecen intactos.<\/li>\n<\/ul>\n\n\n\n<p>En la Tabla 2 se muestra que los rangos se calculan ahora s\u00f3lo utilizando la informaci\u00f3n previa de la secuencia observada. <\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table class=\"has-fixed-layout\"><thead><tr><th><em>i:<\/em><\/th><th>1<\/th><th>2<\/th><th>3<\/th><th>4<\/th><th>5<\/th><th>6<\/th><th>7<\/th><\/tr><\/thead><tbody><tr><th scope=\"row\"><em>x:<\/em><\/th><td>3.0<\/td><td>4.5<\/td><td>8.6<\/td><td>2.3<\/td><td>2.8<\/td><td>1.7<\/td><td>6.6<\/td><\/tr><tr><th scope=\"row\"><em>r:<\/em><\/th><td>1<\/td><td>2<\/td><td>3<\/td><td>1<\/td><td>2<\/td><td>1<\/td><td>6<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 2. La transformaci\u00f3n de rangos secuenciales cambia el valor de tus datos (x) por su posici\u00f3n relativa (r) en relaci\u00f3n a lo previamente observado en la secuencia (i).<\/figcaption><\/figure>\n\n\n\n<p>Por ejemplo, la primera observaci\u00f3n medida recibe el rango 1, pues no hay observaciones anteriores, as\u00ed que 1 es el \u00fanico rango posible para asignar. La segunda observaci\u00f3n, 4.5, recibe el rango de 2, pues es la mayor de dos observaciones hasta ese momento . La tercera observaci\u00f3n 8.6, recibe el rango de 3, pues es la mayor de las tres que van. Y as\u00ed, la cuarta observaci\u00f3n 2.3 recibe nuevamente el rango 1, por ser la menor de entre sus predecesoras.<\/p>\n\n\n\n<p>Si encontramos empates en nuestras observaciones, utilizamos el rango promedio. Por ejemplo, en una secuencia de observaciones 2, 4, 7, 3, 4 ser\u00eda ranqueada como 1, 2, 3,2, 3.5. Observa que la quinta observacion, que es 4, est\u00e1 empatada con la primera, que tambi\u00e9n es 4. Si la segunda observaci\u00f3n fuese menor, la quinta observaci\u00f3n tendr\u00eda un rango de 4, si fuese mayor, la quinta tendr\u00eda un rango de 3. Cualquier fracci\u00f3n entre 3 y 4 estar\u00eda correcta, as\u00ed que optamos por tomar el promedio entre los posibles rangos, esto es, 3.5.<\/p>\n\n\n\n<p>Los rangos se asignan seg\u00fan lo observado hasta el momento, y estos no cambian a\u00fan cuando aparecen nuevas observaciones. Esto ahorra much\u00edsimo tiempo de c\u00f3mputo. Sin embargo, hay un problema: las distribuciones resultantes son dif\u00edciles de caracterizar te\u00f3ricamente, lo que limitaba su aplicaci\u00f3n pr\u00e1ctica.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Un paso m\u00e1s: los puntajes normales secuenciales<\/h2>\n\n\n\n<p>Aqu\u00ed es donde surge la propuesta de puntajes normales secuenciales (o simplemente SNS por <em>sequential normal scores<\/em>). La idea es transformar cada rango secuencial en el cuantil equivalente de una distribuci\u00f3n normal est\u00e1ndar.<\/p>\n\n\n\n<p>Dicho de otra forma:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Tomamos el rango secuencial del nuevo dato.<\/li>\n\n\n\n<li>Lo transformamos a una probabilidad acumulada dentro del intervalo (0,1).<\/li>\n\n\n\n<li>Esa probabilidad se traduce en el valor correspondiente de la curva normal est\u00e1ndar N(0,1).<\/li>\n<\/ol>\n\n\n\n<p>El resultado es una secuencia de valores que:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Son independientes entre s\u00ed (una gran ventaja frente a los rangos tradicionales).<\/li>\n\n\n\n<li>Se comportan asint\u00f3ticamente como una distribuci\u00f3n normal est\u00e1ndar.<\/li>\n<\/ul>\n\n\n\n<p>Para transformar los rangos secuenciales a una probabilidad acumulada <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/> lo \u00fanico que tenemos que hacer es restar el valor de 0.5 al rango secuencial y dividir entre el n\u00famero de observaciones utilizadas al momento de calcular los rangos. A la cantidad de observaciones utilizadas en un ranqueo le llamamos orden del rango, o simplemente <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-41136ed7463f7254f4e6df131f8be490_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#79;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"14\" style=\"vertical-align: 0px;\"\/>. As\u00ed, la f\u00f3rmula para el paso 2 es<\/p>\n\n\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 37px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-2fd39047a7f69ed0ef11b391c5aca1ac_l3.png\" height=\"37\" width=\"94\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\" &#92;&#98;&#101;&#103;&#105;&#110;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125; &#112;&#32;&#61;&#32;&#92;&#102;&#114;&#97;&#99;&#123;&#114;&#45;&#48;&#46;&#53;&#125;&#123;&#79;&#125;&#46; &#92;&#101;&#110;&#100;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125; \" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n\n\n\n<p>El valor de 0.5 es una correcci\u00f3n \u00fatil para balancear las probabilidades calculadas y evitar imposibilidades cuando convertimos estas probabilidades en valores <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/>.<\/p>\n\n\n\n<p>Para el paso 3, necesitamos obtener el valor <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/> de una normal est\u00e1ndar que genera esta probabilidad acumulada. Esto lo podemos obtener de <a href=\"https:\/\/en.wikipedia.org\/wiki\/Standard_normal_table\" title=\"\">tablas de valores z <\/a>para la normal est\u00e1ndar, o evaluando funciones en Excel como <a href=\"https:\/\/support.microsoft.com\/en-us\/office\/norm-s-inv-function-d6d556b4-ab7f-49cd-b526-5a20918452b1\" title=\"\">NORM.S.INV()<\/a>, o <a href=\"https:\/\/www.rdocumentation.org\/packages\/stats\/versions\/3.6.2\/topics\/Normal\" title=\"\">qnorm()<\/a> en R.<\/p>\n\n\n\n<p>De manera general, con lenguaje un poco m\u00e1s t\u00e9cnico, se dice que el valor <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/> se obtiene evaluando la probabilidad acumulada <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/> en la inversa de una funci\u00f3n de distribuci\u00f3n acumulada normal est\u00e1ndar<\/p>\n\n\n<p class=\"ql-center-displayed-equation\" style=\"line-height: 22px;\"><span class=\"ql-right-eqno\"> &nbsp; <\/span><span class=\"ql-left-eqno\"> &nbsp; <\/span><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-2c8f74267fbfda06f0082b17d309aa2f_l3.png\" height=\"22\" width=\"91\" class=\"ql-img-displayed-equation quicklatex-auto-format\" alt=\" &#92;&#98;&#101;&#103;&#105;&#110;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125; &#122;&#32;&#61;&#32;&#92;&#80;&#104;&#105;&#94;&#123;&#45;&#49;&#125;&#40;&#112;&#41;&#46; &#92;&#101;&#110;&#100;&#123;&#97;&#108;&#105;&#103;&#110;&#42;&#125; \" title=\"Rendered by QuickLaTeX.com\"\/><\/p>\n\n\n\n<p>El s\u00edmbolo <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-42eb9e9ed6fb17b41f64ec9fb172c65e_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#92;&#80;&#104;&#105;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"12\" style=\"vertical-align: 0px;\"\/> es utilizado en estad\u00edstica para representar a la distribuci\u00f3n normal est\u00e1ndar acumulada. Y el -1 en la funci\u00f3n no representa el rec\u00edproco, sino que indica que se trata de la funci\u00f3n inversa.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Haci\u00e9ndo un par\u00e9ntesis matem\u00e1tico, se puede decir que la inversa es c\u00f3mo el resultado de hacer un despeje. Si la funci\u00f3n es   <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-a671e369dd1de435e1e46101e6768c1c_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#40;&#120;&#41;&#58;&#32;&#121;&#32;&#61;&#32;&#109;&#120;&#32;&#43;&#32;&#98;\" title=\"Rendered by QuickLaTeX.com\" height=\"19\" width=\"138\" style=\"vertical-align: -5px;\"\/>, entonces la funci\u00f3n inversa es <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3be3d6ae5b84cb82e4f6dcec3ab7b225_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#102;&#94;&#123;&#45;&#49;&#125;&#40;&#121;&#41;&#58;&#32;&#120;&#32;&#61;&#32;&#40;&#121;&#32;&#45;&#32;&#98;&#41;&#47;&#109;\" title=\"Rendered by QuickLaTeX.com\" height=\"20\" width=\"178\" style=\"vertical-align: -5px;\"\/>. En la primera la entrada es <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-ede05c264bba0eda080918aaa09c4658_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#120;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"10\" style=\"vertical-align: 0px;\"\/> y el resultado es <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-0af556714940c351c933bba8cf840796_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#121;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: -4px;\"\/>, en la inversa la entrada es <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-0af556714940c351c933bba8cf840796_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#121;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"9\" style=\"vertical-align: -4px;\"\/> y la salida es <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-ede05c264bba0eda080918aaa09c4658_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#120;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"10\" style=\"vertical-align: 0px;\"\/>. As\u00ed, la funci\u00f3n de distribuci\u00f3n acumulada de una normal est\u00e1ndar tiene como entrada un valor de <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/> y esta te arroja una probabilidad acumulada <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/>, y la inversa tienen como entrada la probabilidad acumulada <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/> y genera como resultados un valor de <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/>. Se utiliza el concepto de inversa pues de la distribuci\u00f3n normal acumulada no se puede despejar del valor de <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/> para ponerlo en t\u00e9rminos de <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-3bf85f1087e9fbed3a319341134ac1a2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#112;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"10\" style=\"vertical-align: -4px;\"\/>. Se tienen que utilizar m\u00e9todos num\u00e9ricos para esto, o evaluar tablas con valores pre-calculados.<\/pre>\n\n\n\n<p>Siguiendo con el ejemplo mostrado en la Tabla 2, podemos calcular los puntajes normales secuenciales obteniendo las probabilides acumuladas y evaluando las mismas en la inversa de una normal est\u00e1ndar. Tal como se muestra en la Tabla 3.<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table class=\"has-fixed-layout\"><thead><tr><th><em>i:<\/em><\/th><th>1<\/th><th>2<\/th><th>3<\/th><th>4<\/th><th>5<\/th><th>6<\/th><th>7<\/th><\/tr><\/thead><tbody><tr><th scope=\"row\"><em>x:<\/em><\/th><td>3.0<\/td><td>4.5<\/td><td>8.6<\/td><td>2.3<\/td><td>2.8<\/td><td>1.7<\/td><td>6.6<\/td><\/tr><tr><td><em><strong>r:<\/strong><\/em><\/td><td>1<\/td><td>2<\/td><td>3<\/td><td>1<\/td><td>2<\/td><td>1<\/td><td>6<\/td><\/tr><tr><th scope=\"row\"><em>p:<\/em><\/th><td>0.5<\/td><td>0.75<\/td><td>0.83<\/td><td>0.13<\/td><td>0.30<\/td><td>0.08<\/td><td>0.79<\/td><\/tr><tr><td><strong><em>z:<\/em><\/strong><\/td><td>0.00<\/td><td>0.67<\/td><td>0.97<\/td><td>-1.15<\/td><td>-0.52<\/td><td>-1.38<\/td><td>0.79<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 3. Primero se calculan los rangos secuenciales (<em>r<\/em>), luego la probabilidad acumulada (<em>p<\/em>), y finalmente el puntaje normal (<em>z<\/em>).<\/figcaption><\/figure>\n\n\n\n<p>Observa que la primer observaci\u00f3n, 3.0, tiene un rango secuencial de 1, cuya probabilidad acumulada se estima como (1-0.5) \/ 1 = 0.5. Puesto que el valor <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-4586e340cb83d5b642972e97a288fec2_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#122;\" title=\"Rendered by QuickLaTeX.com\" height=\"8\" width=\"9\" style=\"vertical-align: 0px;\"\/> de una normal est\u00e1ndar que genera una probabilidad acumulada es cero, entonces el valor 3.0 se queda transformado en 0. El proceso se repite en cada una de las observaciones.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfPor qu\u00e9 es \u00fatil esta transformaci\u00f3n?<\/h2>\n\n\n\n<p>La gran ventaja de los puntajes normales secuenciales es que extienden el uso de los m\u00e9todos param\u00e9tricos a situaciones donde los datos no son normales.<\/p>\n\n\n\n<p>En otras palabras: aunque los datos originales sean asim\u00e9tricos o provengan de una distribuci\u00f3n desconocida, los puntajes normales secuenciales permiten ser tratados como si fueran normales e independientes con media 0 y desviaci\u00f3n est\u00e1ndar de 1. Esto significa que se pueden aplicar directamente sobre ellos herramientas cl\u00e1sicas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gr\u00e1ficas Shewhart<\/li>\n\n\n\n<li>Gr\u00e1ficas CUSUM.<\/li>\n\n\n\n<li>Gr\u00e1ficas EWMA.<\/li>\n\n\n\n<li>Procedimientos secuenciales para detectar cambios en la media o en la variabilidad.<\/li>\n<\/ul>\n\n\n\n<p>El \u00fanico cuidado que hay que tener es con enfoques tipo Shewhart, donde el monitoreo de observaciones individuales requiere de al menos 370 observaciones previas bajo control para detectar un cambio al usar l\u00edmites de 3 sigmas. Este n\u00famero se reduce r\u00e1pidamente a 29 con subgrupos tama\u00f1o 2 y a 5 para subgrupos tama\u00f1o 5. Enfoques tipo CUSUM y EWMA requieren muy pocas observaciones iniciales para detectar cambios en el proceso.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo ilustrativo<\/h2>\n\n\n\n<p>Para illustrar la aplicaci\u00f3n de esta novedosa transformaci\u00f3n. Utilizamos datos obtenidos de <a href=\"https:\/\/www.tandfonline.com\/doi\/full\/10.1080\/03610918.2011.606951\" title=\"\">Tercero-Gomez, V., Ramirez-Galindo, J., Cordero-Franco, A., Smith, M., &amp; Beruvides, M. (2012)<\/a>. Estos datos mostrados en la Tabla 4 corresponden a una secuencia que se lee de izquierda a derecha y de arriba hacia abajo. Es decir, 15.18 es la primera observaci\u00f3n, seguida de 7.82, y as\u00ed sucesivamente.<\/p>\n\n\n\n<p>Estos datos provienen de tiempos medidos en segundos entre llegadas a la biblioteca de Texas Tech University. Son 100 observaciones. De estas, a las \u00faltimas 20 de la serie se les aplic\u00f3 una reducci\u00f3n de 3 segundos para simular un cambio de comportamiento.<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table class=\"has-fixed-layout\"><tbody><tr><td>15.18<\/td><td>7.82<\/td><td>3.6<\/td><td>24.32<\/td><td>6.3<\/td><td>61.94<\/td><td>17.55<\/td><td>10.32<\/td><td>7.12<\/td><td>20<\/td><\/tr><tr><td>6.64<\/td><td>46.18<\/td><td>11.13<\/td><td>9.46<\/td><td>4.2<\/td><td>12.78<\/td><td>14.63<\/td><td>41.44<\/td><td>17.1<\/td><td>13.38<\/td><\/tr><tr><td>4.84<\/td><td>17.1<\/td><td>44.28<\/td><td>53.89<\/td><td>13.41<\/td><td>27.6<\/td><td>12.6<\/td><td>6.88<\/td><td>16.35<\/td><td>8.49<\/td><\/tr><tr><td>5.34<\/td><td>6.25<\/td><td>19.79<\/td><td>8.51<\/td><td>5.08<\/td><td>13.81<\/td><td>11.22<\/td><td>10.47<\/td><td>62.56<\/td><td>4.11<\/td><\/tr><tr><td>19.95<\/td><td>3.07<\/td><td>14.1<\/td><td>41.16<\/td><td>3.11<\/td><td>7.75<\/td><td>3.48<\/td><td>18.82<\/td><td>18.17<\/td><td>3.79<\/td><\/tr><tr><td>4.71<\/td><td>40.28<\/td><td>6.99<\/td><td>4.29<\/td><td>7.14<\/td><td>28.68<\/td><td>26.33<\/td><td>10.14<\/td><td>48.08<\/td><td>12.72<\/td><\/tr><tr><td>7.44<\/td><td>14.26<\/td><td>16.75<\/td><td>50.29<\/td><td>12.65<\/td><td>37.37<\/td><td>3.32<\/td><td>21.7<\/td><td>18.25<\/td><td>4.17<\/td><\/tr><tr><td>17.22<\/td><td>3.59<\/td><td>17.03<\/td><td>9.52<\/td><td>18.06<\/td><td>4.25<\/td><td>8.55<\/td><td>10.49<\/td><td>2.9<\/td><td>4.91<\/td><\/tr><tr><td>6.52<\/td><td>38.14<\/td><td>5.61<\/td><td>2.61<\/td><td>4.47<\/td><td>21.63<\/td><td>1.43<\/td><td>16.56<\/td><td>10.94<\/td><td>3.18<\/td><\/tr><tr><td>6.84<\/td><td>2.02<\/td><td>0.8<\/td><td>6.5<\/td><td>15.25<\/td><td>5.87<\/td><td>9.04<\/td><td>8.32<\/td><td>1.24<\/td><td>0.84<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 4. Tiempo entre llegadas a la biblioteca universitaria en Texas Tech University.<\/figcaption><\/figure>\n\n\n\n<p>Las observaciones est\u00e1n lejos de ser normales, como es lo esperado en la medici\u00f3n de tiempos de ciclo. Para analizarlas aplicamos la transformaci\u00f3n de puntajes normales secuenciales. El resultado de esta transformaci\u00f3n aparece en la Tabla 5 a continuaci\u00f3n.<\/p>\n\n\n\n<figure class=\"wp-block-table aligncenter\"><table class=\"has-fixed-layout\"><tbody><tr><td>0.00<\/td><td>-0.67<\/td><td>-0.97<\/td><td>1.15<\/td><td>-0.52<\/td><td>1.38<\/td><td>0.37<\/td><td>-0.16<\/td><td>-0.59<\/td><td>0.67<\/td><\/tr><tr><td>-0.75<\/td><td>1.15<\/td><td>0.00<\/td><td>-0.27<\/td><td>-1.28<\/td><td>0.24<\/td><td>0.30<\/td><td>1.09<\/td><td>0.41<\/td><td>0.06<\/td><\/tr><tr><td>-1.18<\/td><td>0.41<\/td><td>1.23<\/td><td>1.53<\/td><td>0.00<\/td><td>0.80<\/td><td>-0.28<\/td><td>-0.85<\/td><td>0.26<\/td><td>-0.57<\/td><\/tr><tr><td>-1.21<\/td><td>-1.08<\/td><td>0.65<\/td><td>-0.42<\/td><td>-1.28<\/td><td>0.17<\/td><td>-0.14<\/td><td>-0.23<\/td><td>2.23<\/td><td>-1.78<\/td><\/tr><tr><td>0.73<\/td><td>-2.26<\/td><td>0.24<\/td><td>1.05<\/td><td>-1.83<\/td><td>-0.54<\/td><td>-1.61<\/td><td>0.64<\/td><td>0.60<\/td><td>-1.34<\/td><\/tr><tr><td>-1.05<\/td><td>1.06<\/td><td>-0.55<\/td><td>-1.09<\/td><td>-0.42<\/td><td>1.03<\/td><td>0.90<\/td><td>-0.20<\/td><td>1.56<\/td><td>0.02<\/td><\/tr><tr><td>-0.47<\/td><td>0.27<\/td><td>0.41<\/td><td>1.60<\/td><td>-0.04<\/td><td>1.00<\/td><td>-1.78<\/td><td>0.75<\/td><td>0.53<\/td><td>-1.24<\/td><\/tr><tr><td>0.44<\/td><td>-1.53<\/td><td>0.35<\/td><td>-0.29<\/td><td>0.52<\/td><td>-1.09<\/td><td>-0.33<\/td><td>-0.15<\/td><td>-2.49<\/td><td>-0.86<\/td><\/tr><tr><td>-0.66<\/td><td>1.14<\/td><td>-0.76<\/td><td>-2.51<\/td><td>-0.95<\/td><td>0.83<\/td><td>-2.53<\/td><td>0.36<\/td><td>-0.06<\/td><td>-1.55<\/td><\/tr><tr><td>-0.52<\/td><td>-2.14<\/td><td>-2.55<\/td><td>-0.55<\/td><td>0.38<\/td><td>-0.63<\/td><td>-0.16<\/td><td>-0.25<\/td><td>-2.17<\/td><td>-2.17<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 5. Puntajes normales secuenciales correspondientes al ejemplo de tiempos entre llegadas de la Tabla 4.<\/figcaption><\/figure>\n\n\n\n<p>Cuando las mediciones est\u00e1n en control, los puntajes normales secuenciales se aproximan a una distribuci\u00f3n normal est\u00e1ndar con media 0 y desviaci\u00f3n est\u00e1ndar 1. As\u00ed, para hacer un monitoreo con un EWMA dise\u00f1ado para distribuciones normales, s\u00f3lo tenemos que considerar que la media y desviaci\u00f3n est\u00e1ndar son  los valores conocidos 0 y 1, correspondientemente.<\/p>\n\n\n\n<p>La aplicaci\u00f3n de este EWMA sobre los puntajes normales lo podemos ver en la Figura 4.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"384\" src=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-2.png\" alt=\"Aplicamos un EWMA que asume normalidad sobre los puntajes normales secuenciales para su an\u00e1lisis.\" class=\"wp-image-810\" srcset=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-2.png 576w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-2-300x200.png 300w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><figcaption class=\"wp-element-caption\">Figura 4. EWMA tradicional con <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-6d15187f06892f08071d31c06518bb3c_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#32;&#92;&#108;&#97;&#109;&#98;&#100;&#97;&#32;&#61;&#32;&#48;&#46;&#50;\" title=\"Rendered by QuickLaTeX.com\" height=\"12\" width=\"56\" style=\"vertical-align: 0px;\"\/> aplicado sobre los puntajes normales secuenciales.<\/figcaption><\/figure>\n\n\n\n<p>Observamos en la Figura 4 que efectivamente se detect\u00f3 un cambio en la tendencia media  al final de la secuencia, que es justo donde creamos un cambio.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Algunas Consideraciones<\/h2>\n\n\n\n<p>Los puntajes normales secuenciales ofrecen muchas ventajas, pues permiten ampliar la aplicaci\u00f3n de herramientas param\u00e9tricas, que asumen normalidad e independencia de las mediciones, para ser usadas como herramientas no param\u00e9tricas en situciones donde los datos no siguen una distribuci\u00f3n espec\u00edfica. Sin embargo, hay que tomar algunas precauciones.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Si conoces la distribuci\u00f3n de tus datos, es mejor usar el m\u00e9todo param\u00e9trico correspondiente. As\u00ed podr\u00e1s detectar mejor los cambios.<\/li>\n\n\n\n<li>Utiliza observaciones hist\u00f3ricas en las que conf\u00edes. Los rangos secuenciales se calculan ranqueando la observaci\u00f3n actual en relaci\u00f3n a observaciones anteriores. Si piensas que algunas observaciones anteriores no estaban en control, qu\u00edtalas, y ranquea utilizando s\u00f3lo aquellas en las que s\u00ed conf\u00edas.<\/li>\n\n\n\n<li>Cartas tipo EWMA y CUSUM son apropiadas para se usadas con puntajes normales secuenciales. Pocos datos iniciales son suficientes para detectar cambios. Estas cartas son recomendadas cuando tienes observaciones individuales.<\/li>\n\n\n\n<li>Cartas tipo Shewhart requieren de muchos datos iniciales para detectar r\u00e1pidamente un cambio en el proceso. Estas cartas son apropiadas cuando tienes observaciones en forma de subgrupos, donde la necesidad de muchos datos es menor.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Software<\/h2>\n\n\n\n<p>Puedes utilizar el paquete de R <a href=\"https:\/\/victortercero.com\/index.php\/2025\/08\/30\/r-package-snschart\/\" title=\"R Package: SNSchart\">SNSchart<\/a> como una herramienta para transformar tus datos en puntajes normales secuenciales . Espec\u00edficamente la funci\u00f3n <a href=\"https:\/\/www.rdocumentation.org\/packages\/SNSchart\/versions\/1.4.0\/topics\/SNS\" title=\"\">SNS()<\/a> te ser\u00e1 \u00fatil para transformar tus datos. Para ilustrar el uso del software, vemos un <a href=\"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/qre.1252?msockid=2e28cdf957c0666807f5dbdb5631675a\" title=\"\">caso de la industria de servicio bancario de Taiwan<\/a>.<\/p>\n\n\n\n<p>Los archivos que utilizaremos para este ejemplo son <a href=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/ICbank.csv\" title=\"ICbank\">ICbank.csv<\/a> y <a href=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/BankNew.csv\" title=\"BankNew\">BankNew.csv<\/a>. El primero se puestra en la Tabla 6 y el segundo en la Tabla 7. La Tabla 6 tiene datos de referencia en control, y la Tabla 7 muestra las observaciones que se desean evaluar.<\/p>\n\n\n\n<p>Como vemos en la Tabla 6, se midieron tiempos de servicio, en minutos, en 10 ventanillas, cada 2 d\u00edas durante 30 d\u00edas. Esto es, se obtuvieron 15 muestras de 10 observaciones cada una. La Tabla 7 contiene 10 muestras con los nuevos tiempos de servicio.<\/p>\n\n\n\n<figure class=\"wp-block-table alignwide is-style-regular\"><table class=\"has-fixed-layout\"><thead><tr><th>i<\/th><th>X\u2081<\/th><th>X\u2082<\/th><th>X\u2083<\/th><th>X\u2084<\/th><th>X\u2085<\/th><th>X\u2086<\/th><th>X\u2087<\/th><th>X\u2088<\/th><th>X\u2089<\/th><th>X\u2081\u2080<\/th><\/tr><\/thead><tbody><tr><td>1<\/td><td>0.88<\/td><td>0.78<\/td><td>5.06<\/td><td>5.45<\/td><td>2.93<\/td><td>6.11<\/td><td>11.59<\/td><td>1.20<\/td><td>0.89<\/td><td>3.21<\/td><\/tr><tr><td>2<\/td><td>3.82<\/td><td>13.40<\/td><td>5.16<\/td><td>3.20<\/td><td>32.27<\/td><td>3.68<\/td><td>3.14<\/td><td>1.58<\/td><td>2.72<\/td><td>7.71<\/td><\/tr><tr><td>3<\/td><td>1.40<\/td><td>3.89<\/td><td>10.88<\/td><td>30.85<\/td><td>0.54<\/td><td>8.40<\/td><td>5.10<\/td><td>2.63<\/td><td>9.17<\/td><td>3.94<\/td><\/tr><tr><td>4<\/td><td>16.80<\/td><td>8.77<\/td><td>8.36<\/td><td>3.55<\/td><td>7.76<\/td><td>1.81<\/td><td>1.11<\/td><td>5.91<\/td><td>8.26<\/td><td>7.19<\/td><\/tr><tr><td>5<\/td><td>0.24<\/td><td>9.57<\/td><td>0.66<\/td><td>1.15<\/td><td>2.34<\/td><td>0.57<\/td><td>8.94<\/td><td>5.54<\/td><td>11.69<\/td><td>6.58<\/td><\/tr><tr><td>6<\/td><td>4.21<\/td><td>8.73<\/td><td>11.44<\/td><td>2.89<\/td><td>19.49<\/td><td>1.20<\/td><td>8.01<\/td><td>6.19<\/td><td>7.48<\/td><td>0.07<\/td><\/tr><tr><td>7<\/td><td>15.08<\/td><td>7.43<\/td><td>4.31<\/td><td>6.14<\/td><td>10.37<\/td><td>2.33<\/td><td>1.97<\/td><td>1.08<\/td><td>4.27<\/td><td>14.08<\/td><\/tr><tr><td>8<\/td><td>13.89<\/td><td>0.30<\/td><td>3.21<\/td><td>11.32<\/td><td>9.90<\/td><td>4.39<\/td><td>10.50<\/td><td>1.70<\/td><td>10.74<\/td><td>1.46<\/td><\/tr><tr><td>9<\/td><td>0.03<\/td><td>12.76<\/td><td>2.41<\/td><td>7.41<\/td><td>1.67<\/td><td>3.70<\/td><td>4.31<\/td><td>2.45<\/td><td>3.57<\/td><td>3.33<\/td><\/tr><tr><td>10<\/td><td>12.89<\/td><td>17.96<\/td><td>2.78<\/td><td>3.21<\/td><td>1.12<\/td><td>1.26<\/td><td>4.23<\/td><td>6.18<\/td><td>2.33<\/td><td>6.92<\/td><\/tr><tr><td>11<\/td><td>7.71<\/td><td>1.05<\/td><td>1.11<\/td><td>0.22<\/td><td>3.53<\/td><td>0.81<\/td><td>0.41<\/td><td>3.73<\/td><td>0.08<\/td><td>2.55<\/td><\/tr><tr><td>12<\/td><td>5.81<\/td><td>6.29<\/td><td>3.46<\/td><td>2.66<\/td><td>4.02<\/td><td>10.95<\/td><td>1.59<\/td><td>5.58<\/td><td>0.55<\/td><td>4.10<\/td><\/tr><tr><td>13<\/td><td>2.89<\/td><td>1.61<\/td><td>1.30<\/td><td>2.58<\/td><td>18.65<\/td><td>10.77<\/td><td>18.23<\/td><td>3.13<\/td><td>3.38<\/td><td>6.34<\/td><\/tr><tr><td>14<\/td><td>1.36<\/td><td>1.92<\/td><td>0.12<\/td><td>11.08<\/td><td>8.85<\/td><td>3.99<\/td><td>4.32<\/td><td>1.71<\/td><td>1.77<\/td><td>1.94<\/td><\/tr><tr><td>15<\/td><td>21.52<\/td><td>0.63<\/td><td>8.54<\/td><td>3.37<\/td><td>6.94<\/td><td>3.44<\/td><td>3.37<\/td><td>6.37<\/td><td>1.28<\/td><td>12.83<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 6. Muestra en control de tiempos de servicio en minutos en 10 ventanillas bancarias, cada 2 d\u00edas durante 30 d\u00edas.<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-table alignwide\"><table class=\"has-fixed-layout\"><thead><tr><th>i<\/th><th>X\u2081<\/th><th>X\u2082<\/th><th>X\u2083<\/th><th>X\u2084<\/th><th>X\u2085<\/th><th>X\u2086<\/th><th>X\u2087<\/th><th>X\u2088<\/th><th>X\u2089<\/th><th>X\u2081\u2080<\/th><\/tr><\/thead><tbody><tr><td>16<\/td><td>3.54<\/td><td>0.01<\/td><td>1.33<\/td><td>7.27<\/td><td>5.52<\/td><td>0.09<\/td><td>1.84<\/td><td>1.04<\/td><td>2.91<\/td><td>0.63<\/td><\/tr><tr><td>17<\/td><td>0.86<\/td><td>1.61<\/td><td>1.15<\/td><td>0.96<\/td><td>0.54<\/td><td>3.05<\/td><td>4.11<\/td><td>0.63<\/td><td>2.37<\/td><td>0.05<\/td><\/tr><tr><td>18<\/td><td>1.45<\/td><td>0.19<\/td><td>4.18<\/td><td>0.18<\/td><td>0.02<\/td><td>0.70<\/td><td>0.80<\/td><td>0.97<\/td><td>3.60<\/td><td>2.94<\/td><\/tr><tr><td>19<\/td><td>1.37<\/td><td>0.14<\/td><td>1.54<\/td><td>1.58<\/td><td>0.45<\/td><td>0.61<\/td><td>0.74<\/td><td>1.74<\/td><td>3.92<\/td><td>4.82<\/td><\/tr><tr><td>20<\/td><td>3.80<\/td><td>2.46<\/td><td>0.06<\/td><td>1.80<\/td><td>3.25<\/td><td>2.13<\/td><td>2.22<\/td><td>1.37<\/td><td>2.13<\/td><td>0.25<\/td><\/tr><tr><td>21<\/td><td>1.59<\/td><td>3.88<\/td><td>0.39<\/td><td>0.54<\/td><td>1.58<\/td><td>1.70<\/td><td>0.48<\/td><td>1.25<\/td><td>6.83<\/td><td>0.31<\/td><\/tr><tr><td>22<\/td><td>5.01<\/td><td>1.85<\/td><td>3.10<\/td><td>1.00<\/td><td>0.09<\/td><td>1.16<\/td><td>2.69<\/td><td>2.79<\/td><td>1.84<\/td><td>0.62<\/td><\/tr><tr><td>23<\/td><td>4.96<\/td><td>0.55<\/td><td>1.43<\/td><td>4.12<\/td><td>4.06<\/td><td>1.42<\/td><td>1.43<\/td><td>0.86<\/td><td>0.67<\/td><td>0.13<\/td><\/tr><tr><td>24<\/td><td>1.08<\/td><td>0.65<\/td><td>0.91<\/td><td>0.82<\/td><td>2.88<\/td><td>1.76<\/td><td>2.87<\/td><td>1.97<\/td><td>0.62<\/td><td>1.76<\/td><\/tr><tr><td>25<\/td><td>4.56<\/td><td>0.44<\/td><td>5.61<\/td><td>2.79<\/td><td>1.73<\/td><td>2.46<\/td><td>0.53<\/td><td>1.73<\/td><td>7.02<\/td><td>2.13<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 7. Muestras a evaluar de tiempos de servicio en minutos en 10 ventanillas bancarias.<\/figcaption><\/figure>\n\n\n\n<p>Cargamos el paquete SNSchart instal\u00e1ndolo y leyendo la librer\u00eda correspondiente.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>install.packages(\"SNSchart\") #este paso se puede omitir si ya est\u00e1 instalado\nlibrary(SNSchart)<\/code><\/pre>\n\n\n\n<p>Luego procedemos a leer los datos de los archivos con las mediciones en control que usaremos como referencia y las mediciones que deseamos evaluar.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>phaseI = read.csv(\"ICbank.csv\") # mediciones en control\nphaseII = read.csv(\"BankNew.csv\") # mediciones a evaluar<\/code><\/pre>\n\n\n\n<p>Para hacer el an\u00e1lisis requerimos preparar tres vectores: (1) datos en control, (2)  datos a evaluar, y (3) \u00edndice de subgrupos.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Vector Y: Datos en control de Fase 1\nX &lt;- phaseII&#91;c(\"x1\",\"x2\",\"x3\",\"x4\",\"x5\",\"x6\",\"x7\",\"x8\",\"x9\",\"x10\")]\nY &lt;- phaseI&#91;c(\"x1\",\"x2\",\"x3\",\"x4\",\"x5\",\"x6\",\"x7\",\"x8\",\"x9\",\"x10\")]\nY &lt;- stack(Y)$values\n\n# Vector X: Datos a evaluar\ndata = t(X)\ndata = as.data.frame(data)\ndata = stack(data)\nX = data$values\n\n# Vector X.id: \u00cdndice que indica a qu\u00e9 subgrupo pertenece cada dato a evaluar\nX.id = as.numeric(data$ind)<\/code><\/pre>\n\n\n\n<p>Ya que tenemos estos tres vectores num\u00e9ricos, procedemos a evaluarlos con la funci\u00f3n SNS() y a guardar los resultados de este an\u00e1lisis en la variable s.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>s = SNS(\n  X = X, # vector num\u00e9rico con los datos a evaluar.\n  X.id = X.id, # \u00edndice num\u00e9rico indica subgrupo de cada valor de X.\n  Y = Y, # vector num\u00e9rico con los datos de fase I. Es opcional.\n  chart = \"Shewhart\", # carta de control a utilizar.\n  chart.par = c(3), # par\u00e1metro de la carta de control definida.\n  snsRaw = TRUE, # TRUE si queremos recuperar los datos transformados.\n  isFixed = FALSE, # FALSE para tomar en cuenta las nuevas mediciones X.\n  omit.id = NULL, # Si queremos que algunas obs. no se tomen en cuenta.\n  auto.omit.alarm = FALSE # FALSE toma en cuenta datos con se\u00f1al de alarma.\n)<\/code><\/pre>\n\n\n\n<p>Si todo sali\u00f3 bien puedes pedirle a R que dibuje una carta de control Shewhart con los puntajes normales obtenidos. Para esto ejecutamos la funci\u00f3n <code>plot(s)<\/code>. El resultado de esta gr\u00e1fica se observa en la Figura 5. En la gr\u00e1fica se observa el monitoreo del estad\u00edstico <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-7d84aea4697baeb9ecf712e21fb7ef6a_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#90;&#95;&#105;&#32;&#61;&#32;&#92;&#115;&#117;&#109;&#95;&#106;&#94;&#110;&#32;&#122;&#95;&#123;&#105;&#106;&#125;&#32;&#47;&#32;&#92;&#115;&#113;&#114;&#116;&#40;&#110;&#41;\" title=\"Rendered by QuickLaTeX.com\" height=\"24\" width=\"142\" style=\"vertical-align: -8px;\"\/>. Esto es, <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-bca60c332fbf7e8ab35c0821e95fce8d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#90;&#95;&#105;&#32;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"16\" style=\"vertical-align: -3px;\"\/> es la suma de los puntajes normales secuenciales en un subgrupo dividida entre la ra\u00edz del n\u00famero de observaciones por subgrupo. As\u00ed, <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/victortercero.com\/wp-content\/ql-cache\/quicklatex.com-bca60c332fbf7e8ab35c0821e95fce8d_l3.png\" class=\"ql-img-inline-formula quicklatex-auto-format\" alt=\"&#90;&#95;&#105;&#32;\" title=\"Rendered by QuickLaTeX.com\" height=\"15\" width=\"16\" style=\"vertical-align: -3px;\"\/> sigue una distribuci\u00f3n normal est\u00e1ndar, y los l\u00edmites de control para la carta Shewhart de 3 sigmas son -3 y 3, tal como se observa en la figura.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"831\" src=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-6-1024x831.png\" alt=\"Los puntajes normales secuenciales mostraron un cambio enla media de los datos al ser analizados con una carta Shewhart para medias.\" class=\"wp-image-838\" srcset=\"https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-6-1024x831.png 1024w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-6-300x244.png 300w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-6-768x623.png 768w, https:\/\/victortercero.com\/wp-content\/uploads\/2025\/09\/image-6.png 1052w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"wp-element-caption\">Figura 5. Carta de control Shewhart para puntajes normales obtenida del paquete SNSchart de R.<\/figcaption><\/figure>\n\n\n\n<p>Si s\u00f3lo queremos los datos transformados para analizarlos con el software de preferencia, estos los podemos obtener ejecutando <code>s$Zraw<\/code>. Esto mostrar\u00e1 un vector con los datos transformados que he tabulado en la Tabla 8.<\/p>\n\n\n\n<figure class=\"wp-block-table alignwide\"><table class=\"has-fixed-layout\"><thead><tr><th>i<\/th><th>z\u2081<\/th><th>z\u2082<\/th><th>z\u2083<\/th><th>z\u2084<\/th><th>z\u2085<\/th><th>z\u2086<\/th><th>z\u2087<\/th><th>z\u2088<\/th><th>z\u2089<\/th><th>z\u2081\u2080<\/th><\/tr><\/thead><tbody><tr><td>1.000<\/td><td>-0.100<\/td><td>-2.715<\/td><td>-0.883<\/td><td>0.540<\/td><td>0.269<\/td><td>-1.992<\/td><td>-0.638<\/td><td>-1.196<\/td><td>-0.338<\/td><td>-1.409<\/td><\/tr><tr><td>2.000<\/td><td>-1.201<\/td><td>-0.699<\/td><td>-0.963<\/td><td>-1.139<\/td><td>-1.488<\/td><td>-0.268<\/td><td>0.125<\/td><td>-1.340<\/td><td>-0.468<\/td><td>-2.156<\/td><\/tr><tr><td>3.000<\/td><td>-0.698<\/td><td>-1.708<\/td><td>0.192<\/td><td>-1.708<\/td><td>-2.375<\/td><td>-1.205<\/td><td>-1.176<\/td><td>-1.040<\/td><td>0.044<\/td><td>-0.207<\/td><\/tr><tr><td>4.000<\/td><td>-0.653<\/td><td>-1.675<\/td><td>-0.602<\/td><td>-0.594<\/td><td>-1.404<\/td><td>-1.269<\/td><td>-1.127<\/td><td>-0.490<\/td><td>0.167<\/td><td>0.353<\/td><\/tr><tr><td>5.000<\/td><td>0.171<\/td><td>-0.252<\/td><td>-1.985<\/td><td>-0.404<\/td><td>-0.013<\/td><td>-0.334<\/td><td>-0.334<\/td><td>-0.622<\/td><td>-0.334<\/td><td>-1.471<\/td><\/tr><tr><td>6.000<\/td><td>-0.514<\/td><td>0.239<\/td><td>-1.391<\/td><td>-1.299<\/td><td>-0.536<\/td><td>-0.458<\/td><td>-1.328<\/td><td>-0.718<\/td><td>0.702<\/td><td>-1.391<\/td><\/tr><tr><td>7.000<\/td><td>0.481<\/td><td>-0.314<\/td><td>-0.012<\/td><td>-0.854<\/td><td>-1.775<\/td><td>-0.724<\/td><td>-0.107<\/td><td>-0.083<\/td><td>-0.320<\/td><td>-1.125<\/td><\/tr><tr><td>8.000<\/td><td>0.509<\/td><td>-1.187<\/td><td>-0.548<\/td><td>0.396<\/td><td>0.371<\/td><td>-0.548<\/td><td>-0.548<\/td><td>-0.929<\/td><td>-1.030<\/td><td>-1.669<\/td><\/tr><tr><td>9.000<\/td><td>-0.770<\/td><td>-1.039<\/td><td>-0.852<\/td><td>-0.917<\/td><td>-0.022<\/td><td>-0.320<\/td><td>-0.022<\/td><td>-0.224<\/td><td>-1.107<\/td><td>-0.320<\/td><\/tr><tr><td>10.000<\/td><td>0.558<\/td><td>-1.346<\/td><td>0.684<\/td><td>0.005<\/td><td>-0.317<\/td><td>-0.078<\/td><td>-1.296<\/td><td>-0.317<\/td><td>0.867<\/td><td>-0.167<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Tabla 8. Puntajes normales secuenciales obtenidos  de la transformaci\u00f3n aplicada sobre las observaciones de la Tabla 7.<\/figcaption><\/figure>\n\n\n\n<p>Hay que hacer notar que al trabajar con subgrupos, las observaciones de cada subgrupo  se ranquean utilizando observaciones anteriores junto a la observaci\u00f3n ranqueada. Las observaciones dentro del mismo subgrupo no se ranquean entre s\u00ed. Esto facilita que cuando haya un subgrupo fuera de control, el cambio en este subgrupo se note m\u00e1s, al tiempo que la independencia entre las observaciones dentro del mismo subgrupo se mantiene.<\/p>\n\n\n\n<p>Las aplicaciones de los puntajes normales secuenciales son amplias, y muchas de estas aplicaciones las puedes encontrar automatizadas en el paquete SNSchart. Puedes explorar esta y otras aplicaciones en <a href=\"https:\/\/cran.r-project.org\/web\/packages\/SNSchart\/vignettes\/my-vignette.html\" title=\"\">esta liga<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>Los puntajes normales secuenciales representan un puente entre el mundo param\u00e9trico y el no param\u00e9trico. Gracias a esta transformaci\u00f3n:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Podemos analizar datos no normales con las herramientas de siempre.<\/li>\n\n\n\n<li>Se reducen los costos computacionales al no recalcular rangos completos.<\/li>\n\n\n\n<li>Se habilita el monitoreo eficiente de grandes flujos de datos en tiempo real, algo cada vez m\u00e1s com\u00fan en la era de la Industria 4.0.<\/li>\n<\/ul>\n\n\n\n<p>As\u00ed, los puntajes normales secuenciales son una estrategia moderna y poderosa para practicantes de la administraci\u00f3n cuatitativa de procesos e ingenieros que buscan monitorear procesos industriales con mayor robustez y flexibilidad.<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Los puntajes normales secuenciales, tambi\u00e9n conocidos como sequential normal scores, son una transformaci\u00f3n no param\u00e9trica que permite extender el uso de m\u00e9todos param\u00e9tricos de monitoreo estad\u00edstico para su uso no param\u00e9trico. Es decir, cuando tus datos no siguen una distribuci\u00f3n normal o alguna otra requerida. Transformaciones param\u00e9tricas tradicionales pueden generar errores de modelaci\u00f3n que logras [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":805,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[17,18],"tags":[],"class_list":["post-800","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articulosdivugacion","category-control"],"blocksy_meta":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/posts\/800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/comments?post=800"}],"version-history":[{"count":44,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/posts\/800\/revisions"}],"predecessor-version":[{"id":869,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/posts\/800\/revisions\/869"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/media\/805"}],"wp:attachment":[{"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/media?parent=800"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/categories?post=800"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/victortercero.com\/index.php\/wp-json\/wp\/v2\/tags?post=800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}