Télécharger les données :
donnees<-read.csv2("https://sjaubert.github.io/SPCR/diameter.csv",header = T)
Examinons si tout c’est bien passé :
is.numeric(donnees$diameter)
## [1] TRUE
Par souci de simplicité, baptisons diameter_butee notre vecteur de données :
diameter_butee<-donnees$diameter
Petit aperçu de ces 30 premiers relevés (6X5)
hist(diameter_butee)
Entrons manuellement les 4 échantillons suivants :
dd<-c(11.91,11.92,11.95,11.94,11.96,11.96,11.94,11.95,
11.97,11.94,11.97,11.96,11.96,11.95,11.94,12.01,
12.04,12.03,11.96,11.99)
Puis on concatène les données :
diameter<-c(diameter_butee,dd)
library(qcc) #chargement de la librairie QCC
## Package 'qcc' version 2.7
## Type 'citation("qcc")' for citing this R package in publications.
mydata<-qcc.groups(diameter,rep(1:10,each=5))
mydata
## [,1] [,2] [,3] [,4] [,5]
## 1 11.87 11.86 11.84 11.88 11.87
## 2 11.87 11.85 11.86 11.84 11.89
## 3 11.91 11.90 11.86 11.88 11.87
## 4 11.89 11.91 11.89 11.88 11.92
## 5 11.91 11.92 11.93 11.89 11.90
## 6 11.85 11.91 11.92 11.93 11.90
## 7 11.91 11.92 11.95 11.94 11.96
## 8 11.96 11.94 11.95 11.97 11.94
## 9 11.97 11.96 11.96 11.95 11.94
## 10 12.01 12.04 12.03 11.96 11.99
Pour des infos supplémentaires sur le package QCC : https://cran.r-project.org/web/packages/qcc/vignettes/qcc_a_quick_tour.html
Faisons notre première carte de contrôle celle des Xbar :
q1<-qcc(data = mydata,type = "xbar")
On constate 6 points hors contrôle au début et à la fin…
Regardons la carte R :
q2<-qcc(data = mydata,type="R")
La dispersion semble assez bien maitrisée
Vérifions si les données sont distribuées normalement
qqnorm(diameter);qqline(diameter,col="red",lwd=2)
Un test pour appuyer cette évaluation visuelle est toujours préférable :
shapiro.test(diameter)
##
## Shapiro-Wilk normality test
##
## data: diameter
## W = 0.96638, p-value = 0.1643
Avec un p-value > 10% il est raisonnable d’accepter l’hypothèse de normalité ou tout du moins nous la rejettons pas…
Faire à présent une étude capabilité est raisonnable :
process.capability(q1,spec.limits = c(11.85,12),breaks = 10)
##
## Process Capability Analysis
##
## Call:
## process.capability(object = q1, spec.limits = c(11.85, 12), breaks = 10)
##
## Number of obs = 50 Target = 11.93
## Center = 11.92 LSL = 11.85
## StdDev = 0.02107 USL = 12
##
## Capability indices:
##
## Value 2.5% 97.5%
## Cp 1.187 0.9523 1.421
## Cp_l 1.060 0.8677 1.253
## Cp_u 1.313 1.0817 1.545
## Cp_k 1.060 0.8308 1.289
## Cpm 1.109 0.8793 1.339
##
## Exp<LSL 0.074% Obs<LSL 4%
## Exp>USL 0% Obs>USL 6%
Avec un \(C_{p}=1.19\) le processus est tout juste acceptable le \(C_{pk}=1.06\) est par contre trop limite, un décentrage se fait sentir.