楼主: voodoo
11798 13

[程序分享] [下载][分享]嫌Stata内置Do file editor不好用,怎么办? [推广有奖]

11
pany198634(未真实交易用户) 在职认证  发表于 2010-10-3 17:47:41
留个记号,以后可以试试呢

stata 11在计量方面最吸引人的地方就是 dynamic factor model,虽然网上也有一些学者自己写的程序,但在商业软件中,这应该是首创。
state space 模型近年来已成为应用时间序列分析中的一个主流,尤其在预测领域,虽然在其他软件中也有这一功能(sas splus ox  eviews),给定stata相当强的ml估计能力和超强的数据操纵能力,应该会有一些有别其他软件的亮点。
已往觉得stata相对eviews最薄弱的地方就是非线性的gmm估计,但11已经彻底改变了这一点。
stata11还有一个令所有穷学生都倍感鼓舞的改进,就是他的所有手册都将有pdf版,这一点终于弥补了他相对于eviews rats 等的一大不足。
毫无疑问,stata11树立了计量统计软件的一个新基准,但仍有两点令人担忧,第一是体积,stata以往最值得炫耀的地方之一就是相对于其功能而言,其体积是最节省的,但11不知是否还能够保持最优的体积和功能之间的权衡,第二,就是运算速度,这是stata一直以来相对与其他软件的一大不足,当然这很大程度上源于stata特殊的程序结构。
stata11 应该已经改变了他的注册机,否则的话,那个全世界都在用的中国人写的注册机应该能继续使用.
下一站,幸福!

12
pany198634(未真实交易用户) 在职认证  发表于 2010-10-4 19:57:08
一、 排在一切的开始help/search
1. help 当你知道一个命令想了解它的具体用法和含义时help command-name
2. search 当你不知道该用什么命令可以输入你关心的词查找到需要的命令
这两个都使用菜单操作更加方便在最右边help 菜单下
3. log using 创建日志文件就是把你输入的命令得出的结果等在stata results
窗口里显示过的东西都存成一个.smc 文件可供以后察看
二、 数据库操作
从其他格式的数据库文件开始
1. 使用statatransfer 转化成stata 格式
2. 如果是Exce 格式可全选复制打开stata 粘贴到空白的数据编辑窗口里面去
3. stata 命令insheet(读用tab 或逗号分隔的文本)/odbc/infile1(读tab 或space 或逗号分开的文本)/infix/infile2 等
从stata 格式的文件开始
1. 打开保存open/ save,可以进行菜单操作当数据库非常大时可能会需要set
memory …* 已经打开数据库的情况下该命令可能不被允许使用

