R gl() 函数 - 生成因子水平
R gl() 函数用于快速生成一个因子(generate levels)。
gl() 在实验设计中非常有用,可以快速创建分组标签。
gl() 函数语法格式如下:
gl(n, k, length = n*k, labels = seq_len(n), ordered = FALSE)
参数说明:
n 水平的数量(分多少组)。
k 每个水平连续重复的次数。
length 输出因子的总长度(可选)。
labels 水平的名称标签。
实例
# 3 种处理,每种重复 4 次
treatments <- gl(3, 4, labels = c("对照组", "药物A", "药物B"))
print("实验分组:")
print(treatments)
# 与 rep 对比
# rep(each = 4) 是 gl(3, 4) 的等效写法
print("rep 等效写法:")
print(rep(c("对照组", "药物A", "药物B"), each = 4))
# 交替模式(k=1)
groups <- gl(3, 1, length = 12, labels = c("A", "B", "C"))
print("交替模式:")
print(groups)
treatments <- gl(3, 4, labels = c("对照组", "药物A", "药物B"))
print("实验分组:")
print(treatments)
# 与 rep 对比
# rep(each = 4) 是 gl(3, 4) 的等效写法
print("rep 等效写法:")
print(rep(c("对照组", "药物A", "药物B"), each = 4))
# 交替模式(k=1)
groups <- gl(3, 1, length = 12, labels = c("A", "B", "C"))
print("交替模式:")
print(groups)
执行以上代码输出结果为:
[1] "实验分组:" [1] 对照组 对照组 对照组 对照组 药物A 药物A 药物A [8] 药物A 药物B 药物B 药物B 药物B Levels: 对照组 药物A 药物B [1] "rep 等效写法:" [1] "对照组" "对照组" "对照组" "对照组" [5] "药物A" "药物A" "药物A" "药物A" [9] "药物B" "药物B" "药物B" "药物B" [1] "交替模式:" [1] A B C A B C A B C A B C Levels: A B C

R 语言实例