# Fractional Factorial Designs using FrF2

May 18, 2011
By

(This article was first published on Software for Exploratory Data Analysis and Statistical Modelling, and kindly contributed to R-bloggers)

The FrF2 package for R can be used to create regular and non-regular Fractional Factorial 2-level designs. It is reasonably straightforward to use.

First step is to install the package then make it available for use in the current session:

``` require(FrF2) ```

A basic call to the main functino FrF2 specifies the number of runs in the fractional factorial design (which needs to be a multiple of 2) and the number of factors. For example a three factor design would have a total of eight runs if it was a full factorial but if we wanted to go with four runs then we can generate the design like this:

``` > FrF2(4, 3) A B C 1 1 -1 -1 2 -1 1 -1 3 -1 -1 1 4 1 1 1 class=design, type= FrF2 ```

The default output labels the factors A, B, C and so on and the factor levels are -1 and +1 for the two levels of each factor. We can change the level names to low and high using the default.levels function argument:

``` > FrF2(4, 3, default.levels = c("low", "high")) A B C 1 high high high 2 low high low 3 high low low 4 low low high class=design, type= FrF2 ```

The factors can be specified as a list of names rather than the number of factors via the factor.names argument:

``` > FrF2(4, factor.names = c("One", "Two", "Three"), default.levels = c("low", "high")) One Two Three 1 low high low 2 high high high 3 low low high 4 high low low class=design, type= FrF2 ```

These are the basics and there are other features for greater control over the confounding between factors and their interactions that is introduced by using a fractional factorial design.

R-bloggers.com offers daily e-mail updates about R news and tutorials on topics such as: Data science, Big Data, R jobs, visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...