金融计量学1

第一题

请使用 sysuse nlsw88.dta, clear 命令调入 Stata 数据文件 nls88.dta, 并完成如下统计分析:

(1). 统计如下变量的平均值、标准差、中位数、最小值和最大值,并列表呈现出来,并输出为 Excel 或 Word 文档,名称为 Table01.xlsx 或 Table01.docx:
age grade wage hours ttl_exp tenure

sysuse nlsw88.dta, clear
logout, save(Table01.xlsx)  excel replace: ///
sum age grade wage hours ttl_exp tenure

输出Excel结果如下:
金融计量学1
(2).产生如下变量:
age2 : 该变量的所有观察值等于 age 变量中相应观察值的平方
ln_wage = ln(wage) : 工资变量的自然对数
wage_hour = wage/hours : 工资变量 wage 与小时 hours 的比值
dum : 该变量是一个虚拟变量(dummy variable),其取值为:
dum = 1 如果某个妇女的 wage 大于所有妇女的平均工资
dum = 0 如果某个妇女的 wage 小于或等于所有妇女的平均工资

gen age2=age*age
gen ln_wage = ln(wage)
gen wage_hour = wage/hours
egen m=mean(wage)
gen dum=(wage>m)

(3).绘制 ttl_exp 变量的直方图和密度函数图,分别保存/输出 (提示:可使用 graph export 命令) 为 His_ttl.png 和 Kendi_ttl.png,并作简单解释。

histogram ttl_exp
graph export His_ttl.png, replace
kdensity ttl_exp
graph export Kendi_ttl.png, replace  

金融计量学1
金融计量学1
比较这两幅图可以看出,大部分人的工作经验在5~20之间,且在15年左右的人很多。
(4).industry 变量表示妇女所在的行业,请做如下统计:
(1) 每个行业的观察值个数;

tab industry

金融计量学1
(2) 各个行业妇女的平均工资(wage)、平均工作时数(hours)、平均年龄(age);

tabstat wage hours age, stat(mean) ///
 by(industry) f(%3.2f) col(v)

金融计量学1
(3) 列表统计不同行业中白种人、黑种人和其他人种的比例

bysort industry: tab race

金融计量学1
金融计量学1
金融计量学1
金融计量学1
金融计量学1
(5).请使用 label define 和 label value 命令,把 race 变量中的数值做如下定义:1 —— “白种人”;2 —— “黑种人”;3 —— “其它”

label define 1"白种人"2"黑种人"3"其它"

(6).续别变量转类别变量。
(1) 产生一个新变量 G_age,取值规则为:若 age<=37,则 G_age=1;若 37<age<=42,则 G_age=2;若 age>42,则 G_age=3;
(2) 为 G_age 变量添加 “数字-文字”对应表 ,对应关系为:1 “37岁以下”;2 “38到42岁之间”;3 “43岁以上”。
(提示:可以使用 label define 和 label value 两个命令)

gen G_age=0
replace G_age=1 if (age<=37)
replace G_age=2 if (37<age<=42)
replace G_age=3 if (age>42)
label define 1"37岁以下"2"38到42岁之间"3"43岁以上"

第二题

请使用 webuse “nhanes2f.dta”, clear 命令调入 Stata 数据文件 nhanes2f.dta, 并完成如下分析

(1)产生一个新的变量 av_height, 其数值等于各种族(race)妇女的平均身高(height); 提示: 可是使用 egen 命令提供的 mean() 函数。

egen av_height=mean(height)

(2)产生一个新的变量 sd_height, 其数值是变量 height 的标准化数值;提示: 可是使用 egen 命令提供的 std() 函数;或采用外部命令 center 进行处理。后者更为简洁。

egen sd_height=std(height)

(3)性别(sex)、种族(race)、所在地区(region)一共可以构成多少种组合(组态别)?每种组合中有多少个样本数?请选用合适的命令列出结果。

bysort sex: tab(race region)

金融计量学1
(4)在变量 tcresult tgresult hdresult corpuscl health sizplace 中,哪些包含缺漏值?各自包含多少个缺漏值?请删除 tgresult hdresult corpuscl 中包含的缺漏值(并集,只要有一个变量包含缺漏值,则删除其所在行的全部观察值)

egen miss1=rmiss(tcresult)
 count if miss1>0
egen miss2=rmiss(tgresult)
 count if miss2>0
egen miss3=rmiss(hdresult)
 count if miss3>0
egen miss4=rmiss(corpuscl)
 count if miss4>0
egen miss5=rmiss(health)
 count if miss5>0
egen miss6=rmiss(sizplace)
 count if miss6>0     //也可用mdesc
 drop if tgresult==.|hdresult==.|corpuscl==.   //根据miss的值也可以

根据输出结果有
tcresult tgresult hdresult corpuscl health sizplace对应的缺漏值有 0 5,293 1,629 89 2 0

(5)height 变量的第 25 百分位,第 75 百分位数值是多少?四分位间距是多少?上界和下界分别是多少?

sum height, detail       //centile height, centile(25,75);百分位数值可直接计算出来
tabstat height, s(iqr)
display r(p25)
display r(p75)
display r(p75)+1.5*(r(p75)-r(p25))
display r(p25)+1.5*(r(p75)-r(p25))

得到结果为
r(p25)=160.5
r(p75)=174.59801
upper adjacent=195.74502
lower adjacent=139.35299
金融计量学1
(6)请绘制 height 和 weight 变量的 “箱形图”,并作简要对比分析。

graph box height weight

金融计量学1
从图中可看出,对于height来说,离群值在上下都有分布,而weight的离群值主要分布在上方。
(7)请产生一个新的变量 height_w,该变量是对变量 height 在第 1 和第 99 百分位进行 “缩尾”(winsor) 处理后得到的。

winsor height, gen(height_w)  p(0.01)//也可用winsor2