書名: Stata統計分析從入門到精通作者名: 楊維忠 張甜編著本章字數: 25字更新時間: 2023-09-15 18:21:08
第2章 描述性統計與圖形繪制
2.1 定距變量的描述性統計、正態性檢驗和數據轉換
在進行數據分析時,當研究者得到的數據量很小時,可以通過直接觀察原始數據來獲得所有的信息。但是,當得到的數據量很大時,就必須借助各種描述性指標來完成對數據的描述工作。用少量的描述性指標來概括大量的原始數據,對數據展開描述的統計分析方法被稱為描述性統計分析。變量的性質不同,Stata描述性分析處理的方式也不一樣。本節將要介紹的描述統計分析方法包括定距變量的描述性統計、正態性檢驗和數據轉換等。下面一一介紹這幾種方法的應用。
2.1.1 常用的描述性統計指標的基本概念
1.均值、中位數、眾數、百分位數
(1)均值
Stata中的均值指的是簡單算術平均數,計算公式為:

(2)中位數
中位數是將整個統計變量的各個變量值按大小順序排列,處在數列中間位置的那個變量值就是中位數。在數據未分組的情況下,將各變量值按大小順序排列后,首先確定中位數的位置,可用公式確定,n代表總體統計變量的項數;然后根據中點位置確定中位數。有兩種情況:當n為奇數項時,中位數就是位于中間位置的那個變量值;當n為偶數項時,中位數就是位于中間位置的兩個變量值的簡單算術平均數。
(3)眾數
眾數是某一變量出現次數最多的樣本觀測值。
(4)百分位數
如果將一組數據從小到大排序,并計算相應的累計百分位,則某一百分位所對應數據的值就稱為這一百分位的百分位數。例如處于10%位置的值稱為第10百分位數。最為常用的是四分位數,指的是將數據分為4等份,分別位于25%、50%和75%處的百分位數。百分位數適用于定序數據及更高級的數據,不能用于定類數據。百分位數的優點是不受極端值的影響。
2.方差、標準差、均值標準誤差
(1)方差、標準差
方差是總體統計變量中各個單位變量值與其算術平均數的離差平方的算術平均數,用2σ表示,方差的平方根就是標準差σ。與方差不同的是,標準差是具有量綱的,它與變量值的計量單位相同,其實際意義要比方差清楚。因此,在對社會經濟現象進行分析時,往往更多地使用標準差。
方差和標準差的計算公式為:


在正態分布中,68%的個案在均值的一倍標準差范圍內,95%的個案在均值的兩倍標準差范圍內。例如,如果一組數據服從正態分布,且均值為100,標準差為10,則68%的個案將處于90~110,95%的個案將處于80~120。
(2)均值標準誤差
一個容易與標準差混淆的統計量是均值標準誤差,均值標準誤差是樣本均值的標準差,是描述樣本均值和總體均值平均偏差程度的統計量,也是表示抽樣誤差大小的指標。
3.最大值、最小值、極差、變異系數
(1)最大值、最小值、極差
最大值即樣本數據中取值最大的數據,最小值即樣本數據中取值最小的數據。最大值與最小值的差即為極差,又稱范圍、全距,以R表示:

(2)變異系數
變異系數是將標準差或平均差與其平均數對比所得的比值,又稱離散系數。計算公式為:


Vσ和VD分別表示標準差系數和平均差系數。變異系數可用于比較不同數列的變異程度。其中常用的變異系數是標準差系數。
4.偏度、峰度
偏度是對分布偏斜方向及程度的測度,用來度量分布的不對稱性。正態分布是對稱的,偏度值為0。具有顯著正偏度值的分布有很長的右尾,具有顯著的負偏度的分布有很長的左尾。一般情況下,如果計算的偏度值超過其標準誤的兩倍,則認為該組數據不具有對稱性。
偏度的計算公式為:

