Stata函数大全
一、数值型函数
abs(x) 绝对值 abs(-9)=9
comb(n,k) 从n中取k个的组合 comb(10,2)=45
exp(x) 指数 exp(0)=1
fill() 自动填充数据
int(x) 取整 int(5.6) = 5, int(-5.2) = -5.
ln(x) 对数 ln(1)=0
log10(x) 以10为底的对数 log10(1000)=3
mod(x,y) = x - y*int(x/y) mod(9,2)=1
round(x) 四舍五入 round(5.6)=6
sqrt(x) 开方 sqrt(16)=4
sum(x) 求和
随机函数
uniform() 均匀分布随机数
invnormal(uniform()) 标准正态分布随机数
字符函数
real(s) 字符型转化为数值型
string(n) 数值型转化为字符型
substr(s,n1,n2) 从S的第n1个字符开始,截取n2个字符 Substr(“this”,2,2)=is
word(s,n) 返回s的第n个字符 Work(“this”,3)=i
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(1234567) = "1234567"
string(12345678) = "1.23e+07"
string(.) = "."
string(n,s) 将数字n转化为字符串
例如:string(4,"%9.2f") = "4.00"
string(123456789,"%11.0g") = "123456789"
string(123456789,"%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"
trunc函数使用时间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
二、系统变量
_n 当前观察值的序号
_N 共有多少观察值
_pi π
三、数学函数
Abs(x) x的绝对值
Acos(x) 反余弦函数
Asin(x) 反正弦函数
Atan(x) 反正切函数
atanh(x) 反双曲正切函数
ceil(x) 返回大于或等于自变量的最小的整数。
Floor(x) 返回小于或等于自变量的最大的整数
Int(x) 返回自变量的整数部分
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
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) 指数函数
invcloglog(x) 返回invcloglog(x) = 1 - exp{-exp(x)}的值
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论