?>
L'action `cChart` de l'action set `spc` (Statistical Process Control) est utilisée pour créer des cartes de contrôle 'c'. Ces cartes sont un outil fondamental en maîtrise statistique des procédés pour surveiller le nombre de non-conformités (ou défauts) dans des unités d'inspection de taille constante. Par exemple, on peut l'utiliser pour suivre le nombre de défauts de peinture sur des portières de voiture, où chaque portière est une 'unité'. L'objectif est de détecter les dérives ou les instabilités dans le processus en identifiant les points qui sortent des limites de contrôle statistique, signalant ainsi une 'cause spéciale' qui mérite une investigation.
| Parameter | Beschreibung |
|---|---|
| allN | Si TRUE, inclut tous les sous-groupes, même si leur taille d'échantillon ne correspond pas à la taille nominale spécifiée par `limitN`. Par défaut (FALSE), seuls les sous-groupes avec la taille nominale sont inclus. |
| chartsTable | Spécifie la table de sortie CAS pour stocker le résumé des graphiques, incluant les statistiques de sous-groupe et les limites de contrôle. |
| display | Permet de sélectionner les tables de résultats ODS à afficher côté client. |
| exChart | Si TRUE, ne génère un graphique de contrôle dans les résultats que si des exceptions (points hors contrôle) sont détectées. |
| groupByLimit | Supprime l'analyse si le nombre de groupes (défini par l'option `groupBy` de la table) dépasse la valeur spécifiée, afin d'éviter une charge de calcul excessive. |
| limitN | Spécifie une taille d'échantillon nominale pour le calcul des limites de contrôle. Utile lorsque les tailles de sous-groupes varient. |
| limitsTable | Spécifie une table CAS d'entrée contenant des limites de contrôle prédéfinies à appliquer au lieu de les calculer à partir des données. |
| no3SigmaCheck | Si TRUE, autorise l'exécution des tests de causes spéciales même si les limites de contrôle ne sont pas les limites standard de 3-sigma (définies par `sigmas=3`). |
| outLimitsTable | Spécifie la table de sortie CAS pour sauvegarder les limites de contrôle calculées par l'action. |
| outputTables | Liste les noms des tables de résultats à sauvegarder en tant que tables CAS sur le serveur. |
| primaryTests | Demande un ou plusieurs tests de causes spéciales (règles de Western Electric) pour la carte de contrôle principale. Les tests disponibles sont test1 à test8. |
| processName | Spécifie la variable dans la table d'entrée qui identifie le processus à analyser. |
| processValue | Spécifie la variable (obligatoire) contenant le nombre de non-conformités par sous-groupe. |
| sigmas | Spécifie la largeur des limites de contrôle en tant que multiple de l'erreur standard. La valeur par défaut est 3, correspondant aux limites de 3-sigma. |
| subgroupN | Spécifie la variable contenant la taille de l'échantillon pour chaque sous-groupe. Pertinent pour les cartes p, np, u et c lorsque la taille de l'unité d'inspection varie. |
| subgroupName | Spécifie la variable contenant les noms des sous-groupes. |
| subgroupValue | Spécifie la variable (obligatoire) qui identifie les sous-groupes individuels sur l'axe des abscisses. |
| table | Spécifie la table CAS d'entrée contenant les données du processus à analyser. |
| test2Run | Spécifie le nombre de points consécutifs à vérifier pour le Test 2 (points du même côté de la ligne centrale). La valeur par défaut est 9. |
| test3Run | Spécifie le nombre de points consécutifs à vérifier pour le Test 3 (points en tendance croissante ou décroissante). La valeur par défaut est 6. |
| testNStd | Si TRUE, active les tests de causes spéciales pour les sous-groupes avec des tailles d'échantillon variables. |
| testOverlap | Si TRUE, applique les tests de causes spéciales à des séquences de points qui se chevauchent. |
Cette table simule le nombre de défauts ('ndefects') trouvés dans 25 lots de production ('batch'). Chaque lot est considéré comme une unité d'inspection de taille constante.
data casuser.circuits;
do batch = 1 to 25;
ndefects = round(ranuni(1234)*5 + 8);
output;
end;
run;Cet exemple montre comment générer une carte de contrôle 'c' de base. On spécifie la table d'entrée, la variable contenant le nombre de défauts (`processValue`) et la variable identifiant les sous-groupes (`subgroupValue`).
| 1 | PROC CAS; |
| 2 | spc.cChart |
| 3 | TABLE={name='circuits'}, |
| 4 | processValue='ndefects', |
| 5 | subgroupValue='batch'; |
| 6 | RUN; |
| 7 | QUIT; |
Cet exemple applique les quatre premiers tests de causes spéciales (règles de Western Electric) pour détecter des motifs non aléatoires. Il montre également comment sauvegarder la table de résumé du graphique et la table des limites de contrôle dans la caslib `casuser` pour une utilisation ultérieure.
| 1 | PROC CAS; |
| 2 | spc.cChart |
| 3 | TABLE={name='circuits'}, |
| 4 | processValue='ndefects', |
| 5 | subgroupValue='batch', |
| 6 | primaryTests={test1=true, test2=true, test3=true, test4=true}, |
| 7 | chartsTable={name='cChartSummary', replace=true}, |
| 8 | outLimitsTable={name='cChartLimits', replace=true}; |
| 9 | RUN; |
| 10 | QUIT; |
Cet exemple utilise la table de limites (`cChartLimits`) générée précédemment pour appliquer des limites de contrôle fixes aux données. Il personnalise également les paramètres des tests : `sigmas` est réduit à 2.5 pour des limites plus serrées, et les longueurs de séquence pour les tests 2 et 3 sont modifiées.
| 1 | PROC CAS; |
| 2 | spc.cChart |
| 3 | TABLE={name='circuits'}, |
| 4 | processValue='ndefects', |
| 5 | subgroupValue='batch', |
| 6 | limitsTable={name='cChartLimits'}, |
| 7 | sigmas=2.5, |
| 8 | primaryTests={test2=true, test3=true}, |
| 9 | test2Run=8, |
| 10 | test3Run=5, |
| 11 | no3SigmaCheck=true; /* Requis car sigmas n'est pas 3 */ |
| 12 | RUN; |
| 13 | QUIT; |