‘壹’ stata两变量相差很大怎么画图
stata两变量相差很大画图:直方图:首先输入命令:histogram number,frequency (划线部分为研究变量,根据自己研究唤毁问题来输入)
绘制结果分析 :自变量number指城市拥有技工学校的数量,frequency指拥有某一特定数量的城市的频次。显然,由图可知,拥有技慧激工学校数量少的城市数量是占比最大的。 最后给前链袜图加个标题,输入命令:histogram number,frequency title(”案例结果“)。
Stata是一个非常有特色的统计分析软件,和 SAS、SPSS 一起,被称为新的三大权威统计软件。
Stata 最为突出的特点是短小精悍、功能强大,整个系统只有 10M 左右,但已经包含了全部的统计分析、数据管理和绘图等功能,尤其是他的统计分析功能极为全面,故而已经在科研、教育领域得到了广泛应用。
‘贰’ 如何用stata 做一个相关性分析的矩阵
在stata里help cor。
stata的命令名是correlate [varlist] [if] [in] [weight] [, correlate_options]
stata 里面分析相关性的命令是
pwcorr a b c d e , sig
结果就有了包括了显着性的判消侍闭断标准,stata里面没有星星,直接根据sig,也就是p的值来判断是否显着就好。
(2)stata直方图命令扩展阅读:
作图功能
Stata的作图模块,主要提供如下八种基本图形的制作 : 直方图(histogram),条形图(bar),百分条图 (oneway),百分圆图(pie),散点图(two way),散点图矩阵(matrix),星形图(谈氏star),分位数图。
这些图形的巧妙应用,可以满足绝大多数用户的统计作图要求。在有些非绘图命令中,也提供了专门绘制某种图形的功能,如在生存分析中,提供了绘制生存曲线图,回归分析中提供了残差图等。
Stata的矩阵运算功能
矩阵代数是多元统计分析的重要工具, Stata提供了多元统计分析中所需的矩阵基本运算,如矩阵的加、积、逆、 Cholesky分解、 Kronecker内积等;还拿裂提供了一些高级运算,如特征根、特征向量、奇异值分解等。
在执行完某些统计分析命令后,还提供了一些系统矩阵,如估计系数向量、估计系数的协方差矩阵等。
‘叁’ 求教STATA中面板数据单位根检验的做法
面板数据的单位根检验方法有很多种,一般我们只选两种,即相同根单位根检验和不同根单位根检验。
如果数据是平衡的,则可使用LLC检验(适用于同根)和IPS检验(适用于不同根)。
一般的stata并没有自带这两个程序需要自己下载安装,我们可以在命令栏键入:search levinlin, net和search ipshin, net,然后按照提示逐步安装。接着就可以进行变量的单位根检验。输入如下命令:Levinlin 变量名,lags(1)Ipshin 变量名,lags(1)
例:
1、levinlin lntfp,lags(1)
出现以下结果:
Levin-Lin-Chu test for lntfp Deterministics chosen: constant
Pooled ADF test, N,T = (31,9) Obs = 217
Augmented by 1 lags (average) Truncation: 6 lags
coefficient t-value t-star P > t
-1.18963 -15.196 -6.06106 0.0000
LLC检验的原假设是H0: 有单位根,P值为0,拒绝原假设,所以不存在单位根。
2、ipshin lntfp,lags(1)
出现以下结果:
Im-Pesaran-Shin test for cross-sectionally demeaned lntfp
Deterministics chosen: constant
t-bar test, N,T = (31,9) Obs = 217
Augmented by 1 lags (average)
t-bar cv10 cv5 cv1 W[t-bar] P-value
-2.348 -1.700 -1.750 -1.850 -4.272 0.000
同样说明没有单位根。
如果存在单位根,则需要进行一阶差分,并再次进行单位根检验,输入以下命令:
levinlin D.变量名,lags(1)
Stata的作图模块,主要提供如下八种基本图形的制作 : 直方图(histogram),条形图(bar),百分条图 (oneway),百分圆图(pie),散点图(two way),散点图矩阵(matrix),星形图(star),分位数图。
这些图形的巧妙应用,可以满足绝大多数用户的统计作图要求。在有些非绘图命令中,也提供了专门绘制某种图形的功能,如在生存分析中,提供了绘制生存曲线图,回归分析中提供了残差图等。
Stata是一个统计分析软件,但它也具有很强的程序语言功能,这给用户提供了一个广阔的开发应用的天地,用户可以充分发挥自己的聪明才智,熟练应用各种技巧,真正做到随心所欲。
事实上,Stata的ado文件(高级统计部分)都是用Stata自己的语言编写的。
Stata其统计分析能力远远超过了SPSS,在许多方面也超过了SAS!由于Stata在分析时是将数据全部读入内存,在计算全部完成后才和磁盘交换数据。
因此计算速度极快(一般来说, SAS的运算速度要比SPSS至少快一个数量级,而Stata的某些模块和执行同样功能的SAS模块比,其速度又比SAS快将近一个数量级!)Stata也是采用命令行方式来操作,但使用上远比SAS简单。
其生存数据分析、纵向数据(重复测量数据)分析等模块的功能甚至超过了SAS。用Stata绘制的统计图形相当精美,很有特色。
(3)stata直方图命令扩展阅读:
面板数据维度的确定
在面板数据进行模型估计前,要进行面板数据的维度确定。由于面板数据既有截面数据又有时间序列,而stata不能自动识别,因此,必须使得stata得知哪一部分是截面数据,而哪一部分是时间序列。
设置面板数据维度的基本命令为:
xtset panelvar timvar [, tsoptions]
其中panelvar代表截面数据变量,timvar代表时间序列变量。
选取某一面板数据进行维度设定(该数据研究职业培训津贴对厂商废弃率的影响):
xtset fcode year
‘肆’ 如何用stata画图
//lecture 6
cd /Victor/stata
use "nei_sample.dta",clear
edit zipcode
//split默认根据空格拆分 stub前缀 prase on these strings根据什么拆分(通过观察)
split facilityname_origin, generate(varnew) parse(,)
split zipcode,generate(zipnew) parse(-)//在2894行 有的没有破折号需要提取前五位
//按照某种符号拆分字符串
edit zipcode
help substr
//截取
gen zip5=substr(zipcode,1,5)
//生成zip5,表示截取zipcode的前五位 从第一位 截取五位
edit zipcode zip5 if length(zip5) ~=5
//展示长度不等于5的zip5和zipcode
edit zip5
gen len_cn = ustrlen(zipcode)
//生成中文字符串长度
edit fips
gen fips2 = substr(fips, 1,2)
edit fips2
gen fips3 = substr(fips, 3,3)
edit fips2 fips3
destring fips2, replace force
destring fips3, replace force
//字符变数值
tostring fips2 fips3, replace force
//数值变字符
edit fips2 fips3
replace fips2="0"+fips2 if length(fips2)==1
replace fips3="0"+fips3 if length(fips3)==2
replace fips3="00"+fips3 if length(fips3)==1
//前面用零补齐,补成五位
help plicates
//重复观测值
sort newid
plicates report newid year
//报告重复观测值
//copies代表这个数据一共有多少个 =1就代表没有重复 第4541只有一个观测值newid
plicates tag newid year, gen(p)
//标注重复观测值
tab p
//展示搭枯
edit new year if p>=177
plicates drop newid year, force
//去掉重复样本//两个都一样才丢掉
plicates report newid year
ssc install unique
//安装unique
unique newid year
//展示有几个是唯一的
unique fips
use nei_sample.dta, clear
help collapse
//压缩
collapse (sum) so2 co nox nh3 voc (first) facilityname_origin fips zipcode , by(newid year)
//根据newid year重复的字符串变量 (first)后面薯段的三个只取第一个数据 数值变量so2等等。。加总(sum) 没涉及的变量就丢掉了
plicates report newid year
collapse (sum) so2 co nox nh3 voc (count) newid, by(fips year)
//关于fips year 加总。数出newid(在fips year全都相同的情况下有几个newid(企业))
//每个地区每一年污染物的多知手洞少,企业有多少
gen id = newid
//replace
//改变面板数据的结构
use nei_sample.dta, clear
help reshape
keep newid year so2
plicates drop newid year, force
reshape wide so2 , i(newid) j(year)
reshape long so2 co nox voc nh3, i(newid) j(time)
//将宽表和长表相互转换
keep newid year co
reshape wide co,i(newid) j(year)
plicates drop newid year,force
reshape wide co,i(newid) j(year)
reshape long co,i(newid) j(year)//观测值变成了999*12,转换两次之后,数据变成
*balanced data(平衡面板数据)了 也是为了便于做可视化分析,计量分析
//lecture 7
cd /Victor/stata
use "nei_sample.dta",clear
keep newid year so2
//保留这三个
help reshape
//数据重排
plicates drop newid year, force
reshape wide so2 , i(newid) j(year)
//不同问题下i不同 这里的i是企业 j是时间
reshape long so2 co nox voc nh3, i(newid) j(time)
//reshape//long wide lecture7
use "nei_sample.dta",clear
keep newid year so2 co nox voc nh3 sic
plicates drop newid year, force
reshape wide so2 co nox voc nh3, i(newid sic) j(year)
keep newid year so2 co nox voc nh3 sic
reshape wide so2 co nox voc nh3, i(newid sic) j(year)
//数据变少了是因为有的newid对应多个sic
reshape long so2 co nox voc nh3, i(newid sic) j(year)
//通过这种方式将它强行变成平衡面板 先wide 后long(意义重大)
use nei_sample,clear
keep so2 co nox voc nh3 newid year
plicates drop newid year,force
reshape wide so2 co nox voc nh3,i(newid) j(year)
reshape long so2 co nox voc nh3,i(newid) j(time)//三千多个变成了一万多个
*reshape之后每一个企业都在每一年1990——2011有观测值,强行将数据变为balanced
ren (so2 co nh3 nox voc) (pol1 pol2 pol3 pol4 pol5)
//更改变量名 为了保证前缀都一样 才能转换
*sample
rename so2 pu1
rename co pu2
rename nox pu3
rename voc pu4
rename nh3 pu5
reshape long pu,i(newid time) j(type)
tostring type,replace
replace type="so2" if type=="1"
replace type="co" if type=="2"
replace type="nox" if type=="3"
replace type="voc" if type=="4"
replace type="nh3" if type=="5"
keep newid year pol1 pol2 pol3 pol4 pol5
reshape long pol, i(newid year) j(type)
//??? 没有drop
tostring type, replace force
//???
replace type = "so2" if type == 1
//替代污染物名称
use "nei_sample.dta",clear
plicates drop newid year, force
//去掉重复值
edit newid year so2
sort newid year
by newid: gen l1so2 = so2[_n-1]
//so2[1] so2[_N] n-1代表上一行的观测值 通过企业来分 每个n对于企业来说是不一样的
by newid: gen l2so2 = so2[_n-2]
//上两行
by newid: gen l0so2 = so2[_n]
by newid: gen f1so2 = so2[_n+1]
//滞后一期
bys newid: gen Nso2 = so2[_N]
//展示这个企业最后一年的数据
bys newid: gen n1so2 = so2[1]
//有时需要保证它是一个平衡面板:可利用以下命令
xtset newid year
//set panel variable 让他成为面板数据 如果不告诉它 它永远按上一行处理
gen lso2 = l.so2
//l.代表上一期的滞后变量(上一年)这个和上一行的数据不一样喔 有时可能上一行不是上一年 就没有上一期了
use "nei_sample.dta",clear
plicates drop newid year, force
edit fips year newid
sort fips year newid
by fips year: egen id_sum = count(newid)
//通过fips year来分 如果两个都相同就算一次
edit fips year newid so2
by fips year: egen so2_fips = sum(so2)
//missing values
//得到地区层面的数据 用于变量的构造 通过微观数据做加总数据又保留微观数据本身
//
use "nei_sample.dta",clear
help collapse
collapse (sum) so2 co nox nh3 voc (first) facilityname_origin fips zipcode , by(newid year)
//构造更高层面的行业数据 微观数据全部损失了. 加总相同年份的污染量,(first)后面的是只保留第一行
plicates report newid year
collapse (sum) so2 co nox nh3 voc (count) newid, by(fips year)
gen id = newid
//replace
//collapse by 2_digit sic and fips_stata (2_dight fips), and year,
use "nei_sample.dta",clear
gen fips3 = substr(fips,1,2)
gen sic2 = substr(sic,1,2)
collapse (sum) so2 co nox nh3 voc ,by( fips3 sic2 year)
//lecture 8
//图形的组成
sysuse uslifeexp2
decribe
scatter le year
//第一个是y 第二个是x轴
//connect(l) 表示以直线的方式连接相邻的两个点
//msymbol(i) 表示散点的显示方式为“看不见”
scatter le year, connect(l)
scatter le year, connect(l) msymbol(i)
scatter le year, connect(l) msymbol(smdiamond)
//散点形状改为棱形
scatter le year, connect(l) msymbol(smdiamond) mcolor(lime)
//标记间连线的方式,标记本身的形状,标记的颜色
help marker_options
//标记标签的选择
graph query symbolstyle
help marker_label_options
sysuse lifeexp.dta, clear
describe
list country lexp gnppc if region == 2
scatter lexp gnppc if region == 2, mlabel(country)
scatter lexp gnppc if region == 2, mlabel(country) mlabpos(9)
//将标签调整到九点钟方向 这样美国就可以显示出来了
//下面尝试利用 mlabvposition(varname) 选项为某些特殊选项的观测值设定标签的位置 为了单独为美国和洪都拉斯设定标签显示方向,
//需要生成一个指标方向的变量,命名为破碎,然后利用这个变量对每个案例的不同附值来调整各个散点的标签位置
generate pos = 3
//所有国家都是3
replace pos = 12 if country == "Honras"
replace pos = 9 if country == "United States"
scatter lexp gnppc if region == 2, mlabel(country) mlabv(pos)
//下面尝试利用改变坐标轴的覆盖范围来设定标签
//方法一:利用xscale(range())指定作图的区域
scatter lexp gnppc if region ==2,mlabel(country) mlabv(pos) xscale(range(-500 3500))
//方法二:利用plotregion( margin())来解决作图区域的微小变动
scatter lexp gnppc if region == 2,mlabel(country) mlabv(pos) plotregion(margin(l+9))
sysuse autornd, clear
descrbe
scatter mpg weight
scatter mpg weight, jitter(7)
//由于数据点太密集了,产生重叠,需要将数据点轻微地挪动位置,jitter(#)震荡选项
//二维绘图选项,help twoway
//标题选项,坐标,图例,增加线,by
sysuse lifeexp.dta, clear
scatter lexp gnppc
gen log_gnppc = log(gnppc)
//对数化,更线性
scatter lexp log_gnppc
//另一种方法:
scatter lexp gnppc, xscale(log)
//做散点图,并对比y轴刻度使用正常尺度与逆向尺度的异同
sysuse auto.dta, clear
scatter mpg weight
scatter mpg weight, yscale(rev)
//车重与油耗正相关
//下面绘制完全没有任何坐标的散点图和有坐标刻度但没有坐标线的散点图
scatter mpg weight, yscale(off)
//不要y轴
scatter mpg weight, yscale(noline) xscale(noline)
//去掉了坐标线,保留刻度
help axis_label_options
sysuse auto, clear
describe
sum
//下面分别绘值mpg、weight的标有大约坐标轴上5个10个刻度标识的mpg和weight散点图
scatter mpg weight
scatter mpg weight, ylabel(#5) xlabel(#5)
scatter mpg weight, ylabel(#10) xlabel(#10)
scatter mpg weight, ylabel(10(5)45) xlabel(1500 1970 2500(1000)4500)
//自定义规则
scatter mpg weight, ytick(#10) xtick(#15)
//绘制x轴大约有15个刻度,y大约10个刻度
scatter mpg weight, ymlabel(##5) xmtick(##10)
//把小刻度的标识也标上去,x轴主刻度之间有10个小刻度
scatter mpg weight , ymlabel(##5) xmlabel(##10)
//时间序列散点图时的轴线刻度标识问题
sysuse uslifeexp, clear
scatter le year, c(l)
scatter le year, c(l) xlabel(#10,grid)
//网格,用线连
scatter le year, c(l) xlabel(1900(10)2000,grid)
scatter le year, c(l) xlabel(1900 1918 1936 1950(20)2000,nogrid)
scatter le year, lcolor(yellow) c(l) xlabel(1900 1918 1936 1950(20)2000,nogrid)
line le year, lcolor(navy) lpattern(dot)
sysuse uslifeexp, clear
scatter le year, c(l) xlabel(1990 1918 1940(20)2000,grid) legend(on)
label var le_male "男人,人均寿命"
scatter le_male le_female year, legend(label(1 "Male") label(2 "Female"))
//绘制散点图并添加图例,将图例分别改为”male”和”female“
scatter le_male le_female year, c(l) legend(on)
//legend是图例
‘伍’ stata直方图设置间距
stata直方图设置间距如下:
直方图是用矩形的面积(即长度和宽度)来表示频数分布的图形,在慎陆手平面直角坐标系中,一般用宽嫌纵轴表示频数或频率,用横轴表示数据悉圆的分组。通过该种图形,用户可以较为直观地了解数据的整体情况,如分布类型、中心位置、分散程度等。
‘陆’ 普林斯顿Stata教程之Stata做图
2.1 散点图
2.2 线图
2.3 其他图形
2.4 图形管理
Stata拥有出色的图形设备,可通过 graph 命令访问, help graph 了解概述。统计中最常见的图表是显示点或线的双坐标轴X-Y图。这可以通过子命令 twoway 实现。 twoway 命令中又含42个子命令及绘图类型,其中最重要的是 scatter 和 line 。我们将对 scatter 和 line 着重介绍,并简要介绍其他绘图类型。
Stata 10引入了一个图形编辑器,可用于交互式地修改图形。然而,我不会提倡这种做法,因为它与记录和确保研究中所有步骤可重复的目标相冲突。
本节中的所有图表(除非另有说明)都使用带蓝色标题和白色背景的自定义方案,我将在第2.2.5节对方案进行讨论。
在本节中,我将使用前文使用过的有关生育率下降的 effort 数据集进行图表说明。读取数据:
为了激起你的兴趣,先展示我们将在本节中完成的作品:
可以使用以下命令生成生育率变化(change)与社会环境(setting)关系的简单散点图:
请注意,首先指定的变量是在Y轴。如果变量有定义标签,则坐标轴显示变量标签名,若无定义则显示变量名。如果这是唯一的图,该命令可以缩写为 twoway scatter ,或者 scatter 。现在我们将添加一些东西。
假设我们也想显示拟合的回归线。在某些软件包中,您需要运行回归,计算拟合线,然后对其进行绘制。Stata可以使用 lfit 绘图类型一步完成所有操作(还有一个二次拟合绘图类型 qfit )。通过将每个子图封闭在括号内,可以将它与散点图结合使用(也可以使用两条竖线来分隔它们)。
现在假设我们想在回归线上放置置信区间。Stata可以通过 lfitci 来实现这一点,该绘图类型将置信区域绘制为灰色带。(还有一个 qfitci 类型用于二次拟合的频带。)因为置信带会遮蔽一些点,所以我们先绘制该区域再绘制点
请注意,该命令不会标记y轴,而是使用图例。您可以使用该 ytitle() 选项为y轴指定标签,并隐藏图例 legend(off) :
有很多选项可以让你控制点的标签,包括它们的形状和颜色,参见 help marker_options 。使用 mlabel(varname) 选项也可以用变量的值标记点。在下一步中,我们将国名添加到图中:
标签中的一个小问题是哥斯达黎加和特立尼达多巴哥(以及巴拿马和尼加拉瓜)相互重叠。我们可以使用12小时时钟指定标签相对于标记的位置来解决这个问题(12是上面的,3是右边,6是下面,9是在标记的左边)。
我们创建一个变量,将默认设置的位置保持为3点,然后将哥斯达黎加移动到9点,特立尼达多巴哥移动到11点以上的位置(我们也可以将尼加拉瓜和巴拿马上移位,到2点方向):
生成此版本图形的命令如下
有些选项适用于所有双向图形,包括标题,标签和图例等。Stata图表的 title() 和 subtitle() 通常在顶部, legend() , note() 和 caption() 通常在底部,更多信息键入 help title_options 。通常你只需了解标题即可。Stata 11允许图形中的文本包括粗体,斜体,希腊字母,数学符号和字体选择。Stata 14引入了Unicode,大大扩展了可以完成的工作。 help graph text 以了解更多信息。
我们对图表的最后调整是添加一个图例来指定线性拟合和95%置信区间。我们使用 order(2 "linear fit" 1 "95% CI") 命令,图例的选项按照该顺序标记第二个和第一个项目。我们还使用 ring(0) 将图例移动到绘图区域内,并使用 pos(5) 将图例框放置在5点钟位置附近。完整命令就是:
结果就是本节开始处显示的图形
有一些选项可以控制轴的缩放比例和范围,包括 xscale() 和 yscale() 。可以是算术,对数值等。更多信息 help axis_scale_options 。其它选项控制主要和次要记号和标签,如 xlabel() , xtick() and mtick() ,同样地,对于y轴,见 help axis_label_options 。通常默认值是可以接受的,但还是很高兴您知道它们是可以更改的。
将使用美国预期寿命数据来说明线图,这试数据Stata附带的数据集之一(试试 sysuse dir 看看还有什么可用的)。
我们的目标是绘制20世纪美国白人和黑人男性的预期寿命。为了激发你的兴趣,将先向你展示最终成果,然后我们将一点一点地构建图表。
最简单的图形所有参数使用默认值:
如果这就是我们所要的图形,可以将命令缩写为 twoway line ,或者 line (只适用于散点图和线图)。
线图允许我们指定多个“y”变量,顺序为y1,y2,...,ym,x。本例中,我们指定了两个——对应于白人男性和黑人男性的预期寿命。或者,我们可以使用两条线图: (line le_wmale year) (line le_bmale year) 。
默认图形很好,但图例似乎太罗嗦。我们会将大部分信息转移到标题中,并且只保留肤色信息:
在这里,我使用了三个选项: title , subtitle 和 legend 。 legend 选项有许多子选项; 此处用 order 列出关键点(即 1 和 2 )及其标签,说明第一条线代表白人,第二条线代表黑人。要省略关键点,只需将其从列表中移除即可。其他的图例选项,请参阅 help legend_option 。
下面我希望在画图区域内移动图例来改善空间,比如说在5点钟左右的位置有空余空间。如前所述,我们可以通过使用 ring(0) 将图例移动到绘图区域内,并通过 pos(5) 将其置于5点钟位置附近。因为这些都是图例子选项,所以都在 legend() 命令括号中输入:
我不知道你感觉如何,但我自己很难区分图画中的默认线条。Stata中有不同的方式控制线条样式。 clstyle() 选项可以让你使用已命名的不同风格,比如 foreground , grid , yxline ,或是根据线1~15使用样式命名的 p1-p15 ,详情请参阅 help linestyle 。如果您想根据方案选择合适样式元素,这非常有用。
您也可以指定样式的三个成分从而确定风格:线条样式,宽度和颜色:
我们将白人指定为蓝色,黑人指定为红色:
请注意,这 clcolor() 是线图的一个选项,所以我将括号放在 line 命令的周围并把 clcolor() 插入那里。
由上图我们可以看出,预期寿命的提升速度在20世纪下半叶有所减缓。使用对数刻度可以更直观的理解,需要注意的是对数刻度中直线表示恒定的改善幅度。这由 help axis_options 可以很容易完成。尤其是 yscale() ,它可以让你选择算数( arithmetic ),对数( log )或倒置刻度( reversed )。其中倒置刻度是指y轴是从最大的值开始的,最小值反而在最上方。还有一个子选项 range() 可以控制绘图范围。在这里,我将y范围指定为25到80,以便将曲线稍微向上移动:
Stata使用方案来控制图的外观,参见 help scheme 。您可以设置默认方案并在所有图形中应用 set scheme_name 。您也可以使用不同的方案对所作的最后一个图形重新展示,选出效果最好的方案 graph display, scheme(scheme_name) 。
使用 graph query, schemes 查看可用方案类型列表。 s2color 方案适用于屏幕图表, s1manual 是Stata手册中的风格。 economist 是经济学人杂志使用的风格。我们可以获得本节开头所示的图形使用的是 economist 风格。
条形图可用于绘制分类变量的频数分布,或绘制由分类变量定义的组内连续变量的描述性统计。我们将使用Stata附带的城市温度数据集为例说明。
如果我只是键入 graph bar, over(region) 我将获得区域变量的频数分布。让我们来展示一月和七月的平均气温的区域分布。要做到这一点,我可以指定 (mean) tempjan (mean) tempjuly ,但由于默认统计是平均值,我们可以简写如下。我认为默认图例太长,所以也指定了一个自定义图例。
我使用 over() 这样所以区域出现在同一个图表中;· by() 则相反,每个区域都会产生一个单独的坐标轴。 bargap() 选项则控制同一个组中不同统计的小节之间的间隔; 在这里我放了一个小空间。 gap() (此处未使用)选项控制不同组别的空间。我还将颜色填充强度设置为70%,我认为这看起来更好。
显然,1月份东北部和北部中部地区比南部和西部冷得多。七月份的变化较少,但南部的气温较高。
使用箱线图可以快速获得变量分布的特征,箱线图是取值范围为1~3分位数的箱子,将中位数用横线显示,并且在盒子上下方增加了“wiskers”,定义为距离中值不超过四分位数间距的1.5倍的最高和最低值。在wiskers上下方的点用圆圈表示为异常值。
让我们画一个地区1月份的温度箱形图。我将使用 over(region) 选项,并用 sort(1) 选项控制排列顺序——按照第一个变量 tempjan 中位数大小排列。我还通过设定RGB值将颜色设置为蓝色:
我们看到,1月份的气温在东北部和北部中部地区较低,变化较小,相当一部分城市气温异常偏冷。
对变量分布更详细的展示需要用到平滑直方图,可以使用 kdensity 命令使用核密度平滑器计算平滑直方图。
让我们使用默认设置对每个区域的1月温度进行单独的核密度估计,并保存结果。
接下来我们做出核密度估计图。由于密度图重叠,我使用Stata 15中引入的不透明选项使它们透明度达到50%。在这种情况下,我使用颜色名称后面跟着一个%符号和不透明度。我也简化了图例,匹配密度的顺序,并把它放在图示的右上角。
这个图示使我们清楚地看到了1月份气温的区域差异,东北部和北部中心地区的气候分布更冷,更窄,南部和西部的气候相当相似。
Stata默认在内存中保存您绘制的最后一个图形,并将其称为“Graph”。如果你在在创建图形时使用 name() 为图形单独命名,在内存中可以保留多个图形。这对于组合图形很有用, help graph combine 了解更多。请注意,即使您保存了数据,保存在内存中的图表也会在您退出Stata时消失,除非您保存图形本身。
要使用Stata自己的格式将当前图形保存到磁盘上,输入 graph save filename 。该命令有两个选项 replace 和 asis ,如果该文件已存在,则需要使用 replace 选项替代原有图形,而 asis 选项会冻结图形(包括其当前风格),然后将其保存。默认情况下,将图形保存为可在未来可编辑的实时格式。以Stata格式保存图形后,可以使用 graph use filename 命令从磁盘加载它。( graph save 和 graph use 类似于 save 和 use )存储在内存中的任何图形可以使用 graph display [name] 显示。 help graph_manipulation 了解更多信息。
如果您打算将图表合并到另一个文档中,您可能需要将其保存为更便携的格式。Stata的命令 graph export filename 可以使用各种矢量或光栅格式导出图形,通常由文件扩展名指定。您还可以使用 graph print 打印图形,或使用Windows剪贴板将其复制并粘贴到文档中。
‘柒’ 如何用stata画直方图
histo命令可以的
‘捌’ 利用Stata进行概要统计及交互表统计
利用Stata进行概要统计及交互表统计
【命令范式】
summarize y1 y2 y3 对所列变量计算简单的概要统计量
summarize y1 y2 y3, detail 获取详细的描述性统计,包括百分位数,中位数,平均数,标准差,方差,偏度,峰度等。
summarize y1 if x1>3 & x2<.
summarize y1 [fweight=w], detail 利用w作为加权变量进行频数加权,计算y1详细的概要统计量
tabstat y1, stats(mean, sd, skewness, kurtosis) by(x1) 按变量x1的每个类别,分别计算变量y1的具体指定的概要统计量
tabulate x1, sort miss 显示x1所有值的频数分,包括缺失值。按顺序从大到小对行(变量值)进行排序。
tab1 x1 x2 x3 x4 对所列变量分别创建频数分布表
tabulate x1 x2 显示一个两变量交互表,其中x1为行变量,x2为列变量
tab2 x1 x2 x3 x4 创建所列变量的所有可能的二维交互表
tabulate x1, summ(y) 创建一个二维表,显示x1每个类别中变量y的均值、标准差及频数 tabulate x1 x3, sum(y) means 创建一个二维表,显示x1,x2每一种组合下y的均值
by x3, sort: tabulate x1 x2, exact 创建一个三维交互表,在x3的每个取值下创建x1(行)和x2(列)的分表,并为每个分表计算费舍精确检验,命令by x3, sort为x3排序
table x1 x2, contents(mean y1 median y2) 创建x1(行),x2(列)的二维交互表,单元格包含y1的平均数和y2的中位数
svy: tab y, percent ci 使用调查加权的数据,获得变量y的一维百分比表以及95%的置信区间。ci计算置信区间,默认为95%。后可添加level(a)设定置信区间a%
与ci相关的一个命令是cii,它可以直接根据概要统计量,来计算正态分布、二项分布或泊松分布的置信区间。它并不需要原始数据。
svy: tab y x, column percent 使用调查加权的数据,获得一个行变量y对列变量x的二维交互表,并对其狡辩性进行调整的卡方检验。单元格中给出了加权的列百分比。
【探测性数据分析】:
stem x1, lines(*) 对变量x1的所有观测值进行茎叶图处理lines限定了茎叶表达形式:首位数相同的开头共*行
lv x2 字符数值表利用序次统计量来分解一个分布。
【正态性检验和数据转换】:
sktest x1 正态性检验(偏度与峰度)
ladder x1 这个命令把幂阶梯和sktest的正态性检验结合在一起。它对阶梯上的每一种幂进行尝试并报告其结果是否显着地非正态。
gladder x1 该命令将每一种转换的直方图与正态曲线加以比较
qladder x1 四分位阶梯命令
(可键入help ladder查看详细)
【频数表和二维交互表】:
tabulate 有许多对创建二维表非常有用的选项,包括:
cell 显示每个单元格的总百分比
chi2对行变量和列变量独立的假设进行皮尔逊卡方检验
column 显示每个单元格的列百分比
exact 独立性假设的费舍精确检验
expected 显示独立性假定下二维表每个单元格内的期望频数
generate(new) 创造一组名为new1, new2 等的虚拟变量来代表被列表变量的取值
lrchi2 对独立性假设的似然比卡方检验。如果表格包含任何的空单元格,就得不到结果 missing 把缺失值也作为表的一行或一列
nofreq 不显示单元格频数
nolabel 显示数值而不是添加了标签的数值变量的取值标签
row 显示每个单元格的行百分比
tabi 偶尔我们可能需要在没有获得原始数据的情况下对已发表的表格重新进行分析,专门的命令tabi(直接制表)可以完成这项工作
【多表和多维交互表】:
tab1 x1 x2 x3 x4 对所列变量分别创建频数分布表
tab2 x1 x2 x3 x4 创建所列变量的所有可能的二维交互表
by x1, sort: tabulate x2 x3, nofreq col chi2 三维列联表,并对x1每一取值水平内x2,x3的独立性进行卡方检验
by x1 x2, sort: tabulate x3 x4, column chi2 四维交互表
table x1, contents(freq) 创建x1的简单的频数分布表
table x1 x2, contents(freq) by(x3)创建一个二维频数表或交互表,并通过x3分组 table 的contents()选项设定表格单元格要包含什么统计量
contents(freq) 频数
contents(mean x1) x1的平均数
contents(count x1) x1的非缺失值观测案例的计数
contents(p1 x1) x1的第1百分位数
【平均数、中位数以及其他概要统计量的列表】:
tabulate 能够很容易地创建分类变量每一类别的平均数和标准差的列表。比如,如果要列出x1每一类别内x2的平均值,键入:tabulate x1, sum(x2)
创建一个平均值的二维表: tabulate x1 x2, sum(x3) means
table不能进行统计检验,但它能很好地创建多达七维的包含平均数、标准差、总和等统计量的表格。
table x1, contents(mean x2) x1的一维表格,含有x1每一类别下x2的平均值
table x1 x2, contents(mean x3 median x3)
summarize, tabulate, table 以及其他相关命令都可以和标示重复观测数目的频数权数frequency weight 一起使用。
tabulate x1 x2 [fweight=count] (,column nof)
‘玖’ stata描述性统计命令是什么
stata描述性统计命令是一套提供其使用者数据分析、数据管理以及绘制专业图表的完整及整合性统计软件。
它拥有很多功能,包含线性混合模型、均衡重复反复及多项式普罗比模式。用Stata绘制的统计图形相当精美。
Stata具有如下统计分析能力:
数值变量资料的一判闷般分析:参数估计,t检验,单因素和多因素的方差分析,协方差分析,交旦链互效应模型,平衡和非平衡设计,嵌套设计,随机效应,多个均数的两两比较,缺项数据的处理,方差齐性检验,正态性检验,变量变换等。
分类资料的一般分析:参数估计,列联表分析 ( 列联系数,确切概率 ) ,流行病学表格分析等。
等级资料的一般分析:秩变换,秩和检验,秩相关等。
Stata常用功能:
1、统计功能
Stata的统计功能很强,除了传统的统计分析方法外,还收集了近20年发展起来的新方法,如Cox比例风险回归,指数与Weibull回归,多类结果与有序结果的logistic回归,Poisson回归,负二项回归及广义负二项回归,随机效应模型掘迟弯等。
2、作图功能
Stata的作图模块,主要提供如下八种基本图形的制作 : 直方图(histogram),条形图(bar),百分条图 (oneway),百分圆图(pie),散点图(two way),散点图矩阵(matrix),星形图(star),分位数图。
这些图形的巧妙应用,可以满足绝大多数用户的统计作图要求。在有些非绘图命令中,也提供了专门绘制某种图形的功能,如在生存分析中,提供了绘制生存曲线图,回归分析中提供了残差图等。