是否可以在不更换的情况下进行采样?类似这样的东西(它不像预期的那样工作):
x <- rle(c(1,1,1,1,1,2,2))
result <- sample(x, size=2, replace=F)
print(inverse.rle(result))
# prints [1] 1 1 1 1 1 1 2 2
# a desired result [1] 1 1
字符串
换句话说,我希望有以下工作,但与运行长度编码:
set.seed(2)
x <- c(1,1,1,1,1,2,2)
result <- sample(x, size=2, replace=F)
print(result)
# prints [1] 1 2
型
2条答案
按热度按时间pbpqsu0x1#
这里有一个函数来做这件事。你可能需要一些大的数字来证明这一点,而不仅仅是显式地扩展rle。
字符串
rsaldnfx2#
实际上,如果使用S4Vectors函数Rle()而不是rle(),则采样可以开箱即用。
字符串