簡單随機(jī)抽樣及其進階分層随機(jī)抽樣方法展示

2020/6/8 16:24:50

一(yī)、分享簡單随機(jī)抽樣的(de)幾種方法

1、抽樣分析工具抽樣

2、INDIRECT+RANDBETWEEN函數抽樣

3、RAND+排序抽樣

4、SAS抽樣

二、分層抽樣方法

1、Python分層抽樣

2、SAS分層抽樣

3、EXCEL函數及功能分層抽樣


簡單随機(jī)抽樣的(de)幾種方法

方法一(yī):抽樣分析工具抽樣

如(rú)果你的(de)EXCEL尚未安裝數據分析,采用以下方法調出“數據分析”工具:

EXCEL2013版:

“文件”——“選項”——“加載項”——“分析工具庫”,然後确定,即可(kě)添加在EXCEL工具欄。

EXCEL2007版:

“選項”——“加載項”——“分析工具庫”進行(xíng)加載即可(kě)。

640 (1).png

(以2013版為(wèi)例:)

舉例:某企業有(yǒu)客戶10萬,現需要通過電話回訪的(de)方式進行(xíng)客戶滿意度調查,了解客戶對企業産品和(hé)服務的(de)評價。如(rú)果直接對10萬客戶進行(xíng)回訪,時間成本、人員成本都難以估算,經過專家論證、客戶認可(kě),現決定從10萬名客戶中抽取1000名作為(wèi)調查樣本進行(xíng)回訪,為(wèi)了保證結果的(de)客觀性,采取随機(jī)抽樣的(de)方式進行(xíng)抽查。

1、打開需要抽樣的(de)EXCEL表格

2、選“數據”——“數據分析”——“抽樣”

1.png

3、根據要求選:

  • “輸入區域”的(de)數據

  • 抽樣方法選“随機(jī)”

  • 輸出選項選“輸出區域”(以此為(wèi)例)

2.png

4、結果如(rú)圖:(從10萬名客戶裏随機(jī)抽取1000名客戶進行(xíng)調研,抽取結果如(rú)下)

3.png

然後通過計算可(kě)得出抽樣的(de)情況,從而可(kě)以推斷出總體情況。

備注:

1、抽樣樣本越多,所得的(de)結果,越接近真實結果;

2、用抽樣分析工具抽樣,隻能對數值型數據進行(xíng)抽樣,對于其他類型的(de)抽樣無法完成。

方法二:INDIRECT+RANDBETWEEN函數抽樣

舉例:某企業有(yǒu)客戶2萬,現需要通過電話回訪的(de)方式進行(xíng)客戶滿意度調查,了解客戶對企業産品和(hé)服務的(de)評價。如(rú)果直接對2萬客戶進行(xíng)回訪,時間成本、人員成本都難以估算,經過專家論證、客戶認可(kě),現決定從2萬名客戶中抽取100名作為(wèi)調查樣本進行(xíng)回訪,為(wèi)了保證結果的(de)客觀性,采取随機(jī)抽樣的(de)方式進行(xíng)抽查。

1、 打開需要抽樣的(de)EXCEL表格

2、在EXCEL的(de)空白區域寫入,暫以E列為(wèi)例,在E2寫入

=INDIRECT("a"&RANDBETWEEN(2,20001)),下拉100個單元格,結果如(rú)下:

2.1.png

3、然後通過計算可(kě)得出抽樣的(de)情況,從而可(kě)以推斷出總體情況。


方法三:用RAND函數加排序功能

舉例:某企業有(yǒu)客戶10萬,現需要通過電話回訪的(de)方式進行(xíng)客戶滿意度調查,了解客戶對企業産品和(hé)服務的(de)評價。如(rú)果直接對10萬客戶進行(xíng)回訪,時間成本、人員成本都難以估算,經過專家論證、客戶認可(kě),現決定從10萬名客戶中抽取1000名作為(wèi)調查樣本進行(xíng)回訪,為(wèi)了保證結果的(de)客觀性,采取随機(jī)抽樣的(de)方式進行(xíng)抽查。

