gl
Generate Factor Levels
Generate factors by specifying the pattern of their levels.
Usage
gl(n, k, length = n*k, labels = seq_len(n), ordered = FALSE)
Arguments
 n
 an integer giving the number of levels.
 k
 an integer giving the number of replications.
 length
 an integer giving the length of the result.
 labels
 an optional vector of labels for the resulting factor levels.
 ordered
 a logical indicating whether the result should be ordered or not.
Value

The result has levels from
1
to n
with each value
replicated in groups of length k
out to a total length of
length
.gl
is modelled on the GLIM function of the same name.
See Also
The underlying factor()
.
Examples
library(base)
## First control, then treatment:
gl(2, 8, labels = c("Control", "Treat"))
## 20 alternating 1s and 2s
gl(2, 1, 20)
## alternating pairs of 1s and 2s
gl(2, 2, 20)
Community examples
twzop
at
Jan 12, 2018
base
v3.4.3
## Generate a vector of (10) normal random variables with a mean of 0, (10) uniformed variables with mean of 0 and (10) normal ranfom variables with a mean of 1 x < c(rnorm(10), runif(10), rnorm(10, 1)) ## Generate a factor of (3) levels that repeat (10) times using gl() ## We select (3) for factor levels because x defined (3) different sets (that will be represented as the levels) of random variables in its definition g < gl(3, 10) ## Use split() to output the values of the three sections (levels) of x as a list using gl()'s factor split(x, g)