stata入门操作(实证计量第二课)

//缩尾,截尾
ssc install winsor2
winsor2 var1,var2,replace cuts(1,99)
winsor2 var1,var2,replace cuts(1,99) trim
//生成虚拟变量
webuse grunfeld,clear
keep invest
xtile invest3=invest,nq(3)
sort xtile
//建立虚拟变量
xtab xtile,gen(high_)
//调整格式
format %14s Postition

//拟合值
predict yhat,xb
predict yhat1

predict residual,res

//面板分组回归
reg invest mvalue kstock if company==1
predict yhat_com if company==1,xb
predict yhat_com if company==1,res

//分组获取回归的拟合值与残差项
help asreg
asreg invest mvalue kstock ,by(company) fitted
//生成虚拟变量
webuse grunfeld,clear

gen province ="新疆" if company>5 &company<8
replace province ="河南" if company>=8
replace province="浙江" if company<=5

//数值类型
reg invest mvalue stock
reg invest mvalue kstock i.year
reg invest mvalye kstock i.company

//字符串 文本
reg invest mvalue kstock i.province 
xi:reg invest mvalue kstock i.province 

egen province1=group(province)
reg invest mvalue kstock i.province1

pca进行降维
sysuse auto,clear
pca price mpg rep78 headroom weight length displacement foreign 
screeplot,yline(1)
predict pc1,score
p越小越拒绝,就越显著

regress

在这里插入图片描述

//字符串类型与数值类型的转换
webuse destirng1,clear
gen a=code + income
destring code ,replace
gen b=clde +income
destring income,replace
gen c=code+income
//关于egen函数的一些应用
sysuse auto,clear 
keep price 
egen meanprice =mean(price)
egen sdprice=sd(price)
egen mdprice=median(price)
egen minprice=min(price)
egen maxprice=max(price)

egen rowmax1=rowmax(price meanprice)
help egen 
//基础运算
display 7+8
diaplay 7*8

display 7^2
display ln(7)
display log(7)

help log(7)

di 7*8

 sysuse auto,clear
 keep mpg trunk
 generate add=mpg+trunk
 gen lnmpg=ln(mpg)
 gen add1=mpg +trunk if trunk==11
//处理重复样本 unique 
sysuse auto,clear 
expand 2 in 1/2
sort make 
ssc install unique 
unique make 
unique make price
unique Stkcd Year 
duplicates tag make price ,gen(tag1)
duplicates list make 
//剔除重复样本
duplicates drop Stkcd Year ,force 
//生成虚拟变量
sysuse auto,year
//
tabulate foreign
//
summarize foreign

//如果不缺失就是0
gen dummy1=0 if !missing(foreign)
replace dummy1=1 if foreign ==1 & !missing(foreign)

//单一生成
gen dummy2=cond(foreign==1,1,0)
replace dummy2=.if foreign==.

//tab命令生成虚拟变量
tab make,gen(car_)

//通配符
reg price mpg trunk car_*

//在做回归是生成虚拟变量
reg price mpg trunk i.foreign
egen grou_make=group(make)
reg price mpg trunk i.group_make
//样本的保留与删除
sysuse census,clear 
replace pop=. if pop >50000
drop if pop ==.
drop a
keep if pop !=.
drop if Debt>1
keep if Debt<=1
//分组计算
clear
set obs 40
gen id = _n
egen industry = cut(id), at(1(10)45)
expand 5
bysort id: gen year = _n +2003
xtset id year
gen sale = int(200+rnormal()*20)

order year industry
sort year industry
by year industry :egen compete =conut(id)

bysort year industry: egen all_sales=sum(sale)

sort id 
by id: egen all_sales =sum(sale)
bysort id :egen all_sales =sum(sale)
global x "lidengjia"
local  a "lidengjia"
$x
~''a
//排序
sort 
gsort 

sysuse auto,clear
keep mpg price 
keep in  1/20
list 
list mpg 
sort mpg 
gsort mpg 
gort  mpg -price 
//导出相同样本量的描述性统计
sysuse auto,clear 
replace price =. if price == 3299
replace mpg=. if mpg == 21
//描述性统计
tabstat price mpg rep78,s(N mean p50 sd )
tabstat price mpg rep78,s(N mean p50 sd ) columns(s)

egen miss =rmiss(price mpg rep78)
drop if miss==1
tabstat price mpg rep78, s(N mean p50 sd) columns(s)

logout,save(mytable) word replace :tabstat price mpg rep78,s (N mean p50 sd ) f(%12.3f) columns(s)
//数据集等分
wbuse grunfeld,clear 
keep invest 
xtile invest3 =invest ,nq(3)
sort invest

tab invest3,gen(high_)
//预测值和参茶之
predict yhat,xb
predict yhat1
predict residual,res
reg invest mvalue kstock if commpay==1
predict yhat_com if commpany==1,xb
predict residual_com if company==1,res 

help asreg 
asreg invest mvalue kstock,by(company) fitted 
//虚拟变量回归
webuse grunfeld,clear 
gen province ='新疆' if company >5 & company<8
replace province ="河南" if company>=8
replace province ="浙江" if company <=5

reg invest mvalue kstock 
reg invest mvalue kstock i.year
reg invest mvalue kstock i.company

reg invest mvalue kstock i.province 
xi:reg invest mvalue kstock i.company

egen province1=group(province)
reg invest mvalue kstock i.province1
//分组变量比较多
bysort race:reg ln_wage ttl_exp tenure hours
bys race:reg lv_wage ttl_exp tenure hours
xtset idcode year
xtreg ln_wage ttl_exp tenure hours if race ==1,fe
xtreg ln_wage ttl_exp tenure hours if race ==2,fe
xtreg ln_wage ttl_exp tenure hours if race ==3,fe

xtset idcode year
bys race:xtreg ln_wage ttl_exp tenure hours,fe  
//统计回归结果的输出
reg invest mvalue kstock i.province,robust
est store m4
est store ols 
est store fe 
est store re 
esttab ols fe re using 1.rtf ,replace title('回归结果输出') mtitle(“混合回归” “固定效应模型” “随机效应模型”) star(* 0.1 * ** 0.05** ***0.01*** ) r2 scalars(F) nogap
//描述性统计
cd e://
sysuse auto.dta
ivregress 2sls mpg weight (length=displacement),first
est restore first 
outreg2 using twosage.doc,cctop(first stage) bdec(4) replace 
est restore second 
outreg2 using twostage.doc,cctop(second state) bdec(3) 

在这里插入图片描述
在这里插入图片描述

sysuse auto,clear 
reg price mpg headroom

gen interact =mpg *headroom
reg price mpg headroom interact

#既包含变量本身,又包含两个变量的交互项
reg price c.mpg##c.headroom
#只包含两个变量的交互项
reg price c.mpg#c.headroom

#回归中要生成虚拟变量
tab rep78
reg price mpg headroom i.rep78#c.headroom
reg price mpg headroom c.rep78#c.headroom

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值