1、在B1中輸入“=RAND()”,向下填充至C1000000

3.14.png

2、 選擇C列,點擊工具欄中的(de)數據→升序,在彈出的(de)窗口中選擇“擴展選定區域”,再點擊“排序”按鈕

3、 此時A列中的(de)序号已經打亂了,直接看A2至A10001中的(de)值就可(kě)以達成“随機(jī)抽查10個客戶”的(de)要求了,然後通過計算可(kě)得出抽樣的(de)情況,從而可(kě)以推斷出總體情況。


方法四:利用SAS軟件進行(xíng)随機(jī)抽樣

PROC SURVEYSELECT一(yī)般形式:

Proc surveyselect data=<原數據集>

      Method=<srs|sys|urs|  /*抽樣方法選擇*/

      out=<抽取樣本存放的(de)數據集>

n=<抽取數量>(or samprate=抽樣比例)

seed=n;

       strata <指定分層變量>;

        id <指定抽取的(de)樣本所保留的(de)源數據集變量>;

run;

1.從數據集text.bclass中不重複随機(jī)抽取20條記錄,保留所有(yǒu)變量

proc surveyselect data=text.bclass out=srsa1 method = srs

                sampsize =20;

     run;

2. 從數據集text.bclass中重複随機(jī)抽取20條記錄,保留所有(yǒu)變量

proc surveyselect data=text.bclass out=srsa1 method= urs

                sampsize =20;

     run;

3. 随機(jī)抽取總體的(de)10%作為(wèi)樣本,保留所有(yǒu)變量

proc surveyselect data=sashelp.prdsale out=srs415 method = srs

                samprate = 0.1;

     run;

簡單随機(jī)抽樣進階——分層抽樣方法

方法一(yī):利用Python進行(xíng)分層抽樣

import pandas as pd

df = pd.read_excel(r"地(dì)址及名稱.xlsx")

data = pd.DataFrame(df)

gbr = data.groupby("分層變量")

tdict={"變量1":1500,"變量2":1500,"變量3":1500,"變量4":1500,"變量5":1500,"變量6":1500,"變量7":1500}/*分層變量,及每個變量需要抽取的(de)數量 */

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"輸入地(dì)址及名稱.xlsx")

方法二:利用SAS軟件進行(xíng)随機(jī)抽樣

1、手工設置抽樣比例或者抽樣數

proc sort data=test1;

by 分層變量;

run;/*先用分層變量對總體樣本進行(xíng)排序*/

proc surveyselect  data=test1 out=results3 method=srs

 samprate=(0.1,0.3,0.5,0.2);/*根據分層情況設置每一(yī)層要抽取的(de)比例*/

strata 分層變量;

run;/*根據分層變量不等比例從總體中抽取樣本*/

proc surveyselect  data=test1 out=results3 method=srs

sampsize=(30,20,50,40);/*根據分層情況設置每一(yī)層要抽取的(de)樣本數*/

strata 分層變量;

run;            

2、根據抽樣表進行(xíng)不等比例抽樣

proc sort data=test1;

by 分層變量;

run;/*先用分層變量對總體樣本進行(xíng)排序*/

proc surveyselect  data=test1 out=results3 method=SRS

samprate=samp_table;/*通過抽樣比例數據集進行(xíng)抽樣,samp_table數據集中要包括分層變量,以及每一(yī)分層對應的(de)抽樣比例或者數量,如(rú)果按比例抽樣變量必須用_rate_來命名抽樣比例,如(rú)果是按數量抽樣必須用_nsize_來命名抽樣數量*/

strata 分層變量;

run; 

方法三:利用excel函數及相關功能進行(xíng)分層随機(jī)抽樣

1、利用rand()函數,添加輔助列随機(jī)

640 (2).png

2、去(qù)除rand()函數公式,升序、降序排列都可(kě)以

640 (3).png

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

4、将每個類型需要抽取的(de)數量放到任意區域

5、利用Excel中數據-高(gāo)級功能進行(xíng)随機(jī)抽取

640 (4).png


作者:渠道(dào)研究部馮乙

Python方法:胡揚指導

SAS方法:楊家輝指導