峰度是頻數分布曲線與正態分布相比較,其頂端的尖峭程度。在Stata中,正態分布的峰度統計量的值為2,大于2的峰度值表示相對于正態分布,觀測值更為集中在均值附近,體現為分布峰度更尖,尾部更薄。小于2的峰度值表示相對于正態分布,觀察值更為分散,分布峰度較低,尾部較厚。
峰度的計算公式為:

5.Z標準化得分
Z標準化得分是某一數據與均值的距離以標準差為單位的測量值。計算公式為:

Zi 即為Xi的Z標準化得分。標準化值不僅能表明各原始數據在一組數據分布中的相對位置,而且能在不同分布的各組原始數據之間進行比較,所以常用于統一量綱差距,在回歸分析、聚類分析中應用較多。
2.1.2 定距變量的描述性統計
下載資源:\video\第2章\…
下載資源:\sample\第2章\數據2A
數據分析中的大部分變量都是定距變量,通過進行定距變量的基本描述性統計,我們可以得到數據的概要統計指標,包括均值、最大值、最小值、標準差、百分位數、中位數、偏度系數和峰度系數等。數據分析者通過獲得這些指標,可以從整體上對擬分析的數據進行宏觀把握,從而為后續進行更深入的數據分析做好必要的準備。
關于定距變量的描述性統計,常用到summarize、tabstat、ci等操作命令。
summarize 命令的語法格式為:
summarize [varlist] [if] [in] [weight] [,options]
summarize的功能是計算并顯示各種單變量摘要統計信息。[varlist]為變量列表,如果沒有指定varlist,則計算數據集中所有變量的匯總統計信息。[if]為條件表達式,[in]用于設置樣本范圍,[weight]用于設置權重,[,options]用于設置可選項。summarize命令的[,options]可選項及其含義如表2.1所示。
表2.1 summarize命令的[,options]可選項及其含義

tabstat命令的語法格式為:
tabstat varlist [if] [in] [weight] [,options]
tabstat的功能是在一個表中顯示一系列數字變量的匯總統計信息,允許用戶指定要顯示的統計信息列表,而且統計數據可以根據另一個變量來計算,所以在統計數據和表格格式方面都具有很大的靈活性。[varlist]為變量列表,如果沒有指定varlist,則計算數據集中所有變量的匯總統計信息。[if] 為條件表達式,[in]用于設置樣本范圍,[weight]用于設置權重,[,options]用于設置可選項。tabstat命令的[,options]選項及其含義如表2.2所示。
表2.2 tabstat命令的[,options]可選項及其含義

ci 的功能是計算總體均值、比例、方差和標準差的置信區間。命令包括5種,分別為:
均值的置信區間,正態分布:
ci means [varlist] [if] [in] [weight] [,options]
均值的置信區間,泊松分布:
ci means [varlist] [if] [in] [weight], poisson [exposure(varname) options]
比例的置信區間:
ci proportions [varlist] [if] [in] [weight] [,prop_options options]
方差的置信區間:
ci variances [varlist] [if] [in] [weight] [,bonett options]
標準差的置信區間:
ci variances [varlist] [if] [in] [weight], sd [bonett options]
下面以“數據2A”數據文件為例進行說明,在“數據2A”中設置了兩個變量,分別是province和amount,數據如圖2.1所示。

圖2.1 “數據2A”數據文件的內容
打開上述數據文件之后,在主界面的命令窗口中依次輸入以下命令:
summarize amount
本命令的含義是獲取amount變量的主要描述性統計量。在Stata 16.0主界面的結果窗口中可以看到如圖2.2所示的分析結果。通過觀察分析結果,我們可以對 amount變量的整體情況有一個初步的了解。從分析結果可以看出,有效觀測樣本共有31個,樣本的均值為1180.489,樣本的標準差是903.5561,樣本的最小值是17.6987,樣本的最大值是3609.642。

圖2.2 描述性統計分析結果圖1
summarize amount,detail
本命令的含義是獲取amount變量的詳細統計量,分析結果如圖2.3所示。

