第六讲stata程序管理ppt课件.ppt_第1页
第六讲stata程序管理ppt课件.ppt_第2页
第六讲stata程序管理ppt课件.ppt_第3页
第六讲stata程序管理ppt课件.ppt_第4页
第六讲stata程序管理ppt课件.ppt_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六讲stata程序编写与管理 第一种方法 直接写dofile 打开do编辑器 doedit一个简单的dofiledisplay hello world exit 告诉stata在这程序结束 exit可不写保存为hello do在command窗口输入dohellostata会显示display hello world hello world 第二种 在stata窗口中输入 stata显示 programhello1 display hello world 2 end执行 hello显示 hello world将hello world修改为hello cufeprogramhellohelloalreadydefinedr 110 解决方法 programdrophello注意 program名不能与stata中的命令名一致programdesdisplay hello world end 第二种 在stata窗口中输入 programhellodisplayhello cufeend查找语法错误 settraceon关闭该功能 settraceoff 第三种 dofile中的program programhellodisplay hello world endstata中输入 dohellostata显示 helloalreadydefinedr 110 stata输入 programdrophellodohello 或用runhellohello 第四种 dofile的扩展 programhellodis hello world endhelloexit如果加上programdrophello解决方法 capture 第五种 adofile adofile是stata中的可执行文件programhellodis hello world endexit执行时输入 programdrophellohellostata显示 hello world adofile的保存地址 adofile只有放在指定的文件夹中才能运行adopath命令adopath c ado personal 增加新的adofile存放地址adopath c ado personal 移除adofile目录注意 可以将自己的程序统一存放于D stata ado personal myado同时在pro文件中做如下定义adopath D stata ado personal myado该文件夹下可以进一步设定a z的子文件夹 一个完整的dofile文件 capturelogclose 检查log的状态为closelogusingx replace 打开logxsetmoreoffcaptureprogramdrophelloprogramhellodis hello world endlogclose 关闭logexit 保存为sj do dofile的引用 dosjexit 保存为sj2 dodosj2 assert的用法 assert是stata的重要命令 如果assert后的表达式为true 则stata继续执行命令 否则stata会提示出错captureprogramdropsj2sysuseauto clearassertforeign 2exit 保存为sj2 do preserve的用法 preserve可以避免数据在程序执行后有所变动sysuseauto clearpreserve 备份当前状态S1dropifprice 10000sumsavenauto replacerestore 恢复到状态S1sumusenauto clear quietly的用法 quietly可以避免列印过多的结果比较两段代码captureprogramdropsjprogramsjsysuseauto cleardropifprice 1000savenauto replaceendcaptureprogramdropsjprogramsjsysuseauto clearquietlydropifprice 1000savenauto replaceend 单值Scalar 存放数值scalara 3scalarb ln a 5disadisb存放字符串scalarc adiscscalars1 hello world scalars2 substr s1 1 5 diss1diss2 执行命令后的单值结果 sysuseauto clearsumpricereturnlistdisr N scalarrange r max r min disrangegenqq r sd listqqin1 10 单值管理 scalardirscalarlist 显示单值的内容scalardropa 删除单值scalarlistscalardropall 删除所有单值scalarlist 暂元变量localmacro local 在一个do或adofile中发挥作用暂元的定义与引用存放数字locala 5dis a localb a 7dis b 存放文字localname1 sj dis name1 localname2 中央财经大学会计学院 dis name2 localname3 name1 name2 dis name3 存放变量名称sysuseauto clearlocalvarllistpriceweightsum varlist Local 数学运算符的处理 locala 2 2 dis a dis a 看这两个有何区别localb 2 2 注意与a的定义的区别dis b dis b 暂元中的暂元 locala1 2locala2 var locala3 2 a1 locala4 a a1 local a2 a1 2 a3 dis a1 dis a2 dis a3 dis a4 全局暂元globalmacro 定义与引用方式 全局暂元 在整个stata运行的过程中一直存在定义与引用方式 globalaa Thisismyfirstprogram dis aa globalx1 5globalx2 2 x1dis x2示例 sysuesauto clearglobaloption robust globalreg regress localx1 pricempgforeign regrep78 x1 optionlocalx2 pricempgforeigntrunk regrep78 x1 option regrep78 x2 option 暂元的管理 macrolistmacrodirmacrodropx2macrodirx2macrodiraa 暂时性变量tempvar sysuseauto cleartempvarx1x2gen x1 price 2gen x2 ln rep78 sum x1 x2 暂时性变量可以与永久变量同名 循环语句 while语句forvalues语句foreach语句 条件循环语句 while localj 0while j 5 disa j localj j 1 循环语句 forvalues locali 1localj Nforvaluesi 1 1 j disa I forvaluesi 0 1 14 disa i forvalues应用示例 假设你有100个文件 分别为d1 dta d2 dta d100 dta研究要求将这100个文件做纵向合并 写出程序used1 dta clearlocali 2forvaluesi 2 1 100 appendusingd i dta savefinaldata replace 循环语句 foreach foreachvarofvarlistxyz command 示例1 将auto dta各变量的对数转换和缩尾处理sysuseauto clearlocalvarspriceweightlengthforeachvofvarlist vars genln v ln v winsor v gen v w p 0 01 条件语句 if 语法格式格式1if 条件 command 格式2if 条件1 command1 elseif 条件2 这里可以没有ifcommand2 条件语句 if示例 scalaraa 1ifaa 1 dis 这小子真帅 elseifaa 0 dis 这女孩真亮 引用stata命令的返回值 留存在内存中的结果r class 与模型估计无关的命令 如sume class 与模型估计有关的命令 如regresss class 其他命令 如listc class 存储系统参数显示留存值的方法r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论