Valeurs P de régression dans une colonne en fonction des valeurs d'autres colonnesSalut... J'essaie de trouver une alternative à la règle de Nelson numéro 3 (6 points croissants ou décroissants) qui utilise une régression basée sur un certain nombre de points successifs, une valeur alpha et une valeur p résultante pour m'aider à signaler quand un signal est assez grand pour surmonter le bruit. Ceci est utilisé pour les types d'usure d'outil des cartes de contrôle.
Supposons que j'ai un ensemble de données qui ressemble à ci-dessous (pour plus de simplicité) où ;
X est ma variable indépendante et Y est la dépendante. Je voudrais calculer la valeur P de la régression de points successifs (N = 3 dans l'exemple ci-dessous) pour m'aider à comprendre quand il y a un signal suffisamment grand pour surmonter le bruit en régression.
Évidemment, les p-values sont dans le tableau ci-dessous pour être exemplaires
Je reconnais que N devra probablement être plus grand (bien que cela dépende bien sûr de la taille du signal).
Puis-je créer un script qui fera cela afin que je puisse jouer avec N et alpha pour m'aider à comprendre quand la régression est différente de la valeur nulle ? Je ne me soucie pas vraiment de l'annotation sur la carte de contrôle si je peux avoir la valeur p dans le tableau.
Merci
| X | Oui | Valeur P | Pente | Taille du sous-groupe |
| 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 |
| dix | 17 | 0,05 | | 3 |
Tableau de donnéesScriptRe : Valeurs P de régression dans une colonne en fonction des valeurs d'autres colonnesJe suis intéressé par les fonctions intégrées pour créer ces nouvelles lignes car je préférerais ne pas utiliser de script. J'ai recherché votre solution pour Moving Slope (copié ci-dessous) mais la solution est bien au-dessus de ma tête. Je suis trop vieux (et trop stupide) et je ne peux plus faire ce genre de calculs matriciels où vous multipliez par des matrices transposées puis prenez des inverses ... honnêtement, je ne peux pas suivre cela. Ainsi, pourquoi je trouverais un script plus utile car ils ont tendance à être plus linéaires. 
Mais merci.
If( Row() > 2,
x = J( Row(), 1, 1 ) || :MX[Index( 1, Row() )]`;
y = :MY[Index( 1, Row() )]`;
(Inv( x` * x ) * x` * y)[2];
)
Re : Valeurs P de régression dans une colonne en fonction des valeurs d'autres colonnesAjouter à @txnelson , il y a eu une discussion précédente sur la configuration d'une formule de colonne pour calculer une pente mobile. Je vous suggère de le trouver et de le lire pour un arrière-plan utile. La base de cette solution est la fonction suggérée par Jim ici. Vous pouvez développer la formule pour entraîner un changement d'état de ligne qui est ensuite utilisé par la carte de contrôle pour identifier où le signal d'un changement a pu se produire.
Il existe de nombreuses fonctionnalités intégrées qui peuvent être utilisées pour mettre en œuvre cette idée, et elles ne nécessitent pas toutes un script.
Re : Valeurs P de régression dans une colonne en fonction des valeurs d'autres colonnesIl serait simple de parcourir une table de données, de construire ses matrices x et y, puis d'effectuer une régression à l'aide de la fonction Linear Regression().La décision des valeurs à placer dans les 2 matrices serait l'élément à varier.
Voici l'exemple tiré du Scripting Index, pour la fonction 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>