今天之后将要开启stata的进阶部分,即利用stata分析,需在掌握理论的基础上熟练应用
描述性统计的基本原理及核心参数
量化研究所收集的数据十分庞大,描述性统计分析致力于以简单明白的统计量来描述庞大的数据
分三类
描述中心位置的度量→ 算术平均,中位数,众数
描述波动情况的度量→极差、方差和标准差
描述数据集中一个观测位置的度量→百分位数,z得分
定性变量
定性观测值,用两个参数来反映:频数,频率
频数:落入某一类数中的特定观测值的个数
频率:落入某一类数中的特定观测值的个数占总数的比例
定量变量
定量观测值
描述中心位置的度量
描述波动情况的度量
描述数据集中一个观测位置的度量
集中趋势的度量
均值,算术平均
特点
信息利用充分
易受极端值影响
eg. codebook comments
众数
特点
不受极端值的影响
可能没有众数或很多众数
函数内容
eg. egen m=mode(comment)
中位数
特点
不受极端值的影响
eg. codebook price
三种值的关系
变异程度及相对位置的度量
变异程度的度量
用于衡量数据波动的情况,主要有三个值:极差、方差和标准差
极差
=一个数据集合中最大观测值和最小观测值之差
特点
离散程度的最简单测度值
易受极端值影响
未考虑数据分布
方差与标准差
N个测量值y1,y2,y3,....,yn的样本方差定义为:
S^2为方差
S=(S2)^0.5为标准差
eg. codebook price
切比雪夫法则
可用于任意一个数据,无论其分布是什么形状:
任意一个数据集中,位于其平均数m个标准差范围内的比例(或部分)总是至少为1-1/m2,其
中m为大于1的任意正数。
对于m=2, m= 3和m=5有如下结果:
所有数据中,至少有3/4 (或75% )的数据位于平均数2个标准差范圈内,
所有数据中,至少有8/9 (或88.9% )的数据位于平均数3个标准差范圈内。
所有数据中,至少有24/25 (或96%)的数据位于平均数5个标准差范圈内
以此规则在后面判断异常值
相对位置的度量
测验分数与通常以一个观测值在分布中相对于其他测验分数位置的方式来描述,主要的两个度量:百分位数、Z值
百分位数
数据集的第100p百分位数是这样的y值:使得在数据集的相对频率分布中有100p%的面积位于它的左边,有100(1-p)%的面积位于它的右边
egen newvar=pctile(exp)[,p(#)] #指具体哪个百分位
eg. egen n=pctile(price),p(75) 计算price中的75分位数
eg. codebook price
什么是Z值?
我来举个栗子
现在有两个水平类似的班(1班和2班)上同一门课,由于老师的评分标准不同,使得两个班的成绩均
值和标准差都不一样
1班的分数均值和标准差分别为: 78.53和9.43,
2班的分数均值和标准差分别为 : 70.19和7.00;
1班得到90分的A同学,和2班得到82分的B同学,如何比较呢?
首先,这是两组数据,然后由于均值和标准差不同。其数据不能直接比较,应该首先变成标准化的
数据再比较。所以这里使用标准得分,也就是Z-score
某样本观测值(也就是得分,score )和样本均值之差,除以样本的标准差
所以A同学的分数: Za= ( 90-78.53) /9.43=1.22
B同学的分数: Zb= ( 82-70.19)/7=1.69
所以B同学虽然82分,但还是优异于A同学
一个重要的点! !
Z得分同时描述了以标准差为单位,观测值y相对于均值的位置:负的z表明观测值位于均值的左边,
正的z表明位于右边,由经验法则可知,一个数据集中大部分观测值都在距离均值2个标准差之内
(即z得分绝对值小于2) , 且几乎所有的观测值都在距离均值3个标准差之内(即z得分绝对值小于3 )
参考切比雪夫法则
eg. egen pricemean=mean(price)
egen pricesd=sd(price)
gen z=(price-pricemean)/pricesd
描述性统计的stata实现
实现函数
在stata中,table和tabulate可以实现对定性变量的频数和频率的统计,tabstat和summarize命令
可以实现连续变量的统计描述
这里先介绍tabstat和summarize
先查看数据的整体概况,data0301
查看变量price)
浮点式 无缺失值,0/94 区间15-818 均值111 标准差99.429
summarize
函数内容
eg. summarize S5 S4 S3
eg. summarize price,detail
summarize flavor if area=="渝北区"
eg. sort price
summarize flavor in 1/50
tabstat
与summarize相似,但提供了更加灵活的统计量组合
函数内容
By(var):根据不同的取值分别计算描述性统计量
Statistics(XX):相关命令报表统计量
eg. tabstat price
tabstat price if area=="南岸区"
tabstat price if area=="渝中区"
tabstat price,by (area)
tabstat price,s(mean count sum sd iqr)by(area)