= Stata Numeric Functions = Stata supports these '''numeric functions''' in the global scope. <> ---- == Abs == ---- == Ceil == ---- == CLogLog == ---- == Comb == ---- == Dhms == Convert an date value (formatted as `%td) plus an hour, minute, and second into the number of milliseconds since the Stata epoch (`01jan1960 00:00:00.000`) ''ignoring'' leap seconds. {{{ generate double datetime = dhms(dmy(day, month, year), hour, minute, second) format date %tc }}} See also `Cdhms`, which creates returns a number that should instead be formatted as `%tC` because it does ''not'' ignore leap seconds. ---- == DiGamma == ---- == Dmy == Convert a day, month, and year into the number of days since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate long date = dmy(day, month, year) format date %td }}} ---- == Exp == ---- == ExpM1 == ---- == Floor == ---- == Hms == Convert an hour, minute, and second into the number of milliseconds since midnight ''ignoring'' leap seconds. {{{ generate double datetime = hms(hour, minute, second) format date %tc }}} See also `Chms`, which creates returns a number that should instead be formatted as `%tC` because it does ''not'' ignore leap seconds. ---- == Int == ---- == InvCLogLog == ---- == InvLogit == ---- == Ln == ---- == Ln1M == ---- == Ln1P == ---- == LnFactorial == ---- == LnGamma == ---- == Log == ---- == Log10 == ---- == Log1M == ---- == Log1P == ---- == Logit == ---- == Max == ---- == Mdy == Convert a month, day, and year into the number of days since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate long date = mdy(month, day, year) format date %td }}} ---- == Mdyhms == Convert a day, month, year, hour, minute, and second into the number of milliseconds since the Stata epoch (`01jan1960 00:00:00.000`) ''ignoring'' leap seconds. {{{ generate double datetime = mdyhms(month, day, year, hour, minute, second) format date %tc }}} See also `Cmdyhms`, which creates returns a number that should instead be formatted as `%tC` because it does ''not'' ignore leap seconds. ---- == Min == ---- == Mod == ---- == Real == ---- == RBeta == ---- == RBinomial == ---- == RCauchy == ---- == RChi2 == ---- == RelDif == ---- == RExponential == ---- == RGamma == ---- == RHypergeometric == ---- == RIGaussian == ---- == RLaplace == ---- == RLogistic == ---- == RNBinomial == ----- == RNormal == ---- == Round == ---- == RPoisson == ---- == RT == ---- == RUniform == '''`runiform(a,b)`''' returns a random number between `a` and `b`. If no parameters are specified, the defaults of `0` and `1` are used. Below is a demonstration for how an [[SurveySamples#Sampling_Methods|SRS sample]] can be drawn. {{{ set seed 123456 generate double r_sampled = runiform() sort r_sampled generate byte sampled = _n <= 100 }}} The return value is a [[Stata/DataTypes|double]]; it will be within `a + c(epsdouble)` and `b − c(epsdouble)`. By default, `runiform` uses the 64-bit Mersenne Twister algorithm. Alternate algorithms are available; see [[Stata/Set#Rng|set rng]]. See also [[Stata/Set#Seed|set seed]] for designing deterministic programs. ---- == RUniformInt == ---- == RWeibull == ---- == RWeibullPH == ---- == Sign == ---- == SqRt == ---- == String == Alias for `strofreal`. ---- == StrOfReal == ---- == Sum == ---- == TriGamma == ---- == Trunc == ---- == Y == Convert a year into the number of years since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate int year = y(year) format year %ty }}} ---- == Yh == Convert a year and half year into the number of half years since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate int halfyears = yh(year, halfyear) format halfyears %th }}} ---- == Ym == Convert a year and month into the number of months since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate int months = y(year, month) format months %tm }}} ---- == Yq == Convert a year and quarter into the number of years since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate int quarters = yq(year, quarter) format quarters %tq }}} ---- == Yw == Convert a year and week into the number of weeks since the Stata epoch (`01jan1960 00:00:00.000`). {{{ generate int weeks = yw(year, week) format weeks %tw }}} ---- CategoryRicottone