【发布时间】:2020-11-17 04:28:52
【问题描述】:
我有一个类似于
的数据框df <- data.frame(region=c("north","north","south","north","south","south"),
status=c("open","closed","closed","open","open","open"))
一个变量samplesize <- 2(另一个df中的一个变量,称为dataSamples)和另一个变量stratifyOn <- "region"。
我想按之前由 stratifyOn 函数设置的内容进行分组,以便我获得每个区域的 2 个主要集(样本大小)和 1 个辅助集。
我尝试的是
primarySamples <- df %>% group_by(stratifyOn) %>%
slice_head(n=dataSamples$samplesize)
我遇到的第一个错误是错误:必须按.data 中的变量分组。 * 未找到列strstratifyOn。
第二个错误是错误:n 必须是单个数字。因为 dataSamples 对每个区域观察都有一个样本大小。
是否可以(如果可以,如何)使用这些外部值,还是有更好的方法?
dataSamples 的精简版是
dataSamples <- data.frame(region=c("north","south"), samplesize=c(2, 1))
实际df中还有其他几个变量和观察值。样本量的值取决于用户决定分层的区域。
【问题讨论】: