Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Modulerwasp_Two Factor ANOVA.wasp
Title produced by softwareTwo-Way ANOVA
Date of computationFri, 03 May 2024 18:58:02 +0200
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2024/May/03/t1714755494sgzmrd8dsji31rl.htm/, Retrieved Sat, 25 Apr 2026 07:02:52 +0200
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=, Retrieved Sat, 25 Apr 2026 07:02:52 +0200
QR Codes:

Original text written by user:555
IsPrivate?No (this computation is public)
User-defined keywords555
Estimated Impact0
Dataseries X:
99.2	96.7	101.0
99.0	98.1	100.1
100.0	100.0	100.0
111.6	104.9	90.6
122.2	104.9	86.5
117.6	109.5	89.7
121.1	110.8	90.6
136.0	112.3	82.8
154.2	109.3	70.1
153.6	105.3	65.4
158.5	101.7	61.3
140.6	95.4	62.5
136.2	96.4	63.6
168.0	97.6	52.6
154.3	102.4	59.7
149.0	101.6	59.5
165.5	103.8	61.3




Summary of computational transaction
Raw Input view raw input (R code)
Raw Outputview raw output of R engine
Computing time0 seconds
R ServerBig Analytics Cloud Computing Center
R Engine error message
Error in if (intercept == FALSE) (lmxdf <- lm(Response ~ Treatment_A *  : 
  missing value where TRUE/FALSE needed
Execution halted

\begin{tabular}{lllllllll}
\hline
Summary of computational transaction \tabularnewline
Raw Input view raw input (R code)  \tabularnewline
Raw Outputview raw output of R engine  \tabularnewline
Computing time0 seconds \tabularnewline
R ServerBig Analytics Cloud Computing Center \tabularnewline
R Engine error message & 
Error in if (intercept == FALSE) (lmxdf <- lm(Response ~ Treatment_A *  : 
  missing value where TRUE/FALSE needed
Execution halted
\tabularnewline \hline \end{tabular} %Source: https://freestatistics.org/blog/index.php?pk=&T=0

[TABLE]
[ROW]
Summary of computational transaction[/C][/ROW] [ROW]Raw Input[/C] view raw input (R code) [/C][/ROW] [ROW]Raw Output[/C]view raw output of R engine [/C][/ROW] [ROW]Computing time[/C]0 seconds[/C][/ROW] [ROW]R Server[/C]Big Analytics Cloud Computing Center[/C][/ROW] [ROW]R Engine error message[/C][C]
Error in if (intercept == FALSE) (lmxdf <- lm(Response ~ Treatment_A *  : 
  missing value where TRUE/FALSE needed
Execution halted
[/C][/ROW] [/TABLE] Source: https://freestatistics.org/blog/index.php?pk=&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=&T=0

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Summary of computational transaction
Raw Input view raw input (R code)
Raw Outputview raw output of R engine
Computing time0 seconds
R ServerBig Analytics Cloud Computing Center
R Engine error message
Error in if (intercept == FALSE) (lmxdf <- lm(Response ~ Treatment_A *  : 
  missing value where TRUE/FALSE needed
Execution halted



Parameters (Session):
Parameters (R input):
par1 = 1 ; par2 = 2 ; par3 = 3 ; par4 = 1 ;
R code (references can be found in the software module):
par4 &lt;- '1'
par3 &lt;- '3'
par2 &lt;- '2'
par1 &lt;- '1'
cat1 &lt;- as.numeric(par1) #
cat2&lt;- as.numeric(par2) #
cat3 &lt;- as.numeric(par3)
intercept&lt;-as.logical(par4)
x &lt;- t(x)
x1&lt;-as.numeric(x[,cat1])
f1&lt;-as.character(x[,cat2])
f2 &lt;- as.character(x[,cat3])
xdf&lt;-data.frame(x1,f1, f2)
(V1&lt;-dimnames(y)[[1]][cat1])
(V2&lt;-dimnames(y)[[1]][cat2])
(V3 &lt;-dimnames(y)[[1]][cat3])
names(xdf)&lt;-c('Response', 'Treatment_A', 'Treatment_B')
if(intercept == FALSE) (lmxdf&lt;-lm(Response ~ Treatment_A * Treatment_B- 1, data = xdf) ) else (lmxdf&lt;-lm(Response ~ Treatment_A * Treatment_B, data = xdf) )
(aov.xdf&lt;-aov(lmxdf) )
(anova.xdf&lt;-anova(lmxdf) )
load(file='createtable')
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'ANOVA Model', length(lmxdf$coefficients)+1,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a, lmxdf$call['formula'],length(lmxdf$coefficients)+1,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a, 'means',,TRUE)
for(i in 1:length(lmxdf$coefficients)){
a&lt;-table.element(a, round(lmxdf$coefficients[i], digits=3),,FALSE)
}
a&lt;-table.row.end(a)
a&lt;-table.end(a)
table.save(a,file='mytable.tab')
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'ANOVA Statistics', 5+1,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a, ' ',,TRUE)
a&lt;-table.element(a, 'Df',,FALSE)
a&lt;-table.element(a, 'Sum Sq',,FALSE)
a&lt;-table.element(a, 'Mean Sq',,FALSE)
a&lt;-table.element(a, 'F value',,FALSE)
a&lt;-table.element(a, 'Pr(&gt;F)',,FALSE)
a&lt;-table.row.end(a)
for(i in 1 : length(rownames(anova.xdf))-1){
a&lt;-table.row.start(a)
a&lt;-table.element(a,rownames(anova.xdf)[i] ,,TRUE)
a&lt;-table.element(a, anova.xdf$Df[1],,FALSE)
a&lt;-table.element(a, round(anova.xdf$'Sum Sq'[i], digits=3),,FALSE)
a&lt;-table.element(a, round(anova.xdf$'Mean Sq'[i], digits=3),,FALSE)
a&lt;-table.element(a, round(anova.xdf$'F value'[i], digits=3),,FALSE)
a&lt;-table.element(a, round(anova.xdf$'Pr(&gt;F)'[i], digits=3),,FALSE)
a&lt;-table.row.end(a)
}
a&lt;-table.row.start(a)
a&lt;-table.element(a, 'Residuals',,TRUE)
a&lt;-table.element(a, anova.xdf$'Df'[i+1],,FALSE)
a&lt;-table.element(a, round(anova.xdf$'Sum Sq'[i+1], digits=3),,FALSE)
a&lt;-table.element(a, round(anova.xdf$'Mean Sq'[i+1], digits=3),,FALSE)
a&lt;-table.element(a, ' ',,FALSE)
a&lt;-table.element(a, ' ',,FALSE)
a&lt;-table.row.end(a)
a&lt;-table.end(a)
table.save(a,file='mytable1.tab')
bitmap(file='anovaplot.png')
boxplot(Response ~ Treatment_A + Treatment_B, data=xdf, xlab=V2, ylab=V1, main='Boxplots of ANOVA Groups')
dev.off()
bitmap(file='designplot.png')
xdf2 &lt;- xdf # to preserve xdf make copy for function
names(xdf2) &lt;- c(V1, V2, V3)
plot.design(xdf2, main='Design Plot of Group Means')
dev.off()
bitmap(file='interactionplot.png')
interaction.plot(xdf$Treatment_A, xdf$Treatment_B, xdf$Response, xlab=V2, ylab=V1, trace.label=V3, main='Possible Interactions Between Anova Groups')
dev.off()
if(intercept==TRUE){
thsd&lt;-TukeyHSD(aov.xdf)
names(thsd) &lt;- c(V2, V3, paste(V2, ':', V3, sep=''))
bitmap(file='TukeyHSDPlot.png')
layout(matrix(c(1,2,3,3), 2,2))
plot(thsd, las=1)
dev.off()
}
if(intercept==TRUE){
ntables&lt;-length(names(thsd))
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'Tukey Honest Significant Difference Comparisons', 5,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a, ' ', 1, TRUE)
for(i in 1:4){
a&lt;-table.element(a,colnames(thsd[[1]])[i], 1, TRUE)
}
a&lt;-table.row.end(a)
for(nt in 1:ntables){
for(i in 1:length(rownames(thsd[[nt]]))){
a&lt;-table.row.start(a)
a&lt;-table.element(a,rownames(thsd[[nt]])[i], 1, TRUE)
for(j in 1:4){
a&lt;-table.element(a,round(thsd[[nt]][i,j], digits=3), 1, FALSE)
}
a&lt;-table.row.end(a)
}
} # end nt
a&lt;-table.end(a)
table.save(a,file='hsdtable.tab')
}#end if hsd tables
if(intercept==FALSE){
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'TukeyHSD Message', 1,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'Must Include Intercept to use Tukey Test ', 1, FALSE)
a&lt;-table.row.end(a)
a&lt;-table.end(a)
table.save(a,file='mytable2.tab')
}
library(car)
lt.lmxdf&lt;-leveneTest(lmxdf)
a&lt;-table.start()
a&lt;-table.row.start(a)
a&lt;-table.element(a,'Levenes Test for Homogeneity of Variance', 4,TRUE)
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a,' ', 1, TRUE)
for (i in 1:3){
a&lt;-table.element(a,names(lt.lmxdf)[i], 1, FALSE)
}
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a,'Group', 1, TRUE)
for (i in 1:3){
a&lt;-table.element(a,round(lt.lmxdf[[i]][1], digits=3), 1, FALSE)
}
a&lt;-table.row.end(a)
a&lt;-table.row.start(a)
a&lt;-table.element(a,' ', 1, TRUE)
a&lt;-table.element(a,lt.lmxdf[[1]][2], 1, FALSE)
a&lt;-table.element(a,' ', 1, FALSE)
a&lt;-table.element(a,' ', 1, FALSE)
a&lt;-table.row.end(a)
a&lt;-table.end(a)
table.save(a,file='mytable3.tab')