Stata string delimit, string with quotes, string regression labels, etc. (DO, more see: Fan and Stata4Econ)

-------------------------------------------------------------------------------------------------------------------------------------------------------------------
      name:  stata_fs_strings
       log:  C:\Users\fan/Stata4Econ//prog/define/fs_strings.smcl
  log type:  smcl
 opened on:  10 May 2020, 17:11:03


. log on $st_logname (log already on)

. . ///-- Site Link: Fan's Project Reusable Stata Codes Table of Content > di "https://fanwangecon.github.io/" https://fanwangecon.github.io/

. di "https://fanwangecon.github.io/Stata4Econ/" https://fanwangecon.github.io/Stata4Econ/

. . ///-- File Title > global filetitle "Stata string delimit, string with quotes, string regression labels, etc."

. . /////////////////////////////////////////////////////////////////////////////// > ///--- String Operations > /////////////////////////////////////////////////////////////////////////////// > . ///--- Search and Replace Text in Substring > . * replace quote in string . di subinstr(`"dataVar1 " dataVar2"',`"""',"",.) dataVar1 dataVar2

. . * Replace quotes in string . di subinstr(`" "dataVar1 dataVar2 " "dataVar2 dataVar3" "',`"""',"",.) dataVar1 dataVar2 dataVar2 dataVar3

. . * Replace & with /& in long string . global scd ""

. global scd "${scd} Conditions: PA=(& el\_i\_mand\_talk\_m2a != -999 & S\_han !=.);"

. global scd "${scd} PB=(& el\_i\_mand\_talk\_m2a != -999 & S\_han == 0);"

. global scd "${scd} PC=(& el\_i\_mand\_talk\_m2a != -999 & S\_han == 1);"

. global scd "${scd} common=(S\_han !=. & AgeCloseYr\_i\_G1 <= 30 & H\_age <= 44"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. global scd "${scd} & (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0)"

. . global scd = subinstr("${scd}","&","\&",.)

. di "${scd}" Conditions: PA=(\& el\_i\_mand\_talk\_m2a != -999 \& S\_han !=.); PB=(\& el\_i\_mand\_talk\_m2a != -999 \& S\_han == 0); PC=(\& el\_i\_mand\_talk\_m2a != -999 \& > S\_han == 1); common=(S\_han !=. \& AgeCloseYr\_i\_G1 <= 30 \& H\_age <= 44 \& (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0) \& (vE\_schCloseYr\_ful > l >= 1998 | vE\_schCloseYr\_full == 0) \& (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0) \& (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0 > ) \& (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0) \& (vE\_schCloseYr\_full >= 1998 | vE\_schCloseYr\_full == 0) \& (vE\_schCloseYr\_full >= 1998 | > vE\_schCloseYr\_full == 0)

. . * Replace dash . local tableRefName = "a_b_c"

. local tableRefName = subinstr("`tableRefName'","_","",.)

. di "`tableRefName'" abc

. . * replace pound . local instrCap = "_d1_l1#_d1_l2 _d2_l2#_d2_l4"

. local cinstrCapF = subinstr(word("`instrCap'",1),"#"," ",.)

. di "`cinstrCapF'" _d1_l1 _d1_l2

. . /////////////////////////////////////////////////////////////////////////////// > ///--- String Definitions and Regressions > /////////////////////////////////////////////////////////////////////////////// > ///--- Load Data > set more off

. sysuse auto, clear (1978 Automobile Data)

. . ///--- Define Multiple Variables as global in delimit > #delimit; delimiter now ; . global vars_rhs " > mpg > ib1.rep78 > headroom trunk > weight > ";

. #delimit cr delimiter now cr . . di `"$vars_rhs"' mpg ib1.rep78 headroom trunk weight

. . ///--- Define String with Quotes > #delimit; delimiter now ; . global st_coef_label " > mpg "mpg variable" > 1.rep78 "BASE GROUP CONSTANT = rep78 is 1" > 2.rep78 "rep78 is 2" > 3.rep78 "rep78 is 3" > 4.rep78 "rep78 is 4" > 5.rep78 "rep78 is 5" > headroom "headroom variable" > trunk "this is the trunk variable" > weight "and here the weight variable" > ";

. #delimit cr delimiter now cr . . di `"$st_coef_label"' mpg "mpg variable" 1.rep78 "BASE GROUP CONSTANT = rep78 is 1" 2.rep78 "rep78 is 2" 3.rep78 "rep78 > is 3" 4.rep78 "rep78 is 4" 5.rep78 "rep78 is 5" headroom "headroom variable" trunk "this is the t > runk variable" weight "and here the weight variable"

. . ///--- Describe and Summarize > d $rhs_vars_list, f

Contains data from C:\Program Files (x86)\Stata14\ado\base/a/auto.dta obs: 74 1978 Automobile Data vars: 12 13 Apr 2014 17:45 size: 3,182 (_dta has notes) ------------------------------------------------------------------------------------------------------------------------------------------------------------------- storage display value variable name type format label variable label ------------------------------------------------------------------------------------------------------------------------------------------------------------------- make str18 %-18s Make and Model price int %8.0gc Price mpg int %8.0g Mileage (mpg) rep78 int %8.0g Repair Record 1978 headroom float %6.1f Headroom (in.) trunk int %8.0g Trunk space (cu. ft.) weight int %8.0gc Weight (lbs.) length int %8.0g Length (in.) turn int %8.0g Turn Circle (ft.) displacement int %8.0g Displacement (cu. in.) gear_ratio float %6.2f Gear Ratio foreign byte %8.0g origin Car type ------------------------------------------------------------------------------------------------------------------------------------------------------------------- Sorted by: foreign

. summ $rhs_vars_list

Variable | Obs Mean Std. Dev. Min Max -------------+--------------------------------------------------------- make | 0 price | 74 6165.257 2949.496 3291 15906 mpg | 74 21.2973 5.785503 12 41 rep78 | 69 3.405797 .9899323 1 5 headroom | 74 2.993243 .8459948 1.5 5 -------------+--------------------------------------------------------- trunk | 74 13.75676 4.277404 5 23 weight | 74 3019.459 777.1936 1760 4840 length | 74 187.9324 22.26634 142 233 turn | 74 39.64865 4.399354 31 51 displacement | 74 197.2973 91.83722 79 425 -------------+--------------------------------------------------------- gear_ratio | 74 3.014865 .4562871 2.19 3.89 foreign | 74 .2972973 .4601885 0 1

. . ///--- Run Regression > . eststo clear

. eststo, title("reg1"): regress price $vars_rhs if foreign == 0

Source | SS df MS Number of obs = 48 -------------+---------------------------------- F(8, 39) = 6.08 Model | 265270208 8 33158776 Prob > F = 0.0000 Residual | 212697489 39 5453781.76 R-squared = 0.5550 -------------+---------------------------------- Adj R-squared = 0.4637 Total | 477967697 47 10169525.5 Root MSE = 2335.3

------------------------------------------------------------------------------ price | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- mpg | 92.54338 163.0892 0.57 0.574 -237.3357 422.4224 | rep78 | 2 | 1582.106 1987.532 0.80 0.431 -2438.058 5602.269 3 | 1832.208 1869.079 0.98 0.333 -1948.361 5612.776 4 | 921.8792 2015.345 0.46 0.650 -3154.542 4998.3 5 | 4172.732 2681.573 1.56 0.128 -1251.261 9596.725 | headroom | -436.3395 519.777 -0.84 0.406 -1487.688 615.0087 trunk | -76.14985 136.1647 -0.56 0.579 -351.5689 199.2692 weight | 4.610868 1.053809 4.38 0.000 2.479338 6.742399 _cons | -10261.73 6562.752 -1.56 0.126 -23536.15 3012.686 ------------------------------------------------------------------------------ (est1 stored)

. eststo, title("reg2"): regress price $vars_rhs if foreign == 1 note: 1b.rep78 identifies no observations in the sample note: 5.rep78 omitted because of collinearity

Source | SS df MS Number of obs = 21 -------------+---------------------------------- F(6, 14) = 8.35 Model | 77099791.3 6 12849965.2 Prob > F = 0.0006 Residual | 21555563.2 14 1539683.09 R-squared = 0.7815 -------------+---------------------------------- Adj R-squared = 0.6879 Total | 98655354.6 20 4932767.73 Root MSE = 1240.8

------------------------------------------------------------------------------ price | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- mpg | 41.78335 69.31091 0.60 0.556 -106.8738 190.4405 | rep78 | 1 | 0 (empty) 3 | 866.061 1060.461 0.82 0.428 -1408.402 3140.524 4 | 1367.986 686.8411 1.99 0.066 -105.1419 2841.114 5 | 0 (omitted) | headroom | -237.1521 660.3787 -0.36 0.725 -1653.524 1179.219 trunk | 155.15 94.41051 1.64 0.123 -47.34039 357.6404 weight | 5.747012 1.259762 4.56 0.000 3.045091 8.448933 _cons | -9844.945 4889.272 -2.01 0.064 -20331.39 641.4998 ------------------------------------------------------------------------------ (est2 stored)

. . esttab, title("regtest") /// > mtitle /// > coeflabels($st_coef_label) /// > varwidth(50)

regtest ---------------------------------------------------------------------------------- (1) (2) reg1 reg2 ---------------------------------------------------------------------------------- mpg variable 92.54 41.78 (0.57) (0.60)

BASE GROUP CONSTANT = rep78 is 1 0 0 (.) (.)

rep78 is 2 1582.1 (0.80)

rep78 is 3 1832.2 866.1 (0.98) (0.82)

rep78 is 4 921.9 1368.0 (0.46) (1.99)

rep78 is 5 4172.7 0 (1.56) (.)

headroom variable -436.3 -237.2 (-0.84) (-0.36)

this is the trunk variable -76.15 155.2 (-0.56) (1.64)

and here the weight variable 4.611*** 5.747*** (4.38) (4.56)

_cons -10261.7 -9844.9 (-1.56) (-2.01) ---------------------------------------------------------------------------------- N 48 21 ---------------------------------------------------------------------------------- t statistics in parentheses * p<0.05, ** p<0.01, *** p<0.001

. . ///--- End Log and to HTML > log close _all name: stata_fs_strings log: C:\Users\fan/Stata4Econ//prog/define/fs_strings.smcl log type: smcl closed on: 10 May 2020, 17:11:03 -------------------------------------------------------------------------------------------------------------------------------------------------------------------