Valores P de regresión en una columna basados en los valores de otras columnasHola... Estoy tratando de encontrar una alternativa a la Regla de Nelson número 3 (6 puntos crecientes o decrecientes) que usa una regresión basada en una cantidad de puntos sucesivos, un valor alfa y un valor p resultante para ayudarme a marcar cuándo una señal es lo suficientemente grande para superar el ruido. Esto se usaría para tipos de gráficos de control de desgaste de herramientas.
Supongamos que tengo un conjunto de datos que se ve a continuación (para simplificar) donde;
X es mi variable independiente y Y es la dependiente. Me gustaría calcular el valor P de la regresión de puntos sucesivos (N=3 en el ejemplo a continuación) para ayudarme a comprender cuándo hay una señal lo suficientemente grande como para superar el ruido en la regresión.
Obviamente, los valores p están en la siguiente tabla para ser ejemplares
Reconozco que es probable que N deba ser mayor (aunque, por supuesto, depende del tamaño de la señal).
¿Puedo crear una secuencia de comandos que haga esto para poder jugar con N y alfa para ayudarme a comprender cuándo la regresión es diferente a la nula? Realmente no me importa la anotación en el gráfico de control si puedo tener el valor p en la tabla.
Gracias
| X | Y | Valor P | Pendiente | Tamaño del subgrupo |
| 1 | 3 | | | |
| 2 | 6 | | | |
| 3 | 9 | 0.05 | | 3 |
| 4 | 12 | 0.05 | | 3 |
| 5 | 12 | 0.1 | | 3 |
| 6 | 12 | 0.54 | | 3 |
| 7 | 11 | 0.5 | | 3 |
| 8 | 13 | 0.1 | | 3 |
| 9 | 15 | 0.07 | | 3 |
| 10 | 17 | 0.05 | | 3 |
Tabla de datossecuencias de comandosRe: Valores P de regresión en una columna basados en los valores de otras columnasEstoy interesado en las funciones integradas para crear estos nuevas filas ya que preferiría no usar un script. Busqué su solución para Pendiente móvil (copiada a continuación), pero la solución está muy por encima de mi cabeza. Soy demasiado viejo (y demasiado estúpido) y ya no puedo hacer este tipo de matemáticas matriciales en las que multiplicas por matrices transpuestas y luego tomas inversas... honestamente, no puedo seguir esto. Por lo tanto, encontraría un script más útil, ya que tienden a ser más lineales. 
Pero gracias.
If( Row() > 2,
x = J( Row(), 1, 1 ) || :MX[Index( 1, Row() )]`;
y = :MY[Index( 1, Row() )]`;
(Inv( x` * x ) * x` * y)[2];
)
Re: Valores P de regresión en una columna basados en los valores de otras columnasAñadiendo a @txnelson , hubo una discusión anterior sobre la configuración de una fórmula de columna para calcular una pendiente móvil. Le sugiero que lo encuentre y lo lea para obtener información útil. La base para esa solución es la función que Jim sugirió aquí. Puede expandir la fórmula para generar un cambio de estado de fila que luego usa el gráfico de control para identificar dónde podría haberse producido la señal de un cambio.
Hay muchas funciones integradas que se pueden usar para implementar esta idea y no todas requieren un script.
Re: Valores P de regresión en una columna basados en los valores de otras columnasSería muy sencillo recorrer una tabla de datos, construir las matrices x e y y luego realizar una regresión, utilizando la función Linear Regression().La decisión de qué valores colocar en las 2 matrices sería el ítem a variar.
Aquí está el ejemplo tomado del índice de secuencias de comandos, para la función de regresión lineal ()
Names Default To Here( 1 );
/*Simple Linear Regression: y = intercept + beta * x + error*/
y = [3, 5, 7, 5];
X = [1, 2, 3, 4];
{Estimates, Std_Error, Diagnostics} =
Linear Regression( y, X, <<PRINTTOLOG></PRINTTOLOG>