第六章-stata语言中的常用函数_第1页
第六章-stata语言中的常用函数_第2页
第六章-stata语言中的常用函数_第3页
第六章-stata语言中的常用函数_第4页
第六章-stata语言中的常用函数_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

第六章第六章 stata 语言中的常用函数语言中的常用函数 本章重点 Stata 系统是一个统计分析系统 stata 语言是实现 stata 系统功能 的基础 因此它其中包括了各种各样的函数 在 stata 系统中 函数 的自变量可以是一个常数 可以是一个变量 或者是一连串的变量 在调用这些函数的时候 只要将函数中定义中的这些变量替换为相 应值即可 这一章 介绍一下这些函数的定义以及使用方法 6 16 1 函数概览函数概览 函数只不过是一些编号的小程序 它会按一定的规则进行处理 之后报告结果 实际上 谁也记不住这么多函数 因此 首先要学 会查找函数的帮助 当记不住的时候 随时去查寻帮助 记住下面 的命令才是最关键的 help function 弹出来的对话框告诉我们 STATA 包括八类函数 分别是数学函 数 分布函数 随机数函数 字符函数 程序函数 日期函数 时 间序列函数和矩阵函数 本章主要介绍数学函数和字符函数 日期 函数 随机函数等常用函数 其他函数可以参考 stata 帮助功能 6 2 数学函数数学函数 Abs x x 的绝对值 Acos x 反余弦函数 例如 arcos 0 5 1 57 arcos 1 0 Asin x 反正弦函数 Atan x 反正切函数 atanh x 反双曲正切函数 ceil x 返回大于或等于自变量的最小的整数 例如 ceil 0 7 1 ceil 3 3 ceil 0 7 0 Floor x 返回小于或等于自变量的最大的整数 例如 floor 0 7 0 floor 3 3 floor 0 7 1 Int x 返回自变量的整数部分 例如 int 0 7 0 int 2 9 2 int 2 55 2 Round x y 返回与 y 的单位最接近的数 x x 为真数 y 为近似 单位 例如 round 5 2 1 round 4 8 1 5 round 2 234 0 1 2 2 round 2 234 0 01 2 23 round 2 234 0 001 2 234 round 28 5 30 cloglog x 返回 ln ln 1 x 的值 comb n k 从 n 中取 k 个的组合 即 comb n k n k n k 例如 comb 10 5 252 comb 6 2 15 cos x 余弦函数 digamma x 返回 digamma 函数值 这是 lngamma x 的一阶导数 exp x 指数函数 例如 exp 0 1 exp 3 20 invcloglog x 返回 invcloglog x 1 exp exp x 的值 ln x 自然对数函数 lnfactorial n 返回 N 阶乘的自然对数 即 lnfactorial n ln n 计算 n 时用 round exp lnfactorial n 1 函数保证得出的结果是一 个整数 求 n 的阶乘的对数比单纯求阶乘更有用 因为存在溢出 值问题 lngamma x 返回 gamma 函数的自然对数 log10 x 以 10 为底对数函数 logit x 返回 logit 函数值 logit x ln x 1 x max x1 x2 xn 求 x1 x2 xn 中的最大值 例如 max 1 2 3 3 min x1 x2 xn 求 x1 x2 xn 中的最小值 例如 min 1 2 3 3 mod x y 求 x 除以 y 的余数 即 mod x y x y int x y 例如 mod 7 4 3 reldif x y 返回 x y 的相对差异值 reldif x y x y y 1 如 果 x 和 y 都是相同类型的缺失值 则返回 0 如果只有一个为缺 失值或 x y 为不同类型的缺失值 则返回缺失值 sign x 求 x 的符号 如果为负数 则返回 1 如果为 0 则返 回 0 如果为正数 则返回 1 如果是缺失值 则返回缺失值 sin x 正弦函数 sqrt x 求 x 的平方根 x 只能为非负数 例如 sqrt 100 10 sum x 返回 x 的和 将缺失值看成是 0 tan x 正切函数 tanh x 双曲正切函数 trigamma x 返回 lngamma x 的二阶导数 trunc x 将数据截为特定的长度 6 3 概率分布和密度函数概率分布和密度函数 betaden a b x 返回 分布的概率密度 a b 为参数 如果 x 1 返回 0 binomial n k p n 次贝努里试验 取得成功次数 小于或等于 k 次的概率 其中一次 p 为事件成功的概率 若 kn 返回 0 binomialtail n k p n 次贝努里试验 取得成功次数 大于或等于 k 次的概率 其中一次 p 为事件成功的概率 若 kn 返回 0 binormal h k r 返回自由度为 n 的卡方的分布 chi2 n x gammap n 2 x 2 若 x 0 则返回 0 chi2tail n x chi2tail n x 1 chi2 n x 若 x0 若 x0 若 x0 若 x0 若 x0 若 x 0 则返回 0 F n1 n2 f 返回分子自由度为 n1 分母自由度为 n2 的 F 分布函 数 若 f 0 则返回 0 Fden n1 n2 f 分子自由度为 n1 分母自由度为 n2 的 F 分布函数 的概率密度函数 若 f 0 则返回 0 gammap a x gamma 分布 ibeta a b x 分布 normal z 正态分布函数 normalden z 标准正态分布密度函数 tden n t t 分布的概率密度函数 6 4 随机数函数随机数函数 uniform 产生服从均匀分布的随机数 invnormal uniform 标准正态分布的随机数 6 5 字符函数字符函数 char n 返回字符的 ASCII 码 indexnot s1 s2 返回 s1 中第一个在 s2 中找不到的字母的位置 若 s1 所有的字母在 s2 中均可以找到 则返回 0 例如 indexnot 12disxl 2fsd1 4 indexnot 12disxl 2fsd1ixs 7 indexnot 12disxl 2fsd1lixs 0 itrim s 将字符间多于一个空格缩减为一个空格 例如 itrim hello there hello there length s 返回字符串 s 的长度 例如 length ab 2 lower s 将 s 中的字母变为 xiaoxie 例如 lower THIS this ltrim s 将字符串 s 中首字母之前的空格去掉 例如 ltrim this this plural n s or plural n s1 s2 如果 n 1 plural n s 就是将 s 加到 s 后 如果 s2 前有 表示将 s2 加到 s1 后 如果 s2 前为 则返回 s1 中去掉 s2 字符串后剩下的字符串 如果 s2 前既没有 也没有 则 plural n s1 s2 s2 例如 plural 1 horse horse plural 2 horse horses plural 2 glass es glasses plural 1 mouse mice mouse plural 2 mouse mice mice plural 2 abcdefg efg abcd proper s 将首字母大写 而且将紧接着非字母字符后的字母大 写 其他的字母小写 例如 proper mR joHn a sMitH Mr John A Smith proper jack o reilly Jack O Reilly proper 2 cent s worth 2 Cent S Worth real s 将 s 字符串转化为数字后返回 或返回 例如 real 5 2 1 6 2 real hello reverse s 将字符串颠倒过来 例如 reverse hello olleh rtrim s 去掉字符串末尾的空格 例如 rtrim this this string n 将数字 n 转化为字符串 例如 string 4 F 4F string string 1 23e 07 string string n s 将数字 n 转化为字符串 例如 string 4 9 2f 4 00 string 11 0g string 13 0gc 123 456 789 string 0 td 01jan1960 string 225 tq 2016q2 string 225 not a format strmatch s1 s2 s2 与 s1 的形式相同则返回 1 否则返回 0 例如 strmatch 17 4 1 4 1 在 s2 中 代表此处有一个字符 表示 0 或更多的字符 strpos s1 s2 s2 在 s1 中第一次找到的位置 否则为 0 例如 strpos this is 3 strpos this it 0 subinstr s1 s2 s3 n 返回 s1 将 s1 中第 n 次出现 s2 时的 s2 替换 成 s3 若 n 为 则将所有 s1 中的 s2 字符串替换成 s3 例如 subinstr this is this is X 1 thX is this subinstr this is this is X 2 thX X this subinstr this is this is X thX X thX substr s n1 n2 返回 s1 的子集 从 s1 中第 n1 个字符开始抽取 抽 n2 个字符 例如 substr abcdef 2 3 bcd substr abcdef 3 2 de substr abcdef 2 bcdef substr abcdef 3 def substr abcdef 2 0 substr abcdef 15 2 trim s 将字符串 s 的首字母之前和末尾的空格去掉 例如 trim this this upper s 将字符串 s 中的字母变为大写 例如 upper this THIS word s n s 中第 n 个单词 例如 word glass tass a td 2 tass word glass tass a td wordcount s s 中单词数 例如 wordcount glass tass a td 4 6 6 日期时间函数日期时间函数 date date mask 返回 date 与 1960 年 1 月 1 日相距的天数 其中 mask 的形式为 MDY 或 YMD 或 DMY 表示 date 中年月日 的顺序 weekly date mask 返回 date 与 1960 年 1 月 1 日相距的星期数 monthly date mask 返回 date 与 1960 年 1 月 1 日相距的月数 quarterly date mask 返回 date 与 1960 年 1 月 1 日相距的季度数 halfyearly date mask 返回 date 与 1960 年 1 月 1 日相距的星期数 yearly date mask 返回 date 与 1960 年 1 月 1 日相距有多少个 半年 clock date mask 返回 date 与 1960 年 1 月 1 日相距的秒数 mdyhms M D Y h m s 从年月日 小时 分钟 秒得到 stata 日期时间值 dhms td h m s 从日期 小时 分钟 秒得到 stata 日期时间值 hms h m s 从小时 分钟 秒返回一个 stata 日期时间值 mdy M D Y 从月 日 年中得到一个 stata 日期值 yw Y W 从年 星期得到一个 stata 日期值 表示距 1960 年 1 月 1 日有多少个星期 ym Y M 从年 月得到一个 stata 日期值 表示距 1960 年 1 月 1 日有多少个月 yq Y Q 从年 季度得到一个 stata 日期值 表示距 1960 年 1 月 1 日有多少个季度 yh Y H 从年 半年得到一个 stata 日期值 表示距 1960 年 1 月 1 日有多少个半年 ye

温馨提示

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

评论

0/150

提交评论