excel随机抽取_简单随机抽样及其进阶分层随机抽样⽅法展⽰
⼀、分享简单随机抽样的⼏种⽅法
1、抽样分析⼯具抽样
2、INDIRECT+RANDBETWEEN函数抽样
3、RAND+排序抽样
4、SAS抽样
⼆、分层抽样⽅法
1、Python分层抽样
2、SAS分层抽样
3、EXCEL函数及功能分层抽样
简单随机抽样的⼏种⽅法
⽅法⼀
抽样分析⼯具抽样
如果你的EXCEL尚未安装数据分析,采⽤以下⽅法调出“数据分析”⼯具:
EXCEL2013版:
“⽂件”——“选项”——“加载项”——“分析⼯具库”,然后确定,即可添加在EXCEL⼯具栏。
EXCEL2007版:
“选项”——“加载项”——“分析⼯具库”进⾏加载即可。
(以2013版为例:)
举例:某企业有客户10万,现需要通过电话回访的⽅式进⾏客户满意度调查,了解客户对企业产品和服务的评价。如果直接对10万客户进⾏回访,时间成本、⼈员成本都难以估算,经过专家论证、客户认可,现决定从10万名客户中抽取1000名作为调查样本进⾏回访,为了保证结果的客观性,采取随机抽样的⽅式进⾏抽查。
1、打开需要抽样的EXCEL表格
2、选“数据”——“数据分析”——“抽样”
3、根据要求选:
“输⼊区域”的数据
抽样⽅法选“随机”
输出选项选“输出区域”(以此为例)
4、结果如图:(从10万名客户⾥随机抽取1000名客户进⾏调研,抽取结果如下)
然后通过计算可得出抽样的情况,从⽽可以推断出总体情况。
备注:
1、抽样样本越多,所得的结果,越接近真实结果;
2、⽤抽样分析⼯具抽样,只能对数值型数据进⾏抽样,对于其他类型的抽样⽆法完成。
⽅法⼆
INDIRECT+RANDBETWEEN函数抽样
举例:某企业有客户2万,现需要通过电话回访的⽅式进⾏客户满意度调查,了解客户对企业产品和服务的评价。如果直接对2万客户进⾏回访,时间成本、⼈员成本都难以估算,经过专家论证、客户认可,现决定从2万名客户中抽取100名作为调查样本进⾏回访,为了保证结果的客观性,采取随机抽样的⽅式进⾏抽查。
1、 打开需要抽样的EXCEL表格
2、在EXCEL的空⽩区域写⼊,暂以E列为例,在E2写⼊
=INDIRECT("a"&RANDBETWEEN(2,20001)),下拉100个单元格,结果如下:
3、然后通过计算可得出抽样的情况,从⽽可以推断出总体情况。
⽅法三
⽤RAND函数加排序功能
举例:某企业有客户10万,现需要通过电话回访的⽅式进⾏客户满意度调查,了解客户对企业产品和服务的评价。如果直接对10万客户进⾏回访,时间成本、⼈员成本都难以估算,经过专家论证、客户认可,现决定从10万名客户中抽取1000名作为调查样本进⾏回访,为了保证结果的客观性,采取随机抽样的⽅式进⾏抽查。
1、在B1中输⼊“=RAND()”,向下填充⾄C1000000
2、选择C列,点击⼯具栏中的数据→升序,在弹出的窗⼝中选择“扩展选定区域”,再点击“排序”按钮
3、此时A列中的序号已经打乱了,直接看A2⾄A10001中的值就可以达成“随机抽查10个客户”的要求了,然后通过计算可得出抽样的情况,从⽽可以推断出总体情况。
⽅法四
利⽤SAS软件进⾏随机抽样
PROC SURVEYSELECT⼀般形式:
Proc surveyselect data=
Method=/*抽样⽅法选择*/
out=
n=(or samprate=抽样⽐例)
seed=n;
strata ;
id ;
excel表格随机函数run;
1.从数据集text.bclass中不重复随机抽取20条记录,保留所有变量
proc surveyselect data=text.bclass out=srsa1 method = srs
sampsize =20;
run;
2. 从数据集text.bclass中重复随机抽取20条记录,保留所有变量
proc surveyselect data=text.bclass out=srsa1 method= urs
sampsize =20;
run;
3. 随机抽取总体的10%作为样本,保留所有变量
proc surveyselect data=sashelp.prdsale out=srs415 method = srs
samprate = 0.1;
run;
简单随机抽样进阶——分层抽样⽅法
⽅法⼀
利⽤Python进⾏分层抽样
import pandas as pd
df = pd.read_excel(r"地址及名称.xlsx")
data = pd.DataFrame(df)
gbr = upby("分层变量")
tdict={"变量1":1500,"变量2":1500,"变量3":1500,"变量4":1500,"变量5":1500,"变量6":1500,"变量7":1500}/*分层变量,及每个变量需要抽取的数量 */
def sampling(group,tdict):
name = group.name
n = tdict[name]
return group.sample(n=n)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。