现在位置: 首页 > R 教程 > 正文

R gl() 函数 - 生成因子水平

R 语言实例 R 语言实例

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)

执行以上代码输出结果为:

[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 语言实例 R 语言实例