STATA第五讲教程
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对外经济贸易大学金融学院 谢海滨 International Business School, UIBE
计量经济软件及应用
STATA硕士研究生班
第五讲、命令语句结构与运算符
STATA是当前最为流行 的统计计量分析之一
STATA的广泛应用:
-1.运算符及运算 -2.命令语句结构
->1 命令(command) ->2 变量(varlist) ->3 分类变量(by varlist) ->4 赋值(=exp) ->5 条件(if exp) ->6 范围(in range) ->7 加权(weight) ->8 可选(option)
– 现在假定学校想了解数学成绩在80~90分 和90分以上的人数,有人写出如下命令进 行统计
– gen Math_9=(Math>=90)//成绩在90及 以上的
– gen Math_8=(Math<90)&(Math>=80)//成 绩在80~90之间
– list Math Math_9 Matwk.baidu.com_8//显示结果
• 逻辑运算
– 逻辑运算符包括非(!或者~),和(&)、或(|)三种,大量运用在条 件和判断语句中。
– sysuse auto.dta, clear //导入系统自带的汽车数据文件 – list if (price>5000)&(foreign==1)//显示价格超过5000的国外车的基本
特征 – list turn if ((price<5000)|(price>10000))&(foreign==1)//显示价格小
– 显然这种统计方式是错误的,因为他将缺 考的John的数学成绩当成超过90分来处理。
Stu_id 1 2 3 4 5 6
Name John Marry Jack Tom Jerry Jim
Chinese . 80 78 77 87 87
Math . 90 60 85 86 60
第五讲、命令语句结构与运算符
– dis 3>5 //dis是display的简写,显示结果为0 ,表示关系式不对 – dis 3<5 //显示结果为1,表示关系式正确 – dis 4==4 //显示结果为1,表示关系式正确 – 在进行关系运算中一定要注意缺失值,因为在STATA中,系统缺失值大于
任何一个数据。
•例
– 下面举例说明忽略缺失值的严重后果。假 定有如下的学生成绩数据,由于John缺考, 因此成绩缺失。
代数运算
“加”
+
或“字
符相加”
“减”
-
或“负
号”
*
乘
/ ^ sqrt()
除 指数 开方
逻辑运算
&
“与” 或“和”
关系运算
>
大于
|
或
<
小于
~
“非” 或“不”
>=
大于等 于
!
“非” 或“不”
<=
小于等 于
==
等于
~=或! =
不等于
第五讲、命令语句结构与运算符
• 代数运算
– 代数运算是最基本的数据处理,它包括包括加(+)、减(-)、乘(*)、 除(/),幂(^)和负数(-)。在进行代数运算时,如果遇到缺失值、 运算不可行时(比如除数为零)或运算不用执行时均会得到缺失值。
第五讲、命令语句结构与运算符
• 字符运算
– 当需要把两个字符进行连接时,同样可以用加号(+)来完成。比如,把 “我”和“爱你”合并在一起,命令为:
– scalar a= “I”+ “Love U”//将字符I和Love U连接并赋予a。注意:引 号必须是在英文半角状态,否则出错。
– scalar list a// 显示a的内容 – 不可以将不同类型的数据进行相加,否则将出错。例如,把数值型数据2
于5000或者价格超过10000的国外车的转速 – 注意,在 STATA 中,和(&)优先于或(|)。问下面的命令代表什么含
义? – list turn if (price<5000)|(price>10000)&(foreign==1)
第五讲、命令语句结构与运算符
• 命令语句的格式
– 通过前面几讲的学习,相信大家对命令多少有了点自己的了解。本 讲将介绍STATA命令语句的一般性格式:
– [by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
– 一般性格式中包含有如下几个组成部分:命令(command)、变量 列表(varlist)、分类(by)、赋值(=exp)、条件(if exp)、 范围(in range)、权重(weight)、可选项(options)。其中, [ ]表示可有可无的项,否则为必选项,显然只有 command 是必不可 少的。下面我们将结合具体的例子来讲解各个组成部分的含义及功 能。
– 如只给女生成绩进行开方在乘以10进行调整,则可以用如下命令 – use Math_score.dta, clear //将数学成绩文件打开 – gen math_female=sqrt(math)*10 if gender==0//将女生数学成绩进
行调整,并将调整后的成绩记为math_female
和字符型数据3相加就会出错。 – scalar a= 5+ “3”//将数值2和字符3相加,结果出错 – type mismatch – r(109);
第五讲、命令语句结构与运算符
• 关系运算
– 关系运算包括大于、小于、等于;大于等于、小于等于、不等于等多种比 较关系。特别要注意的是,STATA中的等于符号为“==”,是两个等号连 写在一起,表示比较两边的关系式是否相等,它不同于“=”。“=”的 含义是将等号右边的值赋予左边的变量,这是一个赋值号。当关系式满足 是,显示结果为1(表示关系式正确),否则显示结果为0(表示关系式错 误)
第五讲、命令语句结构与运算符
• 运算符与运算
– 对数据进行加工,不可避免 的会涉及到数据的运算。 STATA共有四种运算:代数 运算、字符运算、逻辑运算 和关系运算。各种运算的运 算符见右表。
– 运算的优先级(从高到 低):!(或~),^,-(负 号),/,*,-(减), +,!=(或 ~=),>,<,<=,>=,==,&,| 当 忘记或者无法确定优先序的 时候,最好用括号将优先序 表达出来,在最里层括号中 的表示式将被优先执行
计量经济软件及应用
STATA硕士研究生班
第五讲、命令语句结构与运算符
STATA是当前最为流行 的统计计量分析之一
STATA的广泛应用:
-1.运算符及运算 -2.命令语句结构
->1 命令(command) ->2 变量(varlist) ->3 分类变量(by varlist) ->4 赋值(=exp) ->5 条件(if exp) ->6 范围(in range) ->7 加权(weight) ->8 可选(option)
– 现在假定学校想了解数学成绩在80~90分 和90分以上的人数,有人写出如下命令进 行统计
– gen Math_9=(Math>=90)//成绩在90及 以上的
– gen Math_8=(Math<90)&(Math>=80)//成 绩在80~90之间
– list Math Math_9 Matwk.baidu.com_8//显示结果
• 逻辑运算
– 逻辑运算符包括非(!或者~),和(&)、或(|)三种,大量运用在条 件和判断语句中。
– sysuse auto.dta, clear //导入系统自带的汽车数据文件 – list if (price>5000)&(foreign==1)//显示价格超过5000的国外车的基本
特征 – list turn if ((price<5000)|(price>10000))&(foreign==1)//显示价格小
– 显然这种统计方式是错误的,因为他将缺 考的John的数学成绩当成超过90分来处理。
Stu_id 1 2 3 4 5 6
Name John Marry Jack Tom Jerry Jim
Chinese . 80 78 77 87 87
Math . 90 60 85 86 60
第五讲、命令语句结构与运算符
– dis 3>5 //dis是display的简写,显示结果为0 ,表示关系式不对 – dis 3<5 //显示结果为1,表示关系式正确 – dis 4==4 //显示结果为1,表示关系式正确 – 在进行关系运算中一定要注意缺失值,因为在STATA中,系统缺失值大于
任何一个数据。
•例
– 下面举例说明忽略缺失值的严重后果。假 定有如下的学生成绩数据,由于John缺考, 因此成绩缺失。
代数运算
“加”
+
或“字
符相加”
“减”
-
或“负
号”
*
乘
/ ^ sqrt()
除 指数 开方
逻辑运算
&
“与” 或“和”
关系运算
>
大于
|
或
<
小于
~
“非” 或“不”
>=
大于等 于
!
“非” 或“不”
<=
小于等 于
==
等于
~=或! =
不等于
第五讲、命令语句结构与运算符
• 代数运算
– 代数运算是最基本的数据处理,它包括包括加(+)、减(-)、乘(*)、 除(/),幂(^)和负数(-)。在进行代数运算时,如果遇到缺失值、 运算不可行时(比如除数为零)或运算不用执行时均会得到缺失值。
第五讲、命令语句结构与运算符
• 字符运算
– 当需要把两个字符进行连接时,同样可以用加号(+)来完成。比如,把 “我”和“爱你”合并在一起,命令为:
– scalar a= “I”+ “Love U”//将字符I和Love U连接并赋予a。注意:引 号必须是在英文半角状态,否则出错。
– scalar list a// 显示a的内容 – 不可以将不同类型的数据进行相加,否则将出错。例如,把数值型数据2
于5000或者价格超过10000的国外车的转速 – 注意,在 STATA 中,和(&)优先于或(|)。问下面的命令代表什么含
义? – list turn if (price<5000)|(price>10000)&(foreign==1)
第五讲、命令语句结构与运算符
• 命令语句的格式
– 通过前面几讲的学习,相信大家对命令多少有了点自己的了解。本 讲将介绍STATA命令语句的一般性格式:
– [by varlist:] command [varlist] [=exp] [if exp] [in range] [weight] [, options]
– 一般性格式中包含有如下几个组成部分:命令(command)、变量 列表(varlist)、分类(by)、赋值(=exp)、条件(if exp)、 范围(in range)、权重(weight)、可选项(options)。其中, [ ]表示可有可无的项,否则为必选项,显然只有 command 是必不可 少的。下面我们将结合具体的例子来讲解各个组成部分的含义及功 能。
– 如只给女生成绩进行开方在乘以10进行调整,则可以用如下命令 – use Math_score.dta, clear //将数学成绩文件打开 – gen math_female=sqrt(math)*10 if gender==0//将女生数学成绩进
行调整,并将调整后的成绩记为math_female
和字符型数据3相加就会出错。 – scalar a= 5+ “3”//将数值2和字符3相加,结果出错 – type mismatch – r(109);
第五讲、命令语句结构与运算符
• 关系运算
– 关系运算包括大于、小于、等于;大于等于、小于等于、不等于等多种比 较关系。特别要注意的是,STATA中的等于符号为“==”,是两个等号连 写在一起,表示比较两边的关系式是否相等,它不同于“=”。“=”的 含义是将等号右边的值赋予左边的变量,这是一个赋值号。当关系式满足 是,显示结果为1(表示关系式正确),否则显示结果为0(表示关系式错 误)
第五讲、命令语句结构与运算符
• 运算符与运算
– 对数据进行加工,不可避免 的会涉及到数据的运算。 STATA共有四种运算:代数 运算、字符运算、逻辑运算 和关系运算。各种运算的运 算符见右表。
– 运算的优先级(从高到 低):!(或~),^,-(负 号),/,*,-(减), +,!=(或 ~=),>,<,<=,>=,==,&,| 当 忘记或者无法确定优先序的 时候,最好用括号将优先序 表达出来,在最里层括号中 的表示式将被优先执行