- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
STAA入门函数与运算符
5函数与运算符
5.1运算符exp
STATA共有四种运算,分别是代数运算、字符运算、关系运算和逻辑运算。
运算符一览表
代数运算 逻辑运算 比较关系 + 加 ! 不 大于 - 减 ~ 不 小于 * 乘 | 或 = 不小于 / 除 和 = 不大于 ^ 指数 == 等于 sqrt() 开方 != 不等于 ~= 不等于 ~= 不等于 + 字符相加
运算的优先序:!(或~),^,-(负号),/,*,-(减),+,!=(或~=),,,=,=,==,,|
当不确定优先序的时候,最好用括号将优先序直接表达出来。
5.1.1代数运算
包括加(+)、减(-)、乘(*)、除(/),幂(^)和负数(-),当遇到缺失值或者运算不可行时(比如除数为零)均会得到缺失值。
例:求正式的值,若x=4,y=2,显然经过心算,应该为:-1
. di –(4+2^(4-2))/(2*4) //di是display命令的略写,表示显示结果
. di 4-2 //输出2
. di 3*5 //输出15
. di 8/2 //8除以2,输出4
. di 2^3 //2的立方,输出8
. di –(2+3^(2-3))/sqrt(2*3) //括号运算优先,想一想,结果应为多少?
实际上,更多的情形是两个或多个变量的直接运算。比如,将进口车的价格都增加100元(可能是关税),而国产车不变。
. sysuse auto, clear
. gen nprice=price+foreign*100
. list nprice price foreign
5.1.2字符运算
加(+)号同样可用于字符运算,当加号出现在两个字符之间时,两个字符将被连成一个字符。比如把”我爱” “STATA”合并在一起,命令为:
. scalar a=”我爱” +“STATA” //要特别注意,引号必须是半角和英文模式
. scalar list a //scalar命令将两个字符运算后的结果赋于a,然后显示a
. scalar a=2 +“3” //注意到:字符与数值不能直接相加,显示类型不匹配
type mismatch
r(109);
5.1.3关系运算
关系运算包括大于、小于、等于;不等于、不小于、不大于等多种比较关系。特别要注意到STATA中的等于符号为“==”,是两个等号连写在一起,不同于赋值时用的单个等号“=”。
. di 35 //输出结果为1,意味着3小于5为真
. di 35 //输出的结果为0,意味着3大于5为假。
当数据中含有缺失值的时候需要特别小心,因为系统缺失值大于任何一个数据,利用这一点,我们可以使用条件语句排除缺失值。
任务:将年龄分组为65岁以下和65岁及以上两组,缺失值显然不能包括在任何一组中。
age 38 . 65 42 18 80 . clear
. edit
将上述数据复制到STATA中,然后退出数据编辑器。
. gen agegrp1=(age=65)
生成的数据中,将缺失值视为65岁以上分在了高龄组,这是错误的
. gen agegrp2=(age=65) if age.
生成的数据中,将缺失值排除在外,正确!这一命令常被用于生成虚拟变量。
. gen agegrp3=(age==65) if age. //仅判断是否恰好为65岁
. list //比较agegrp1、 agegrp2和agegrp3的差异,体会if age.的作用。
age Agegrp1 Agegrp2 Agegrp3 38 0 0 0 . 1 . . 65 1 1 1 42 0 0 0 18 0 0 0 80 1 1 0
5.1.4逻辑运算
逻辑运算包括非(!),和()、或(|)三种,主要用于条件语句中。
例:列示出价格大于10000元的任何车,或者小于4000元的国产车。
. sysuse auto, clear
. list price foreign if price10000 | price4000 forei==0
在STATA中,和())Type of function See help
--------------------------------------+-------------------------
Mathematical functions math functions
Probability distributions and
文档评论(0)