失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示

excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示

时间:2022-02-19 09:33:18

相关推荐

excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示

一、分享简单随机抽样的几种方法

1、抽样分析工具抽样

2、INDIRECT+RANDBETWEEN函数抽样

3、RAND+排序抽样

4、SAS抽样

二、分层抽样方法

1、Python分层抽样

2、SAS分层抽样

3、EXCEL函数及功能分层抽样

简单随机抽样的几种方法

方法一

抽样分析工具抽样

如果你的EXCEL尚未安装数据分析,采用以下方法调出“数据分析”工具:

EXCEL版:

“文件”——“选项”——“加载项”——“分析工具库”,然后确定,即可添加在EXCEL工具栏。

EXCEL版:

“选项”——“加载项”——“分析工具库”进行加载即可。

(以版为例:)

举例:某企业有客户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 ;

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 = data.groupby("分层变量")

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)

resut = data.groupby("分层变量",group_keys=False).apply(sampl

ing,tdict)

resut.to_excel(r"输入地址及名称.xlsx")

方法二

利用SAS软件进行随机抽样

1、手工设置抽样比例或者抽样数

proc sort data=test1;

by 分层变量;

run;/*先用分层变量对总体样本进行排序*/

proc surveyselect data=test1 out=results3 method=srs

samprate=(0.1,0.3,0.5,0.2);/*根据分层情况设置每一层要抽取的比例*/

strata 分层变量;

run;/*根据分层变量不等比例从总体中抽取样本*/

proc surveyselect data=test1 out=results3 method=srs

sampsize=(30,20,50,40);/*根据分层情况设置每一层要抽取的样本数*/

strata 分层变量;

run;

2、根据抽样表进行不等比例抽样

proc sort data=test1;

by 分层变量;

run;/*先用分层变量对总体样本进行排序*/

proc surveyselect data=test1 out=results3 method=SRS

samprate=samp_table;/*通过抽样比例数据集进行抽样,samp_table数据集中要包括分层变量,以及每一分层对应的抽样比例或者数量,如果按比例抽样变量必须用_rate_来命名抽样比例,如果是按数量抽样必须用_nsize_来命名抽样数量*/

strata 分层变量;

run;

方法三

利用excel函数及相关功能进行分层随机抽样

1、利用rand()函数,添加辅助列随机

2、去除rand()函数公式,升序、降序排列都可以

3、利用countif(A$2$:A2,A2)添加辅助列,并去除公式

4、将每个类型需要抽取的数量放到任意区域

5、利用Excel中数据-高级功能进行随机抽取

作者:渠道研究部冯乙

Python方法:胡扬指导

SAS方法:杨家辉指导

点击在看,了解更多精彩内容

如果觉得《excel随机抽取_简单随机抽样及其进阶分层随机抽样方法展示》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。