clear all
set more off
cap log use
sysdir set PLUS "X:\XXX"
/*导入数据*/
import excel "X\XXX.xlsx", sheet("DATA") firstrow clear
/*给变量加标签*/
label variable v1 "XXX"
label variable v2 "XXX"
/*数据预处理*/
gsort +v2, g(rank) //对变量生序排列,同时把生成的序列存为一个新的变量rank
gen ratio=rank/_N //计算比率
gen z=invnormal(ratio) //根据比率值计算对应的正态分布Z值,并存为新的变量z
/*生成统计摘要表*/
table (command) (result), command(NoObs=r(N) Min=r(min) P25=r(p25) Median=r(p50) P75=r(p75) Max=r(max) range=(r(max)-r(min)) Mean=r(mean) Variance=r(Var) StdDev=r(sd): sum v2, detail) nformat(%10.2f) sformat(%7s)
putdocx begin
putdocx paragraph, style(Title)
putdocx text ("XXX正态性检验报告")
putdocx paragraph, style(Heading1)
putdocx text ("一、XXX基本描述性统计")
putdocx paragraph
putdocx text (" 基本的描述性统计是判断XXX变量否服从正态分布的关键步骤,表1给出了XXX变量的基本描述性统计。")
putdocx paragraph //开始新的一段;段落居中,页面的大小,横向
collect style putdocx, layout(autofitcontents) title("表1. XXX描述性统计表")
return list
collect label list command, all
collect label levels command 1 "XXX", modify
collect preview
putdocx collect
putdocx paragraph
putdocx text ("由基本的描述性统计可以看出,XXX变量并不是对称分布的样本。整体表现为右偏分布,因此并不符合正态分布的分布形态。")
putdocx save XXX.docx , replace
/*生成直方图*/
putdocx begin
putdocx paragraph, style(Heading1)
putdocx text ("二、XXX变量直方图")
putdocx paragraph
putdocx text (" 另一种检验正态分布的方法是使用直方图。图1给出了道XXX变量的直方图,其中组距为7,起始值为0。淡蓝色曲线为参考的正态分布曲线。")
putdocx paragraph
hist MarketCapbillions, bin(7) start(0) percent normal graphregion(fcolor(white) lcolor(white)) b1("图1. XXX直方图") note("数据来源:XXX") fcolor(dknavy) lc(black) xsize(8) ysize(6) scale(1.4)
graph export histogram.png , replace
putdocx image histogram.png, width(8 cm) height(6 cm)
putdocx paragraph
putdocx text (" 由图1也可以看出,XXX变量不是正态分布而是右偏分布。具体表现为在小于0的区间上没有概率,还表现为众数小于均值,数据在均值右侧具有更多的极端值。))")
putdocx save XXX.docx , append
/*生成正态概率散点图*/
putdocx begin
putdocx paragraph, style(Heading1)
putdocx text ("三、XXX正态性对比检验")
putdocx paragraph
putdocx text (" 还有一种检验正态分布的方法是使用正态概率散点图。图2给出了XXX变量的正态概率散点图,其中Y轴为变量X2,X轴为变量X1在所有变量X2排序的累积分布概率对应的Z值。红色直线为X2与Z值之间的OLS方法拟合曲线。")
putdocx paragraph
scatter x2 z || lfit x2 z, graphregion(fcolor(white) lcolor(white)) b1("图2. XXX正态性检验图") note("数据来源:XXX") yti("XXX") xti("Z值") legend(order(2 "拟合直线")) xsize(8) ysize(6) scale(1.4)
graph export scatter.png , replace
putdocx image scattter.png, width(8 cm) height(6 cm)
putdocx paragraph
putdocx text (" 由图2可以看出,正态概率散点图构成的曲线相对拟合直线明显下凹,这一特征也显著的提示了X变量的分布是右偏分布而不是正态分布。")
putdocx save XXX.docx, append
putdocx clear