mrChart
Description
L'action `mrChart` (de l'ensemble `spc` pour Statistical Process ControlMéthode statistique de pilotage de la qualité consistant à surveiller un processus via des cartes de contrôle pour réduire la variabilité et garantir sa stabilité et sa conformité.) permet de générer des cartes de contrôle basées sur la médianeValeur centrale divisant une série de données ordonnées en deux groupes égaux (50 % au-dessus, 50 % en dessous). Contrairement à la moyenne, elle est robuste face aux valeurs aberrantes. et l'étendue (cartes MR) d'un processus. C'est l'outil rêvé pour surveiller la tendance centrale et la variabilité de vos sous-groupes (et vérifier rapidement que votre processus ne part pas en vrille !). Vous pouvez paramétrer la méthode d'estimation via des options avancées et extraire ou appliquer des personnalisées.
Paramètres Clés
| Nom du paramètre | Description |
|---|---|
| table | Paramètre requis. Spécifie la table CAS en entrée contenant vos données de processus. |
| processValue | Nom de la variable qui contient les mesures individuelles du processus que vous souhaitez analyser. |
| subgroupValue | Nom de la variable qui identifie l'appartenance à un sous-groupe (comme un lot, une date ou un identifiant d'équipe). |
| chartsTable | Spécifie le nom de la table CAS de sortie qui contiendra les données résumées des cartes (points tracés, limites, etc.). |
| medCentral | Définit la méthode d'estimation de la moyenne du processus. Les options sont 'AVGMEAN' (moyenne des moyennes), 'AVGMED' (moyenne des médianes, par défaut), ou 'MEDMED' (médiane des médianes). |
| primaryTests / secondaryTests | Permet d'activer des tests statistiques spécifiques (test1 à test8) pour repérer des causes spéciales de variation (ex: 9 points consécutifs d'un même côté). |
| outLimitsTable | Crée une table contenant les limites de contrôle calculées, très pratique pour les appliquer plus tard sur de nouvelles données via le paramètre 'limitsTable'. |
Préparation des données
Génération de données de contrôle qualité
Créons une table de mesures de pièces produites sur une ligne d'assemblage, divisée en 20 lots de 5 échantillons. On y insère un petit défaut au niveau du lot 15 pour s'amuser un peu.
| 1 | DATA mycas.production; |
| 2 | call streaminit(42); |
| 3 | DO Lot = 1 to 20; |
| 4 | DO Echantillon = 1 to 5; |
| 5 | Mesure = 100 + rand('Normal') * 2.5; |
| 6 | /* Introduction d'une anomalie sur le lot 15 */ |
| 7 | IF Lot = 15 THEN Mesure = Mesure + 6; |
| 8 | OUTPUT; |
| 9 | END; |
| 10 | END; |
| 11 | RUN; |
Exemples d'utilisation
Création d'une carte MR standard
Ce code analyse la variable 'Mesure' groupée par 'Lot'. Il calcule les limites de contrôle standards à 3 sigmas et enregistre les statistiques de la carte dans une table CAS.
| 1 | PROC CAS; |
| 2 | spc.mrChart / |
| 3 | TABLE={name="production"} |
| 4 | processValue="Mesure" |
| 5 | subgroupValue="Lot" |
| 6 | chartsTable={name="resultats_mr", replace=true}; |
| 7 | RUN; |
| 8 | QUIT; |
Résultat Attendu :
Analyse rigoureuse avec tests de causes spéciales
Ici, on sort l'artillerie lourde de qualiticien : on estime la tendance centrale avec la médiane des médianes (`MEDMED`), on lance les tests de règles Nelson (test1 pour les points hors limites, test2 pour 9 points consécutifs) et on sauvegarde à la fois les résumés et les limites de contrôle.
| 1 | PROC CAS; |
| 2 | spc.mrChart / |
| 3 | TABLE={name="production"} |
| 4 | processValue="Mesure" |
| 5 | subgroupValue="Lot" |
| 6 | medCentral="MEDMED" |
| 7 | primaryTests={test1=true, test2=true} |
| 8 | secondaryTests={test1=true} |
| 9 | outLimitsTable={name="limites_sauvegardees", replace=true} |
| 10 | chartsTable={name="analyse_detaillee", replace=true}; |
| 11 | RUN; |
| 12 | QUIT; |