\(Y_{ijk} = \mu + \tau_{i} + \beta_{j} + \gamma _{k} + (\tau\beta)_{ij} + (\tau\gamma)_{ik} + (\beta\gamma)_{jk} + (\tau\beta\gamma)_{ijk} + \epsilon_{ijkl}\)
\(H_{0} : (\tau\beta\gamma)_{ijk} = 0\)
\(H_{a} : (\tau\beta\gamma)_{ijk} \neq 0\)
csvData<-read.csv("https://raw.githubusercontent.com/tmatis12/datafiles/main/PowderProduction.csv")
print(csvData)
## Ammonium StirRate Temperature Density
## 1 2 100 8 14.68
## 2 2 100 8 15.18
## 3 30 100 8 15.12
## 4 30 100 8 17.48
## 5 2 150 8 7.54
## 6 2 150 8 6.66
## 7 30 150 8 12.46
## 8 30 150 8 12.62
## 9 2 100 40 10.95
## 10 2 100 40 17.68
## 11 30 100 40 12.65
## 12 30 100 40 15.96
## 13 2 150 40 8.03
## 14 2 150 40 8.84
## 15 30 150 40 14.96
## 16 30 150 40 14.96
library(GAD)
csvData$Ammonium <- as.fixed(csvData$Ammonium)
csvData$StirRate <- as.fixed(csvData$StirRate)
csvData$Temperature <- as.fixed(csvData$Temperature)
str(csvData)
## 'data.frame': 16 obs. of 4 variables:
## $ Ammonium : Factor w/ 2 levels "2","30": 1 1 2 2 1 1 2 2 1 1 ...
## $ StirRate : Factor w/ 2 levels "100","150": 1 1 1 1 2 2 2 2 1 1 ...
## $ Temperature: Factor w/ 2 levels "8","40": 1 1 1 1 1 1 1 1 2 2 ...
## $ Density : num 14.68 15.18 15.12 17.48 7.54 ...
model<-aov(csvData$Density~csvData$Ammonium+csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$Ammonium*csvData$Temperature+csvData$StirRate*csvData$Temperature+csvData$Ammonium*csvData$StirRate*csvData$Temperature)
GAD::gad(model)
## $anova
## Analysis of Variance Table
##
## Response: csvData$Density
## Df Sum Sq Mean Sq F value
## csvData$Ammonium 1 44.389 44.389 11.1803
## csvData$StirRate 1 70.686 70.686 17.8037
## csvData$Temperature 1 0.328 0.328 0.0826
## csvData$Ammonium:csvData$StirRate 1 28.117 28.117 7.0817
## csvData$Ammonium:csvData$Temperature 1 0.022 0.022 0.0055
## csvData$StirRate:csvData$Temperature 1 10.128 10.128 2.5510
## csvData$Ammonium:csvData$StirRate:csvData$Temperature 1 1.519 1.519 0.3826
## Residuals 8 31.762 3.970
## Pr(>F)
## csvData$Ammonium 0.010175 *
## csvData$StirRate 0.002918 **
## csvData$Temperature 0.781170
## csvData$Ammonium:csvData$StirRate 0.028754 *
## csvData$Ammonium:csvData$Temperature 0.942808
## csvData$StirRate:csvData$Temperature 0.148890
## csvData$Ammonium:csvData$StirRate:csvData$Temperature 0.553412
## Residuals
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comment: The value of p(0.5534) for the three factor interaction is greater than 0.05, hence we fail to reject the null hypothesis. We conclude that there is no three factor interaction.
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$Ammonium*csvData$Temperature+csvData$StirRate*csvData$Temperature)
GAD::gad(model)
## $anova
## Analysis of Variance Table
##
## Response: csvData$Density
## Df Sum Sq Mean Sq F value Pr(>F)
## csvData$Ammonium 1 44.389 44.389 12.0037 0.007109 **
## csvData$StirRate 1 70.686 70.686 19.1150 0.001792 **
## csvData$Temperature 1 0.328 0.328 0.0886 0.772681
## csvData$Ammonium:csvData$StirRate 1 28.117 28.117 7.6033 0.022206 *
## csvData$Ammonium:csvData$Temperature 1 0.022 0.022 0.0059 0.940538
## csvData$StirRate:csvData$Temperature 1 10.128 10.128 2.7389 0.132317
## Residuals 9 33.281 3.698
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comment:
The p-value ammonium and temperature (0.9405) is more than 0.05, so we fail to reject the null hypothesis. We conclude that there is no interaction between Ammonium and Temperature.
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$StirRate*csvData$Temperature)
GAD::gad(model)
## $anova
## Analysis of Variance Table
##
## Response: csvData$Density
## Df Sum Sq Mean Sq F value Pr(>F)
## csvData$Ammonium 1 44.389 44.389 13.3287 0.0044560 **
## csvData$StirRate 1 70.686 70.686 21.2250 0.0009696 ***
## csvData$Temperature 1 0.328 0.328 0.0984 0.7601850
## csvData$Ammonium:csvData$StirRate 1 28.117 28.117 8.4426 0.0156821 *
## csvData$StirRate:csvData$Temperature 1 10.128 10.128 3.0412 0.1117751
## Residuals 10 33.303 3.330
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comment:
The p value for stir rate and temperature (0.111) is more than 0.05 , hence we fail to reject Null hypothesis. We conclude that there is no interaction between Stir Rate and Temperature.
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate)
GAD::gad(model)
## $anova
## Analysis of Variance Table
##
## Response: csvData$Density
## Df Sum Sq Mean Sq F value Pr(>F)
## csvData$Ammonium 1 44.389 44.389 11.2425 0.006443 **
## csvData$StirRate 1 70.686 70.686 17.9028 0.001410 **
## csvData$Temperature 1 0.328 0.328 0.0830 0.778613
## csvData$Ammonium:csvData$StirRate 1 28.117 28.117 7.1211 0.021851 *
## Residuals 11 43.431 3.948
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Comment:
The p value for ammonium and stir rate(0.111) is more than 0.05 , hence we fail to reject Null hypothesis and claim there is no interaction between Stir Rate and Temperature.
interaction.plot(csvData$StirRate,csvData$Ammonium,csvData$Density,col=c("blue","red"))
Position<-c(1,2)
Temperature<-c(800,825,850)
df<-expand.grid (Position,Temperature)
df1<-rbind(df,df,df)
colnames(df1)<-c("Position","Temperature")
df1
## Position Temperature
## 1 1 800
## 2 2 800
## 3 1 825
## 4 2 825
## 5 1 850
## 6 2 850
## 7 1 800
## 8 2 800
## 9 1 825
## 10 2 825
## 11 1 850
## 12 2 850
## 13 1 800
## 14 2 800
## 15 1 825
## 16 2 825
## 17 1 850
## 18 2 850
#response
response<-c(570,528,1063,988,565,526,565,547,1080,1026,510,538,583,521,1043,1004,590,532)
df1$response<-response
df1$Position <- as.fixed(Position)
df1$Temperature <- as.fixed(Temperature)
model_1 <- aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_1)
## $anova
## Analysis of Variance Table
##
## Response: response
## Df Sum Sq Mean Sq F value Pr(>F)
## Position 1 7160 7160 15.998 0.001762 **
## Temperature 2 249510 124755 278.748 8.753e-11 ***
## Position:Temperature 2 696650 348325 778.283 2.005e-13 ***
## Residuals 12 5371 448
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
df1$Position <-as.random(Position)
df1$Temperature<-as.random(Temperature)
model_2 <-aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_2)
## $anova
## Analysis of Variance Table
##
## Response: response
## Df Sum Sq Mean Sq F value Pr(>F)
## Position 1 7160 7160 0.0206 0.8991
## Temperature 2 249510 124755 0.3582 0.7363
## Position:Temperature 2 696650 348325 778.2834 2.005e-13 ***
## Residuals 12 5371 448
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
df1$Position <- as.fixed(Position)
df1$Temperature <- as.random(Temperature)
model_3 <- aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_3)
## $anova
## Analysis of Variance Table
##
## Response: response
## Df Sum Sq Mean Sq F value Pr(>F)
## Position 1 7160 7160 0.0206 0.8991
## Temperature 2 249510 124755 278.7476 8.753e-11 ***
## Position:Temperature 2 696650 348325 778.2834 2.005e-13 ***
## Residuals 12 5371 448
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
There was no significant two factor interactional in all the three different effect models
The p-value for temperature remains the same in part a and part c but increases in part b when temperature is treated as random. A similar pattern is observed for position where the p-value is comparable in parts b and c (random in b, fixed in c), but smaller in part a.
Temperature in all cases was significant both in the case of random or fixed effect.
#Reading data
csvData<-read.csv("https://raw.githubusercontent.com/tmatis12/datafiles/main/PowderProduction.csv")
print(csvData)
library(GAD)
csvData$Ammonium <- as.fixed(csvData$Ammonium)
csvData$StirRate <- as.fixed(csvData$StirRate)
csvData$Temperature <- as.fixed(csvData$Temperature)
str(csvData)
#Three factor interaction:
model<-aov(csvData$Density~csvData$Ammonium+csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$Ammonium*csvData$Temperature+csvData$StirRate*csvData$Temperature+csvData$Ammonium*csvData$StirRate*csvData$Temperature)
GAD::gad(model)
#Testing for Ammonium and Temperature
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$Ammonium*csvData$Temperature+csvData$StirRate*csvData$Temperature)
GAD::gad(model)
#Testing for Stir rate and Temperature
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate+csvData$StirRate*csvData$Temperature)
GAD::gad(model)
#Testing for Ammonium and Stir rate
model<-aov(csvData$Density~csvData$Ammonium+csvData$StirRate+csvData$Temperature+csvData$Ammonium*csvData$StirRate)
GAD::gad(model)
#Interaction Graph for Ammonium and Stir rate:
interaction.plot(csvData$StirRate,csvData$Ammonium,csvData$Density,col=c("blue","red"))
Question 2:
#Input data
Position<-c(1,2)
Temperature<-c(800,825,850)
df<-expand.grid (Position,Temperature)
df1<-rbind(df,df,df)
colnames(df1)<-c("Position","Temperature")
df1
#response
response<-c(570,528,1063,988,565,526,565,547,1080,1026,510,538,583,521,1043,1004,590,532)
df1$response<-response
#Both fixed effects:
df1$Position <- as.fixed(Position)
df1$Temperature <- as.fixed(Temperature)
model_1 <- aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_1)
#Both random effects:
df1$Position <-as.random(Position)
df1$Temperature<-as.random(Temperature)
model_2 <-aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_2)
#Mixed effects:
df1$Position <- as.fixed(Position)
df1$Temperature <- as.random(Temperature)
model_3 <- aov(response~Position+Temperature+Position*Temperature,data=df1)
GAD::gad(model_3)