我通常使用gl()
为一组随机变量生成“相等”数量的因子水平。例如,要在2
中为60
随机变量生成x
因子级别,请使用以下内容:
x = rnorm(n = 60)
groups = gl( 2, length(x)/2 ) ## My Factor Levels
但是,上面,我不允许为40
中的第一个40
元素生成x
个因子级别,并为最后一个生成20
个因子级别20
中的x
元素(即 “不平衡”(不相等)因素级别 )。
在基础R中,是否有灵活的功能或策略来产生“不平衡”(不相等)因子水平?
答案 0 :(得分:3)
您可以将rep
与向量值times
参数一起使用:
x <- factor( rep(1:3, times=c(5,10,2)) )
x
这给出了:
[1] 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3
Levels: 1 2 3