Save 命令的重要选项是replace.就是把同名文件替换掉这里有时候需要小心一些否则的话可能会带来不期望的结果
2. 描述describe/codebook/inspect/summarize/tab/table/display/list
describe 提供变量名变量类型变量标签(label)
codebook 变量名标签非缺生值个数其他统计量type, range, mean, sd, percentile等
inspect 变量名标签该变量数值的结构几个不同值几个正值负值0 值
tabulate 制表有丰富功能
table:制表仅显示离散变量各值的出现频率
summarize 报告均值标准差极值
list: 列举不加任何参数列举所有变量的所有观察值
display 显示后面加的表达式**想把stata 当计算器用的话可以在di 后面输入你要计算的式子回车这个式子里可以有数字定义过的scalar 某个变量的某个观察值如I[23]指的是变量I 的第23 个观察值
*label: 给变量或者变量的值贴标签
3. 变量/观察处理generate/replace/drop/keep/egen
generate: 生成一个变量你需要给它赋值可以用常数缺省. existing 变量的代数式函数注意用函数赋值如gen sumi=sum(i), sumi 的所有观察值都是一样的等于所有I 的加总
replace: 给已有变量赋值结构同gen
drop/keep: 删掉指定变量/除指定变量以外的所有变量
egen 比较智能的变量生成器用于分组加总计数平均等要求数据库sorted by the group.
*从离散变量生成dummies: tab var gen var(var).如果变量var 有3 个不同值就相应生成了3 个dummies 分别命名为var1 var2 var3.
4. 数据库处理keep /drop/merge/append/sort
keep/drop 跟if 条件满足/不满足条件的观察删掉
merge 横向合并数据库当两个数据库描述的大体是同一些个体的不同方面的特征合并起来一描述这些个体的所有特征时使用注意简单一对一合并(merge using “.dta”)区别于按索引合并merge 索引变量 using “.dta”, 这时主客数据库均应按索引变量排序,注意update/update replace 选项
append: 追加观察
sort 排序gsort 智能排序
5. scalar 和matrix 不编程的话用的不多即使用到也是很简单的help 一看就明白
6. function: help function 去找你想用的函数有
Mathematica functions Probability distributions & density functions Random numbers
String functions Programming functions Date functions Time-series functions
Matrix functions 等
三、 估计针对pane data
pane data 的处理需要先制定组代码和时间代码iis …/tis …
1. OLS: reg depenvar covariates, 选项
Predict: 计算残差hat/yhat
变量的系数scalar 存储为_b[变量名]
可以加weight 相当于GLS 处理异方差
2. GLS: pane data 中xtgls 缺省仅假定var( ) var( ) it is u ≠ u ift≠s 即个时期之间存在异方差个体之间方差相同个体之间相互独立时间序列上没有自相关但是通过选项panel(),corr()使协方差矩阵更加复杂当然要求程序运行的时间加长运行gls 需要较大型的矩阵运算所以有时候需要set matsize ….后面的数字最大为800
3. random effect fixed effect: xtreg …., re/ferandom effect 作为一种GLS 和xtgls 的不同之处在于对残差的假定不同Randomeffect 里面没有任何形式的异方差但是同一个pane 内部有相关性而这个相关性与时间没有关系是individua effect 引起的所以不是时间序列意义上的马尔可夫过程
4. test:
Hausman specification test: “help hausman” 有详细步骤描述
5. 报告结果的两个trick
把结果做成表格选定表格注意是表格不能包括回归结果上面的RSS,F, R-square什么的表头右键copy table 贴到exce 里面就是完美的表格了
把几个回归的结果合并在一起报告一个数列的表
step1: 先做一个回归跟上est store 回归名1
step2: 做另一个回归跟上est store 回归名2
StepN+1. est table 回归名1 回归名2 回归名N, se
就会出来一个合并起来的表格加se 选项同时还报告每一个回归系数的标准差
如果把se 换成star 则自动在估计系数右上加上表示显著性水平的*号
四、 do file 的写作
我的经验不多主要是从MR HE 那里听来看来的
1. 注释两种以*开始一句话该句话被认为是注释
命令后面/* */中间的东西被认为是注释当然后面的也是不算命令的
可以在单命令里使用/* */只能在do files 里使用
2. 循环条件语句forvalues/if/…具体用法看帮助
**forvalues 里面引用循环指标(say, a)的时候需要这么写`a’, 注意前后两个引号是不一样的如果不是laborhood 教导我恐怕这辈子也想不出来
五、 画图
画图时非常重要的内容可是stata8 用菜单/对话框的方式实现了就没什么难为的了虽然程序里用的时候必须输命令这个命令要实现的任务可以先用对话框实现一遍stata8自己会把完整的命令写出来
不过stata8 有一点不好graph 命令必须制定画图的类型graph var graph var1 var2 这样的命令不被接受而stata7 里面这两个就分别默认为histogram var; twoway(var1,var2)了还有save graph combine graphs 的问题 就是把画好的几个图列在一个大图里显示Stata8和stata7 也不一样7 里面是graph…, saving(name1),…;graph using name1…; 8 里面是graph…,name(name1); graph combine name1…;
下一站,幸福!

13
geokaran(未真实交易用户) 发表于 2013-3-14 00:55:16
good

14
729521743(未真实交易用户) 发表于 2013-3-18 12:02:12
看看

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-26 04:31