2

背景:

我通常用来gl()为一组随机变量生成“相等”数量的因子水平。例如,要为 中的随机变量生成2因子水平,我使用以下命令:60x

x = rnorm(n = 60)
groups = gl( 2, length(x)/2 ) ## My Factor Levels

但在上面,不允许我40为 中的第一个40元素生成因子水平x,以及20为中的最后一个20元素生成因子水平x(即“不平衡”(不相等)因子水平)。

问题:

在基础 R 中,是否有灵活的函数或策略来产生“不平衡”(不等)因子水平?

4

1 回答 1

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
于 2017-06-02T16:06:02.027 回答