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 ;
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随机抽取_简单随机抽样及其进阶分层随机抽样方法展示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手指滑板20个基础动作教学
- 下一篇: 微信名搞笑网名大全75个