*! version 3.0.0 *! _ts_peri -- utility to obtain period *! Sean Becketti, April 1991. program define _ts_peri /* # or word or # word */ version 3.0 if "`*'"=="" { if "$S_period"=="" { mac def S_1 1 mac def S_2 "annual" } else { parse "$S_period", parse(" ") mac def S_1 `1' mac def S_2 `2' } exit } if "`2'"!="" { if ("`3'"!="") { error 198 } local numb `1' local wrd `2' } else { capture confirm integer number `1' if _rc==0 { local numb `1' if `1'==1 { local wrd annual } else if `1'==2 { local wrd semiannual } else if `1'==4 { local wrd quarterly } else if `1'==12 { local wrd monthly } else if `1'==52 { local wrd weekly } else if `1'==365 { local wrd daily } else local wrd "p`1'" } else { local l=length("`1'") if "`1'"==substr("annual",1,`l') { local wrd "annual" local numb 1 } else if "`1'"==substr("semiannual",1,`l') { local wrd "semiannual" local numb 2 } else if "`1'"==substr("quarterly",1,`l') { local wrd "quarterly" local numb 4 } else if "`1'"==substr("monthly",1,`l') { local wrd "monthly" local numb 12 } else if "`1'"==substr("weekly",1,`l') { local wrd "weekly" local numb 52 } else if "`1'"==substr("daily",1,`l') { local wrd "daily" local numb 365 } else { di in red "period `1' unrecognized" exit 198 } } } mac def S_1 `numb' mac def S_2 `wrd' end