Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AW: st: add column in -tabout- for symbols


From   Eric Booth <ebooth@ppri.tamu.edu>
To   "<statalist@hsphsun2.harvard.edu>" <statalist@hsphsun2.harvard.edu>
Subject   Re: AW: st: add column in -tabout- for symbols
Date   Mon, 13 Jun 2011 13:57:46 +0000

<>
Hi Marc:
That's a good point about spaces in v1 causing problems with split.  Your use of -regexm- is a good work around.
Another workaround might be to use -filefilter- to replace % and N with \tab% \tabN. The issue is that you'll need 
to be sure that none of your variable/value labels contain a capital N (or use a different symbol than N, like `=char(176)' 
and then go back at the end and loop across all your files and use -filefilter- to exchange that char for N).  Anyways, 
here's a similar approach using filefilter and the h2() h3() options to push the proper col. headings:
***********!
sysuse auto, clear
gen lengthc = length>200
lab def origin 1 "longer label with spaces", modify
lab def test 1 "one" 0 "zero", modify
lab val lengthc test
**
tabout foreign lengthc using test_tabout.txt, ///
style(tab) cells(row freq) ///
format(1 0) ///
clab(% N) layout(row) 	///
dpcomma replace h3(nil) ///
h2("`:var l for'" | | `:label test 0' | `:label test 1' | TOTAL)
type test_tabout.txt
**
 filefilter test_tabout.txt test_tabout_updated.txt , f(%) t(\t%) replace
 filefilter test_tabout_updated.txt test_tabout.txt , f(N) t(\tN) replace
type test_tabout.txt
***********!
- Eric
__
Eric A. Booth
Public Policy Research Institute
Texas A&M University
ebooth@ppri.tamu.edu


On Jun 13, 2011, at 8:36 AM, Kaulisch, Marc wrote:

> Eric,
> 
> Thanks a lot for your suggestion and apologies for my inappropriate
> change in the second table.
> 
> In my concrete example I have several spaces in v1 and so I need a
> different approach, but the following does the trick for me:
> preserve
> insheet using test_tabout.txt, nonames clear
> gen v11 = ""
> replace v11 = "N" if v1 == "N"
> replace v11 = "%" if regexm(v1, "%")
> replace v1 =  subinstr(v1, " %", "", 1)
> replace v1 = subinstr(v1, "N", "", 1) if v11 == "N"
> order v1 v11
> 
> outsheet using "test_tabout_updated.txt", ///
> 	replace nonames noquote
> restore 
> 
> Thanks again, (and if someone does know a better solution for -tabout- I
> would happy to integrate that ;-) )
> 
> Marc
> 
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/




*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index