R语言 分层抽样 strata (三),每层抽取80%

该博客介绍了如何使用R语言进行分层抽样,以鸢尾花数据集为例,展示了每层抽取80%样本的具体操作过程。


##本例子使用的是R自带的数据集iris

irisData=iris 

##重命名列

names(irisData)=c("萼长","萼宽","瓣长","瓣宽","种类") 

##处理后的数据格式如下所示: 
 >head(irisData, 3)      
萼长 萼宽 瓣长 瓣宽 种类 
1    5.1      3.5      1.4      0.2      setosa 
2    4.9      3.0      1.4      0.2      setosa
3    4.7      3.2      1.3      0.2      setosa 
## 划分训练集与测试集用分层抽样函数Strata,在3类型鸢尾花数据中各抽取80%作为训练集,保存在变量TrainingSet中;
## 余下的20%作为测试集,保存在变量TestSet中。过程如下所示: 
##加载 
library(sampling) 
nLevel=round(nrow(irisData)*0.8/3,-1)  
trainingSamp = strata(irisData,stratanames="种类",size = rep(nLevel, 3), method="srswor") 

#以Species变量作为分层变量 
# 分层抽取训练样本,每层nPerLevel个 
>trainingSet = getdata(irisData, trainingSamp$ID_unit)  
# 训练集 
>testSet = getdata(irisData,-trainingSamp$ID_unit)






评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值