/*** DO NOT EDIT THIS LINE ----------------------------------------------------- Version: Title: matconvert Description: __matconvert__ belongs to {help rcall} package. It takes the name of a Stata matrix and returns a code for constructing the same matrix in R. for more information visit [rcall homepage](http://www.haghish.com/packages/Rcall.php). ----------------------------------------------------- DO NOT EDIT THIS LINE ***/ /*** Example(s) ================= convert Stata matrix to R code {bf:. matrix A = (1,2\3,4)} {bf:. matconvert A} matrix(c(1,2,3,4), nrow=2, byrow = TRUE) Author ====== __E. F. Haghish__ Center for Medical Biometry and Medical Informatics University of Freiburg, Germany _and_ Department of Mathematics and Computer Science University of Southern Denmark haghish@imbi.uni-freiburg.de [http://www.haghish.com/packages/Rcall.php](http://www.haghish.com/packages/Rcall.php) Package Updates on [Twitter](http://www.twitter.com/Haghish) - - - This help file was dynamically produced by {help markdoc:MarkDoc Literate Programming package} ***/ *cap prog drop matconvert program matconvert, rclass //Get number of rows local row = rowsof(`0') local col = colsof(`0') //Get the names local rownames : rownames `0' local colnames : colnames `0' local data //extract the scalars forval i = 1/`row' { forval j = 1/`col' { //avoid the first comma if !missing("`data'") local data "`data'," *di `0'[`i',`j'] *di `"`0'[`i',`j']"' local data : display "`data'" `0'[`i',`j'] } } if !missing("`rownames'") | !missing("`colnames'") { local code : display "matrix(c(`data'), nrow=`row', byrow = TRUE, " /// "dimnames=list(unlist(strsplit("`"""' "`rownames'" "" `"""' ", split=" `"""' " " `"""' ")), " /// "unlist(strsplit("`"""' "`colnames'" "" `"""' ", split=" `"""' " " `"""' ")) ))" } else { local code "matrix(c(`data'), nrow=`row', byrow = TRUE)" } display as txt `"{p}`code'"' return local `0' "`code'" end // Create help file // ============================================ * markdoc matconvert.ado, export(sthlp) replace