STAT 5303: Designing Experiments
Spring Semester 2018
Here is the syllabus.
Official University policies on many issues are available
Some good news and some bad news:
The bad news is that the textbook is out of print so it is not readily available from bookstores, although you may find a used copy somewhere.
The good news is that the author (Prof. Oehlert) has generously made the book available as a no-cost download. Go to
for links to the PDF file for the book itself and datafiles for examples and exercises from that book.
You can also buy a hard copy version of that PDF file from Paradigm Copies.
These handouts (written by Prof. Oehlert) demonstrate using R to work through examples; many are from the text but there are additional examples.
As you work through them, remember you want to see both
(1) how to get the computer to perform certain tasks for you, and
(2) why you want the computer to do those tasks.
In other words, you should learn something about the underlying statistical concepts in addition to learning how to use the computer.
Here is a handout with examples showing how to use R to perform randomization tests.
This R handout uses the resin lifetime data set (Example 3.2 in the text) to demonstrate analysis of a completely randomized design, and also discusses dose-response polynomial modeling.
Our analysis procedures depend on certain assumptions. Some violations of those assumptions are not too serious, but others can cause problems.
This handout discusses how you can detect problems and what you can do about them.
This handout shows how to use R to find power and sample size for the ANOVA F test.
This handout shows how to use R to analyze data from experiments where the treatments are combinations of factors at various levels.
R can also deal with two-series factorials.
Here is a random effects handout. The R command we will use for these models is lmer() (pronounced "elmer") which is part of the "lme4" package. We will also use some functions from the Stat5303 package to perform additional analyses after running lmer().
Here are data files for the calves and resistors examples discussed in the random effects handout.
Here is information about nesting and mixed effects in R and
here is a data file for the particle counts example discussed in this handout.
Here is information about
restricted mixed models in R and here is background information about REML.
Here is a data file for the cheese tasting example discussed in the restricted models handout.
Here is an example of a randomized complete block design in R.
We can analyze Latin square designs in R.
This handout also shows how to deal with an outlier in the data by using a dummy variable to effectively remove that observation from the dataset.
However, doing that also destroys balance, so we need to consider the order in which terms are entered in the model in R. Examples are presented in the handout.
Of course, there is a handout for balanced incomplete block designs.
Naturally, there is a handout for confounding in factorial designs.
Yes, R knows about split-plot and split-split-plot designs.
This handout also deals with repeated-measures designs.
Here are data files for the first (gum) and second (emul2) emulsion examples discussed in the handout.
A dataset for the other example (weeds) is in the oehlert library as emp16.7, or you can find it at
if you have not installed the oehlert package.
R knows about models with covariates.
R knows about fractional factorial designs.
Here is some information about how you can use Tukey's method to deal with
here is another version.
Here is a worked example from the book showing how to use R to look for Tukey's one-degree-of-freedom-transformable-nonadditivity.
Basic R information
We will use R.
You may download R for Macintosh, Windows, and Linux from the
R package Stat5303
We will use Prof. Oehlert's R package called Stat5303, which
adds some extra commands that we will need.
The current version of this package is here.
You will need to download and install two packages, but they will require several other packages, too, so it may take a while. Fortunately, you only need to do that once.
Then each time you start R you will need to use
to make the extra commands available in that R session.
Because typing in data is tiresome and can
be a source of errors, the data from the homework problems
and examples (from the text) are available as files that R can read.
There are a couple of ways to get data into R.
Individual data files
One approach is a collection of individual data files.
(These are plain text files, so you can also read them with an
editor and cut/paste what is needed into other programs too.)
These files are set up to use the read.table() command in R.
Data sets for examples are named exmpl6.3 for example 3 from chapter 6.
Data sets for exercises are named ex3.1 for chapter 3, exercise 1, and
data sets for problems are named pr3.3 for chapter 3, problem 3.
Here are dataset files for R that you can download.
So, for example---provided your machine is connected to the Internet---from within R you can use
resindata <- read.table("http://www.stat.umn.edu/~corbett/classes/5303/RDataFiles/exmpl3.2",header=TRUE)
to save the data for Example 2 from Chapter 3 as a data frame called "resindata".
You don't even have to type that in; just copy and paste and you're done.
When you are not connected to the Internet, you could use
resindata <- read.table(file="exmpl3.2",header=TRUE)
This would allow you to load data into R without an active Internet connection, but of course you have to already have downloaded the file to your machine.
Another way to get data into R is to load an R package with all the data.
Russ Lenth at the University of Iowa has also provided two R packages that
include the data sets from the book.
One package is for Mac (and Linux), the other is for Windows.
You can get these
Note that the data set names, variable names, and variable codings
in the oehlert data package and the direct-web-accessible data files may not be the same.
This is as much a list of what the project is not as it is a list of what it is.
- There is more information in the text---see chapter 20.
- The project involves a designed experiment, not an observational study or a survey.
- You need to clearly identify experimental units and treatments and, if appropriate, blocking factors and measurement units.
- Describe how you use randomization in your experiment.
- You should analyze the data using methods we have covered in this course, such as ANOVA for a continuous response.
- Remember that we've studied comparative experiments, so you probably want to examine differences between treatments.
- No human subjects, nor anything else that would require review board approval.
- You need to propose a question, plan an experiment to answer that question, perform that experiment, collect and analyze the data, and write a final report covering all of that.
- Remember to include in both the proposal and the final report enough background information so someone who is not trained in your area of expertise can understand what you're trying to do and why someone would want to do it.
- This has to be a new experiment; you cannot just take some old data from work you did before and reanalyze that.
- This is to be an actual experiment, and not just a computer simulation.
- The proposal is not like a contract, but it needs to be specific enough so I can tell tell if what you're planning fits within these guidelines.
Comments? Questions? Send me an e-mail note:
The views and opinions expressed in this page are strictly those
of the page author.
The contents of this page have not been reviewed or approved by the University of Minnesota.