圖2.3 描述性統計分析結果圖2
(1)百分位數(Percentiles)
可以看出數據的第1個四分位數(25%)是550.1556,數據的第2個四分位數(50%)是891.1902,數據的第3個四分位數(75%)是1324.61。數據的百分位數的含義是低于該數據值的樣本在全體樣本中的百分比。例如,本例中25%分位數的含義是全體樣本中有25%的數據值低于550.1556。
(2)4個最小值(Smallest)
本例中,最小的4個數據值分別是17.6987、133.7675、337.2368、462.9585。
(3)4個最大值(Largest)
本例中,最大的4個數據值分別是3609.642、3313.986、2941.067、2471.438。
(4)均值(Mean)和標準差(Std. Dev)
與前面的分析結果一樣,樣本數據的均值為1180.489,樣本數據的標準差是903.5561。
(5)偏度(Skewness)和峰度(Kurtosis)
偏度的概念是表示不對稱的方向和程度。如果偏度值大于0,那么數據就具有正偏度(右邊有尾巴);如果偏度值小于0,那么數據就具有負偏度(左邊有尾巴);如果偏度值等于0,那么數據將呈對稱分布。本例中,數據偏度為1.309032,為正偏度但不大。
峰度的概念用來表示尾重,是與正態分布結合在一起進行考慮的。正態分布是一種對稱分布,它的峰度值正好等于3,如果某數據的峰度值大于3,那么該分布將會有一個比正態分布更長的尾巴;如果某數據的峰度值小于3,那么該分布將會有一個比正態分布更短的尾巴。本例中,數據峰度為3.889152,有一個比正態分布更長的尾巴。
提示
本書以介紹Stata的命令為主,但此處我們借助本案例講解一下Stata操作的菜單實現和程序實現,供讀者參考。
1)上述命令可以通過菜單來實現,具體操作是打開數據文件后,在主界面菜單欄選擇“數據|描述數據|摘要統計”,即可彈出如圖2.4所示的對話框。
我們在對話框的“變量”中選擇“amount”,選項中選擇“輸出其他統計量”,其他的設置采用系統默認設置,然后單擊“確定”按鈕,即可彈出與“圖2.3 描述性統計分析結果圖2”一樣的結果。
2)上述命令也可以通過程序實現,在通過命令方式或者菜單方式運行結束后,在主界面“歷史窗口”中右擊,在彈出的右鍵菜單中選擇“全部保存”,如圖2.5左圖所示,然后保存類型為do文件,并輸入do文件名稱,下次啟動時,直接在主界面的菜單中選擇“文件|do文件”,如果2.5右圖所示,找到文件路徑和文件名,運行即可。這一方式在批量保存并運行多條命令時尤為有用,不用再逐條輸入,大大節省了時間和工作量。

圖2.4“summarize -摘要統計量”對話框

圖2.5 Stata操作的程序實現方式
tabstat amount,stats(mean range sum var)
本命令的含義是獲取amount變量的平均數、總和、極差、方差等統計指標,分析結果如圖2.6所示。該樣本數據的均值是1180.489,極差是3591.944,總和是36595.15,方差是816413.7。

圖2.6 描述性統計分析結果圖3
統計量與其對應的命令代碼如表2.3所示。
表2.3 統計量與其對應的命令代碼

tabstat amount,stats(mean range sum var) by(province)
本命令的含義是按province分類列出amount變量的概要統計指標,分析結果如圖2.7所示。

圖2.7 描述性統計分析結果圖4
ci means amount,level(98)
本命令的含義是創建amount變量總體均值98%置信水平的置信區間,分析結果如圖2.8所示。

