Stata代码解释(配合demo1代码)
更新时间:2023-10-14 20:12:01 阅读量: 综合文库 文档下载
- stata代码解读推荐度:
- 相关推荐
在stata代码第二行的(有铅笔在纸上写字)的图标打开代码文件 在打开的DO-file中open-file,点击.do结尾的文件(demo.do) 红色:路径 绿色:注释 蓝色:代码
1-8行:相当于表头
11-14行,是每一个stata代码中都有的
clear all——清空STATA所有文件中的数据,重新开始
cap log close——关闭之前打开的log文件(后面会说是什么)
set more off——跑一个特别长的回归,STATA会显示一个more,要一直点才会不断出现,如果一开始就这么写的话就不会出现这个情况
cd \课件/17秋计量/Stata_0923\——固定stata的工作目录,打开数据、存储数据、打开log、存储log文件、输出表格的操作就都不用输这个路径了,直接输文件的名字就好! 把STATA的工作目录调到一个工作路径上,打开数据时,要找到数据所在路径并复制粘贴到这个部分就行, .dta前面的部分
选定所想运行的代码,点do_file里最上面的第二行小图标里面的Do就可以了 然后返回输出界面看,如果有红色字体就是报错
Log文件:
Log就是日志的意思
相当于就将所有操作过程、代码、执行情况都记录在一个.txt的文件中,防止写代码的时候忘记保存code.突然停电等情况, Help:
执行help log文件就会自动跳出stata的帮助文件,这个文件中就会系统的介绍log的用法 Help+一个指令,运行时就会自动跳出stata关于该指令的帮助文件,系统介绍这个指令的用法
如何导入数据:
如果数据时一个.dta文件,就直接在操作界面中打开数据就好 use 文件名称.dta, clear
(clear的作用是如果现在你正在使用另一个数据,如果没有clear那么就会报错,相当于先关掉你之前正在处理的数据,重新打开一个新的数据,如果你之前处理的数据没有保存的话,那么stata会直接关闭不保存,所以一定要先保存再打开)
运行一下,到操作页面看,右边就是出现的所有变量,下面就是变量的描述 这一个数据集是在古德里奇里面所附的,助教已经发到论坛上了
操作页面上面的小图标里:在dofile的右边有data editor, data editor browse,
Data editor browse 打开以后就是整个样本集的全貌,几个变量,几个样本点,可以浏览数据(不能编辑)
Data editor点开以后,和browse的页面一样,但是可以对数据进行编辑 所以不鼓励用data editor Excel 也可以直接打开
默认将第一行作为变量名 剩下的都是数据
import excel using (excel文件名).xlsx, first clear
不输入first的话,会把所有的格都当做数据,如果输入first clear的话,stata会将第一行作为变量名而非数据
Stata识别命令的时候会以行为单位的,相当于会先执行一行的,再执行下一行,所以如果一行命令很长的时候,可以换行,否则会一直从左边写到右边去
换行的时候先打一个空格,再接三条从右上向左下的斜线///,stata自动将这种代码当做一行处理
38.39行
执行browse指令,就相当于刚刚点开了放大镜的那个小图标 执行edit也一样,相当于点开刚刚的小图标
如何保存处理过后的数据 46行
save (取一个你想命名的名字)_1.dta,replace
注意要有_1,要不然之前原始的文件就会被换成新的文件 Replace必须写,相当于把之前的文件替换掉,不然会报错
Describe:变量的基本信息,是数值型的还是字符型的,先给你展示一下 第一列就是变量的类型:整数、小数型的 第二列是腐烂了美团
第三列是label:我们存变量的时候,之后会有很多的操作,所以变量名不会很长,所以取名会比较精简,但是为了防止之后不知道所写的是什么,就会加一个label,解释一下这个变量名
如果describe之后没有加任何东西的话,就是默认展示所有变量
如果describe之后加上一个变量例如wage,就只会展示wage的变量名 Describe可以缩写为d
之前的browse 也可以写为bro
哪些变量可以缩写,可以点击help进行查看
Codebook
展示一些具体的描述性统计
例如61行codebook,可以看出取值范围,非重复的值是多少,标准差,均值,最大最小值等
Summary(缩写为sum)和codebook一样
Sum wage, detail则会更详细一些,会告诉你很多分位数上的值是多少
如果想调用其中的一个数值,
一个就是复制下来粘贴,但是不美观也容易出错
另一个就是生成一个数值变量——scalar,例如把工资的平均值赋成一个数值变量
(插一句:stata的变量分为两种,一种是wage这种相当于一个项量,另一个是stata自己生成的一个相当于标量)
赋成数值变量的方式就是scalar (你所取的名字,例如wage_average)=r(mean)(你所调取的stata内部给这个量所取的名字)
如何知道stata对这个量的内部名字呢?
就是在sum wage 之后执行一个 return list,就可以看到stata内部对某一个值的内部标定,
想赋哪一个值就可以将前面的标定引用
Scalar 生成之后,stata就会自动保存下来,之后每一次想用的时候就输自己取的这个名字就好,例如你想让stata展示一下这个值的大小,就写display(缩写为dis)wage_avg就可以了
Tabstat,就是把变量的信息以表格的形式呈现出来(助教说这个和tabulate说反了,是看描述进行统计的)
Tab educ, stat( mean min max) by (urban)他就会具体的呈现出来
by (urban)就涉及两个变量了,就是在农村住的人,平均受教育年份是13.21,城市里住的人的受教育年份是14.56
tabulate feduc 是看具体的值,出现了几次
tabulate father education(指令打做tabulate feduc) 就是这个值出现了多少次都呈现出来,父亲的受教育程度0是文盲,有受过1年教育,一直到18年教育的phd,右边的frequent就是出现过多少次,再右边一列就是百分比,再右边一列就是累计的百分比,相当于统计当中的F的值
tab feduc, miss(也可以写作tab feduc, m)相当于把缺失的数据也展出出来 这个是用来看数据的分布和缺失程度的,非常重要
可以看变量之间二维的分布
就是在tab之后输入两个变量(例如tab south urban)south也是一个零变量,1代表来自南方,0代表来自北方,urban1则是1代表来自城里,0代表来自农村 之后以行出现south,以列出现urban
tab south urban,row就是以行为单位出现百分比,表现出在所有的北方人里面大概75%是南方人,在所有的列里面大概65%是城里人 tab south urban,chi2 就是做一个卡方检验,看这两个变量的分布上有没有显著性的y依赖于x的分布关系
94行
tab south urban, summ(wage) means看工资的平均值分为南方的城里农村以及北方的城里农村
95-97一样的意思
Correlation(简写做corr)就是看协方差和相关系数
Correduc wage就是得到两个的相关系数(正值就是正相关,负值就是负相关)
correduc wage, cov就是得到两个变量的协方差矩阵,左上角是教育程度的方差,右下角是工资的方差,左下角就是协方差
同样可以用return list 调取代数,并用scalar赋值变量
correducmeducfeduc 的话,涉及三个变量,最后就会反应他们之间的两两关系 list就是可以把brouse当中的几行数据调取出来
sort这个指令很重要,相当于excel当中的排序,sort hours就是把所有数据按照工作时长排序,(先执行之后再brouse一下看看) 从大到小排序——gsort hours order feducmeduc就是将这个变量放在最前面,后面再跟什么工作时长、教育年限之类的其他变量
scalar pi = 3.1415926,这是你取的名字,之后你再想用的时候就可以直接打pi就好
但这是一个数值变量,你如何生成一个变量、即一个项量呢?就是用generate这个指令,简写做gen,比如你想将每个人都算一个年龄的平方,例子见133行
另外例子:取工资的对数:generatelnwage = log(wage)
生成一个新的变量之后就要养成贴标签的习惯,label varage_sq \因为标签是文本,所以要加上双引号
另外一种标签是数据标签——label define urbanlabel 1 \是先生成一个数值标签(urbanlabel也是自己取的名字)相当于做衣服,label values就是将urbanlabel这个标签穿在urban上(给变量贴数值标签也重要) 生成随机数,了解就好: 做一些数值模拟的时候会用到
gen random1 = runiform()在(0.1)上生成随机分布的随机数,random1就是自己命的名 gen random2 = rnormal(0)(这个没有解释)
gen wage_k = wage/1000就是新生成一个单位,原来的单位是美元,现在自己新生成一个单位叫做千美元label varwage_k \:1000yuan)\
gen obsID = _n 按照顺序生成了一个编号(_n在stata当中就是自动生成1.2.3….) 只有每一个人都有了一个相应的编号,就可以把不同的数据集相互合并
egen比gen可以执行更为复杂的操作
egenIQ_rank = rank(IQ)就是按照IQ进行排序
bysorteduc: egenwage_byeduc = mean(wage)就是按照受教育程度来求工资的平均值,bysort就是同时也按education从小到大排序 对变量重新命名——见165行 变量的类型也可以调换
正在阅读:
Stata代码解释(配合demo1代码)10-14
英语动词的种类 - 图文10-17
七岁儿童心理与行为特征08-07
网络推广部工作内容及考核规定08-29
环评技术文件编写基本要求08-16
2022-2022学年湖北省武汉市武昌区八年级(上)期末物理试卷(可打印04-13
XX水库2012年创先争优活动工作要点03-17
2013年宁乡县中小学生田径运动会秩序册 2 - 图文09-30
民办学校章程示范文本09-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 代码
- 配合
- 解释
- Stata
- demo1
- 浙江省10定额综合解释一
- 2016超星个人理财规划99分答案
- 物理化学教案
- 2019年小学音乐教师个人工作总结3
- 语言学论文选题
- 七年级英语下册 Unit 1 A Trip to the Silk Road教案(新版)冀教版
- 全过程造价控制咨询方案
- ABAP 面试及答案 Interview+Questions
- 电子技术实验指导书(机械电子工程专业终版)概要
- 企业传承面临的困境、原因及对策分析
- 13清单培训 - 图文
- HECTE指导IP基础9
- 中铁1局到25局联系方式
- 汽车基本构造论文
- 2016 - 2017学年七年级语文上学期第一次学业质量检测试题苏教版
- 第4章 非线性规划-张 - 图文
- 浅谈提高写作水平的一点方法
- 供电系统简答题
- 第十课素质练习
- 吉林省长白山一高2013学年高二数学选修2-1第三章综合能力检测