Valori P di regressione in una colonna basati sui valori di altre colonneCIAO... Sto cercando di trovare un'alternativa alla regola Nelson numero 3 (aumento o diminuzione di 6 punti) che utilizzi una regressione basata su un numero di punti successivi un valore alfa e un valore p risultante per aiutarmi a segnalare quando un segnale è abbastanza grande da superare il rumore. Questo verrebbe utilizzato per i tipi di usura degli utensili delle carte di controllo.
Supponiamo di avere un set di dati simile al seguente (per semplicità) where;
X è la mia variabile indipendente e Y è la dipendente. Vorrei calcolare il valore P della regressione dei punti successivi (N=3 nell'esempio seguente) per aiutarmi a capire quando c'è un segnale abbastanza grande da superare il rumore nella regressione.
Ovviamente, i valori p sono nella tabella sottostante per essere esemplificativi
Riconosco che N dovrà probabilmente essere più grande (anche se, ovviamente, dipende dalla dimensione del segnale).
Posso creare uno script che lo faccia in modo da poter giocare con N e alpha per aiutarmi a capire quando la regressione è diversa dal null? Non mi interessa davvero l'annotazione sulla carta di controllo se posso avere il valore p nella tabella.
Grazie
| X | Y | Valore P | Pendenza | Dimensione del sottogruppo |
| 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 |
Tabella datiScriptingOggetto: valori P di regressione in una colonna basati sui valori di altre colonneSono interessato alle funzioni integrate per crearle nuove righe poiché preferirei non utilizzare uno script. Ho cercato la tua soluzione per Moving Slope (copiata sotto) ma la soluzione è molto sopra la mia testa. Sono troppo vecchio (e troppo stupido) e non posso più fare questo tipo di matematica matriciale in cui moltiplichi per matrici trasposte e poi prendi gli inversi ... onestamente, non riesco a seguirlo. Quindi, perché troverei uno script più utile in quanto tendono ad essere più lineari. 
Ma grazie.
If( Row() > 2,
x = J( Row(), 1, 1 ) || :MX[Index( 1, Row() )]`;
y = :MY[Index( 1, Row() )]`;
(Inv( x` * x ) * x` * y)[2];
)
Oggetto: valori P di regressione in una colonna basati sui valori di altre colonneAggiunta a @txnelson , c'è stata una discussione precedente sull'impostazione di una formula di colonna per calcolare una pendenza mobile. Ti suggerisco di trovarlo e leggerlo per uno sfondo utile. La base per quella soluzione è la funzione che Jim ha suggerito qui. È possibile espandere la formula per ottenere una modifica dello stato della riga che viene quindi utilizzata dal grafico di controllo per identificare dove potrebbe essersi verificato il segnale di una modifica.
Esistono molte funzionalità integrate che possono essere utilizzate per implementare questa idea e non tutte richiedono uno script.
Oggetto: valori P di regressione in una colonna basati sui valori di altre colonneSarebbe semplice scorrere una tabella di dati e costruire le proprie matrici x e y e quindi eseguire una regressione, utilizzando la funzione Regressione lineare().La decisione di quali valori inserire nelle 2 matrici sarebbe l'elemento da variare.
Ecco l'esempio tratto dallo Scripting Index, per la funzione Linear Regression()
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>