*! Part of package matrixtools v. 0.31 *! Support: Niels Henrik Bruun, niels.henrik.bruun@gmail.com *! 2024-02-23 > Option todocx added * 2023-01-01 > Option nozero added * 2021-01-03 > toxl added * 2020-03-05 > empty rownames not printet * 2020-03-05 > option no rowlabels * 2019-06-11 > Caption/Title added * 2018-09-09 > Option for removing row header from print * 2017-01-06 > Rewritten * TODO: To word? * TODO: Option order as basetable program define matprint version 12.1 syntax anything(name=matrixexpression) [using/]/* */[,/* */Style(string) /* */Decimals(string) /* */noRowheaders /* */TItle(string) /* */CAPtion(string) /* */TOp(string) /* */Undertop(string) /* */Bottom(string) /* */Replace /* */noEqstrip /* */noZero /* */Hidesmall(integer 0) /* */noCleanupmata /* */toxl(passthru) /* */todocx(string) /* */] if "`title'" != "" local caption `"`title'"' tempname matrixname matrix `matrixname' = `matrixexpression' capture mata: __decimals = `decimals' if _rc mata: __decimals = 2 if `=`hidesmall' <= 0' local hidesmall . // Returned lines lines are accessible from Mata in variable __mp_lm mata: __mp_lm = nhb_mt_labelmatrix() mata: __mp_lm.from_matrix("`matrixname'") if `"`zero'"' != "" mata: __mp_lm.values(__mp_lm.values() :/ (__mp_lm.values() :!= 0)) if "`rowheaders'" != "" { mata: __mp_lm.row_equations("") mata: __mp_lm.row_names("") } mata: __mp_lm.print( "`style'", __decimals, /// "`eqstrip'" == "", `hidesmall', /// "`caption'", "`top'", "`undertop'", "`bottom'", /// "`using'", "`replace'" == "replace") capture mata: mata drop __decimals if `"`decimals'"' != "" local decimals decimals(`decimals') if `"`hidesmall'"' != "." local hidesmall hidesmall(`hidesmall') else local hidesmall *** mat2xl ******************************************************************* if `"`toxl'"' != "" { if `c(stata_version)' >= 13 mat2xl `matrixname', `toxl' `eqstrip' `hidesmall' `decimals' } ****************************************************************************** *** mat2docx ***************************************************************** if "`todocx'" != "" { if `c(stata_version)' >= 13 mata: msm2d("`todocx'", __mp_lm.to_strings(), "`title'") else display "{error:Option todocx do not work in version 12 for Stata.}" } ****************************************************************************** if `"`cleanupmata'"' == "" capture mata: mata drop __mp_lm end if `c(stata_version)' >= 13 { mata st_local( "__2docx_fn", findfile("ltodocx_v13.mata")) include "`__2docx_fn'" }