圖2.8 描述性統計分析結果圖5
基于本例中的觀測樣本,我們可以推斷出總體的98%水平的置信區間。也就是說,我們有98%的信心可以認為數據總體的均值會落在[781.7159,1579.262]中,或者說,數據總體的均值落在區間[781.7159,1579.262]的概率是98%。讀者可以根據具體需要通過改變命令中括號里面的數字來調整置信水平的大小。
2.1.3 正態性檢驗和數據轉換
下載資源:\video\第2章\…
下載資源:\sample\第2章\數據2B
隨著科技的不斷發展和計算方法的不斷改進,學者們探索出了很多統計分析方法和分析程序。但是有相當多的統計程序對數據要求比較嚴格,它們只有在變量服從或者近似服從正態分布的時候才是有效的,所以在對整理收集的數據進行預處理的時候需要對它們進行正態檢驗,如果數據不滿足正態分布假設,就要對數據進行必要的轉換。數據轉換分為線性轉換與非線性轉換兩種。
關于正態性檢驗和數據轉換,常用到sktest、ladder、gladder、qladder等操作命令。
sktest命令的語法格式為:
sktest varlist [if] [in] [weight] [,noadjust]
對于varlist中的每個變量,sktest給出了一個基于偏度的正態性檢驗和另一個基于峰度的正態性檢驗,然后將這兩個檢驗合并成一個整體檢驗統計量。需要提示的是,sktest至少需要8個樣本觀測值才能進行計算。varlist為需要進行正態性檢驗的變量列表,[if]為條件表達式,[in]用于設置樣本范圍,[weight]用于設置權重,[,noadjust]用于抑制Royston(1991)對總體卡方及其顯著性水平所做的經驗調整,呈現D'Agostino所描述的未改變檢驗。
ladder命令的語法格式為:
ladder varname [if] [in] [,generate(newvar) noadjust]
ladder的功能在于搜索冪級數的子集(Tukey 1977),嘗試冪階梯上的每一種冪并逐個反饋結果是否顯著地為正態或者非正態,使用戶可以非常方便地找到將變量(varname)轉換為正態分布變量的有效轉換方式。varname為需要進行正態轉換的變量,[if]為條件表達式,[in]用于設置樣本范圍,[weight]用于設置權重,[,generate(newvar)]保存與表中最小卡方值對應的轉換值,但不推薦使用generate(),因為這僅僅是字面意義上的解釋最小值,從而會忽略幾乎相等但可能更可解釋的變換。[,noadjust]用于抑制Royston(1991)對總體卡方及其顯著性水平所做的經驗調整,呈現D'Agostino所描述的未改變檢驗。
gladder的功能在于根據ladder變換的結果展示出9個變換的直方圖,從而可以更直觀地看出冪階梯和正態分布檢驗有效結合的結果。gladder命令的語法格式為:
gladder varname [if] [in] [,histogram_options combine_options]
qladder與gladder類似,區別是qladder顯示varname變換的分位數,根據冪級數與正態分布的分位數進行比較。qladder命令的語法格式為:
qladder varname [if] [in] [,qnorm_options combine_options]
varname為需要進行正態轉換的變量,[if]為條件表達式,[in]用于設置樣本范圍,[,histogram_options combine_options]為可選項。
下面以“數據2B”數據文件為例進行說明,“數據2B”中設置了兩個變量,分別是province和amount,其中的數據如圖2.9所示。

圖2.9 “數據2B”中的數據內容
打開上述數據文件之后,在主界面的命令窗口中依次輸入以下命令:
sktest amount
本命令的含義是對該數據進行正態分布檢驗,檢驗結果如圖2.10所示。sktest命令拒絕了數據呈正態分布的原始假設。從偏度上看,Pr(Skewness)為0.0065,小于0.05,拒絕正態分布的原假設;從峰度上看,Pr(Kurtosis)為0.0804,大于0.05,接受正態分布的原假設;但是把兩者結合在一起考慮,從整體上看,Prob>chi2為0.0123,小于0.05,因而拒絕正態分布的原假設。

