Creem la matriu de disseny i hi afegim la resposta:
library(FrF2)
design = FrF2(nruns = 8, nfactors = 3,
factor.names = c("caudal", "intensidad", "velocidad"),
randomize = FALSE)
calidad = c(10.5, 26, 13.5, 19, 12, 25.5, 16, 21.5)
design = add.response(design, calidad)
Fem un Daniel plot, on hi identifiquem el cabdal i la interacció cabdal-intensitat com a importants.
DanielPlot(design)
Ajustem el model i mirem el gràfic de mitjanes estimades
library(emmeans)
mod = aov(calidad ~ caudal+caudal*intensidad, data = design)
emmip(mod, caudal ~ intensidad)
Com que l’objectiu és maximitzar la qualitat, volem que la intensitat sigui 230A (-1) i el cabdal 12 l/min (+1). Si volem continuar experimentant, podríem provar valors més baixos d’intensitat i més alts de cabdal.
Creem la matriu de disseny i hi afegim la resposta:
disseny = FrF2(nruns = 8, nfactors = 3, replications = 2, randomize = FALSE,
factor.names = c("P", "R", "T"))
duresa = c(35, 62, 28, 55, 49, 48, 34, 45, 18, 47, 31, 56, 26, 31, 39, 44)
disseny = add.response(design = disseny, response = duresa)
Aquí tenim dues rèpliques per condició experimental. Podem ajustar el model amb totes les interaccions i treure’n \(p\)-valors:
mod = aov(duresa ~ P*R*T, disseny)
summary(mod)
## Df Sum Sq Mean Sq F value Pr(>F)
## P 1 1024 1024.0 11.977 0.00856 **
## R 1 16 16.0 0.187 0.67674
## T 1 16 16.0 0.187 0.67674
## P:R 1 4 4.0 0.047 0.83417
## P:T 1 484 484.0 5.661 0.04460 *
## R:T 1 0 0.0 0.000 1.00000
## P:R:T 1 16 16.0 0.187 0.67674
## Residuals 8 684 85.5
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Si anem extraient variables amb el \(p\)-valor més gran una a una fent servir l’algorisme descrit a les transparències de classe, ens quedem amb un model amb P i P*T:
mod_final = aov(duresa ~ P + P*T, disseny)
emmip(mod_final, P ~ T)
Hi ha una interacció entre P i T: quan P és al seu nivell baix (-1), l’efecte de T és positiu, mentre que quan P és al seu nivell alt (+1), l’efecte de T és negatiu.
Ara refem l’anàlisi afegint-hi W, la setmana.
disseny = FrF2(nruns = 16, nfactors = 4,randomize = FALSE,
factor.names = c("P", "R", "T", "W"))
disseny = add.response(design = disseny, response = duresa)
Ara no tenim multiples rèpliques (\(r = 1\)). Fem un Daniel plot, doncs.
DanielPlot(disseny)
Ajustem el model amb les variables importants i fem un
emmip per entendre l’efecte de les variables:
mod = aov(duresa ~ P + W + R*W + P*T, disseny)
emmip(mod, P ~ W | T + R, facetlab = "label_both")
Vist el gràfic, recomanaria T = 1 i R = 1. En aquestes condicions, l’efecte de W, que té a veure amb la meteorologia, és mínim. A més, les mitjanes estimades no són ni massa grans ni massa petits, comparant-les amb les altres (que era el que volíem).
La part davantera d’un jersei cordat està formada per 2 meitats, i cadascuna d’elles està formada al seu torn pel que anomenem cos i tira. La tira és la zona on van allotjats els botons o els traus (segons el costat) i està teixida de manera que és més forta i consistent que el cos.
Tradicionalment, el cos i la tira es teixien per separat i després es cosien, però en l’actualitat hi ha màquines que teixeixen simultàniament, en una mateixa peça, el cos i la tira, amb l’avantatge que s’eliminen operacions en la confecció de la peça.
L’inconvenient és que en tenir la tira diferent tipus de punt, i estar teixida sota altres paràmetres, de vegades resulta ser més llarga o més curta que el cos, de manera que la peça resulta defectuosa.
Per determinar les condicions de teixit de la tira que aconsegueixen que la longitud del cos (LC) i de la tira (LT) siguin iguals, es realitza un disseny \(2^3\) amb els següents factors:
A: Tipus de tira: Interlock (–) i tubular (+)
B: Número d'agulles: 4 i 10
C: Graduació del punto (longitud de la malla a la part interior): 9,0 i 10,8
S'obtenen els següents resultats, en l'ordre estàndard de la matriu de disseny:
lc = c(67.8, 71.7, 67.6, 77.0, 62.2, 71.6, 71.7, 75.6)
lt = c(62.6, 66.8, 62.6, 71.7, 61.1, 66.8, 70.6, 70.6)
Temps que es triga en fer la peça (t, mm:ss): 9:18 9:18 9:17 9:18 12:40 12:39 12:39 12:39
Solució: Convertim els temps a segons
temps = c(9*60+18, 9*60+18, 9*60+17, 9*60+18,
12*60+40, 12*60+39, 12*60+39, 12*60+39)
És un disseny \(2^3\). Creem la
matriu de disseny amb FrF2 , afegim la resposta, i fem el
Daniel plot. L’únic efecte important és el de la graduació: el procés és
molt més lent quan la graduació és “gran”.
library(FrF2)
disseny = FrF2(nruns = 8, nfactors = 3,
factor.names = c("tipus", "agulla", "grad"),
randomize = FALSE)
dis_temps = add.response(disseny, temps)
DanielPlot(dis_temps)
Solució: La diferència LC-LT és una bona opció.
dif = lc-lt
Solució: Creem el disseny amb dif com a
resposta i mirem el Daniel plot. Identifiquem el tipus, la graduació i
la seva interacció com a importants.
dis_dif = add.response(disseny, dif)
DanielPlot(dis_dif)
Fem la taula ANOVA i veiem que tot és significatiu.
mod_dif = aov(dif ~ tipus + tipus*grad + grad, dis_dif)
summary(mod_dif)
## Df Sum Sq Mean Sq F value Pr(>F)
## tipus 1 7.22 7.22 240.7 0.000101 ***
## grad 1 8.82 8.82 294.0 6.79e-05 ***
## tipus:grad 1 7.22 7.22 240.7 0.000101 ***
## Residuals 4 0.12 0.03
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Mirem el gràfic d’efectes i la taula d’efectes estimats
library(emmeans)
emmip(mod_dif, tipus ~ grad)
emmeans(mod_dif, ~ grad*tipus)
## grad tipus emmean SE df lower.CL upper.CL
## -1 -1 5.1 0.122 4 4.76 5.44
## 1 -1 1.1 0.122 4 0.76 1.44
## -1 1 5.1 0.122 4 4.76 5.44
## 1 1 4.9 0.122 4 4.56 5.24
##
## Confidence level used: 0.95
Hi ha una clara interacció. L’efecte de la graduació depèn clarament del tipus.
Solució: Donat que la graduació és una variable numèrica, intentaria seguir pujant el seu valor per veure si trobem una diferència de 0. Fixaríem el tipus a “Interlock”.
Solució: No ho podem saber segur… Res no ens garanteix que, si seguim pujant la graduació, la diferència baixarà fins a 0. Donat l’efecte de la graduació sobre la resposta descrit a la primera part, sembla poc probable que trobem LT = LC amb un temps de teixit inferior a 10 minuts.