stata do文件

******************************
************ 基础 ************
******************************
{
sysuse auto.dta , clear
gen price_1000=price/1000
label variable price_1000 "price除以1000"
save "auto_new.dta", replace
export excel using "C:\Users\cxin0\Desktop\data.xls", firstrow(varlabels) replace
import excel using "C:\Users\cxin0\Desktop\data.xls", firstrow clear
foreach i of varlist *{
local j = `i'[1]
label variable `i' "`j'"
}
save "auto_excel.dta", replace
sum price
di "price的平均值是:" r(mean)  ",标准差是:" r(sd)
di "price的最大值减最小值是:" r(max)-r(min)
sum price,detail
local P_75=r(p75)
local P_25=r(p25)
local P_50=r(p50)
di "price的中位数=" `P_50' ",下四分位数=" `P_25' ",上四分位数="`P_75'
local n=0
foreach i of numlist 1(2)1000 {
local n = `n'+ `i'
}
di `n'
local n=1
foreach i of numlist 1(2)100 {
local n = `n'*`i'
}
di `n'
global variable_list price weight turn foreign
sum $variable_list
corr $variable_list
gen make_1 = substr(make,1,1)
label variable make_1 "make第一个字符"
gen make_2 = substr(make,1,2)
label variable make_2 "make前两个字符"
gen make_3 = substr(make,4,5)
label variable make_3 "make第4-8各字符"
gen make_length = strlen(make)
label variable make_length "make字符长度"
gen make_upper = upper(make)
label variable make_upper "make变大写"
gen make_lower = lower(make)
label variable make_lower "make变小写"
gen make_o = regexm(make,"o")
label variable make_o "make里是否有o"
gen make_O = subinstr(make,"o","O",.)
label variable make_o "make中小o替换"
gen make_s = subinstr(make," ","",.)
label variable make_o "make中去掉空格"
save "auto_new.dta", replace
//注释
*注释
/*注释*/
}
******************************
********** 合并数据 **********
******************************
{
webuse odd,clear
list
webuse even,clear
list
webuse odd,clear
append using http://www.stata-press.com/data/r16/even
list
save "appenda-data.dta",replace
* 2. Merge 1:1
webuse autosize,clear
list
webuse autoexpense,clear
list
save "autoexpense-data.dta",replace
webuse autosize,clear
merge 1:1 make using "autoexpense-data.dta"
drop if _merge==2
drop if _merge
save "merge1_1,dta",replace
webuse sforce,clear
list
save "sforce.dta",replace
webuse dollars,clear
merge 1:m region using "sforce.dta"
list
drop if _merge
save "merge_m.dta",replace
}
******************************
********** 回归分析 **********
******************************
{
//安装外部命令
ssc install center //中心化
ssc install sum2docx //sum变成论文格式
ssc install corr2docx //相关系数变成论文格式
ssc install estout
sysuse auto.dta,clear
reg price weight length  //price是被解释变量,后面是解释变量
reg price c.weight##c.length //交互项和各自
corr weight length //相关系数
center weight length //中心化
reg price c.weight##c.length //交互项
//reg price c.weight#c.length //只有交互项
orthog weight length , gen (o_*) //正交化
corr o_1 o_2
reg price c.o_1##c.o_2
reg price c.weight##i.foreigh //c.用在连续变量   i用在非连续变量
reg price c.weight##i.foreign , robust //robust:异方差时,看稳健的标准误
reg price c.weight##i.foreign , beta //beta:标准化系数
ssc install utest
gen weight_sqr = weight * weight
reg price weight weight_sqr
utest weight weight_sqr
* 回归结果保存
reg price weight //weight控制变量
est store m1
reg price weight length  //length解释变量
est store m2
reg price c.weight##c.length //length解释变量
est store m3
esttab m1 m2 m3 // 可选参数
// esttab m1 m2 m3 , b(2) se(2) p(2)  保留几位小数 ,用b括号里变成标准误,用p括号里变成p值
esttab m1 m2 m3 using "result.rtf" , b(2) se(2) one label nogap replace
sum2docx weight price using "Table 1 box.docx", replace
corr2docx weight price foreign length using "Table 1 box_corr.docx", replace
}


打赏

暂无评论

发布评论