圖2.10 對amount變量進行正態分布檢驗
generate sramount=sqrt(amount)
本命令的含義是對數據進行平方根變換,以獲取新的數據。
sktest sramount
本命令的含義是獲取新的數據sramount進行正態分布檢驗,檢驗結果如圖2.11所示。sktest命令接受了數據呈正態分布的原始假設。從偏度上看,Pr(Skewness)為0.4418,大于0.05,接受正態分布的原假設;從峰度上看,Pr(Kurtosis)為0.9062,大于0.05,接受正態分布的原假設;把兩者結合在一起考慮,從整體上看,Prob>chi2為0.7293,大于0.05,接受正態分布的原假設。

圖2.11 sramount變量進行平方根變換后再進行檢驗
generate lamount=ln(amount)
本命令的含義是對數據進行自然對數變換,以獲取新數據。
sktest lamount
本命令的含義是對獲取的新數據lamount進行正態分布檢驗,檢驗結果如圖2.12所示。

圖2.12 lamount變量進行自然對數變換后再進行檢驗
通過觀察分析圖,我們可以比較輕松地得出分析結論。本例中,sktest命令接受了數據呈正態分布的原始假設。從偏度上看,Pr(Skewness)為0.0462,小于0.05,拒絕正態分布的原假設;從峰度上看,Pr(Kurtosis)為0.2609,大于0.05,接受正態分布的原假設;把兩者結合在一起考慮,從整體上看,Prob>chi2為0.0774,大于0.05,接受正態分布的原假設。
我們在進行數據分析時,在對初始數據進行正態性檢驗后,可以利用前面2.1.2節講述的相關知識得到關于數據偏度和峰度的信息,我們完全可以根據數據信息的偏態特征進行有針對性的數據變換。數據變換與其對應的Stata命令以及達到的效果如表2.4所示。
表2.4 數據變換與其對應的Stata命令以及達到的效果

ladder amount
本命令的含義是對amount變量運行ladder命令,ladder命令把冪階梯和正態分布檢驗有效地結合到了一起,它嘗試冪階梯上的每一種冪并逐個反饋結果是否顯著地為正態或者非正態分布。ladder命令的運行結果如圖2.13所示。

圖2.13 ladder命令的運行結果
在該結果中,我們可以看出,在95%的置信水平上,僅有平方根變換square root(P(chi2)= 0.729)以及自然對數變換log(P(chi2)= 0.077)是符合正態分布的,其他冪次的數據變換都不能使數據顯著地呈現正態分布。
gladder amount
本命令的含義是對amount變量運行gladder命令,gladder命令可以更直觀地看出冪階梯和正態分布檢驗有效結合的結果。gladder命令的運行結果如圖2.14所示。

圖2.14 gladder命令的運行結果
從運行結果中可以看出,每種轉換的直方圖與正態分布曲線,都與ladder命令運行結果得出的結論是一致的。
qladder amount
本命令的含義是對amount變量運行qladder命令,qladder顯示varname變換的分位數,根據冪級數與正態分布的分位數進行比較。
qladder命令的運行結果如圖2.15所示。

圖2.15 qladder命令的運行結果
qladder顯示的是varname變換的分位數,根據冪級數與正態分布的分位數進行比較。
- 現代企業應用設計指南
- Oracle SOA Suite Developer's Guide
- Adobe Photoshop 網頁設計與制作標準實訓教程(CS5修訂版)
- Celtx: Open Source Screenwriting Beginner's Guide
- Microsoft SharePoint 2010 Power User Cookbook: SharePoint Applied
- 青少年美育趣味課堂:青少年學攝影修圖
- BIRT 2.6 Data Analysis and Reporting
- SPSS統計分析從基礎到實踐
- SOA Patterns with BizTalk Server 2009
- Photoshop+AE UI動效設計從新手到高手
- Python 3 Object Oriented Programming
- Photoshop+CorelDRAW 字體設計與創意:草圖/實現/包裝(微課版)
- Transformer自然語言處理實戰:使用Hugging Face Transformers庫構建NLP應用
- Science Teaching with Moodle 2.0
- 中文版CorelDRAW X7完全自學教程(實例培訓教材版)