如何使用“采样”包在 R 中创建分层样本?我的数据集有 355,000 个观察值。该代码可以正常工作到最后一行。下面是我编写的代码,但我总是收到以下消息:“sort.list(y) 中的错误:'x' 对于 'sort.list' 必须是原子的,你在列表上调用过 'sort' 吗?”
请不要将我指向 Stackoverflow 上的旧消息。我研究了它们,但无法使用它们。谢谢你。
## lpdata file has 355,000 observations
# Exclude Puerto Rico, Virgin Islands and Guam
sub.lpdata<-subset(lpdata,"STATE" != 'PR' | "STATE" != 'VI' | "STATE" != 'GU')
## Create a 10% sample, stratified by STATE
sort.lpdata<-sub.lpdata[order(sub.lpdata$STATE),]
tab.state<-data.frame(table(sort.lpdata$STATE))
size.strata<-as.vector(round(ceiling(tab.state$Freq)*0.1))
s<-strata(sort.lpdata,stratanames=sort.lpdata$STATE,size=size.strata,method="srswor")}