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, is already up and running.

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

Re: st: For Loop Using Variable Labels

From   Austin Nichols <>
Subject   Re: st: For Loop Using Variable Labels
Date   Mon, 24 Jun 2013 18:50:42 -0400

Erika Kociolek <>:
You can exploit -label save- to write to a file and read the contents; see e.g.

On Mon, Jun 24, 2013 at 6:40 PM, Erika Kociolek <> wrote:
> Let's say I wanted to write to a file the number of responses to a
> variety of survey questions with different categories. I'll use the
> voter dataset to illustrate what I want to do.
> **********************
> *Stata Code*
> cd C:/PATH/Data/
> sysuse voter, clear
> keep candidat-inc
> drop if inc == 1  /*Drop if inc variable is equal to 1 (< $15k)*/
> file open mefile using ../Data/Test.txt, write replace
> file write mefile "Variable" _tab "Value" _tab "Number" _tab "Total" _tab _n
> foreach v of varlist candidat-inc{ /*For each variable in the dataset:*/
>    levelsof `v', local(temp) /*Store variable values in a local macros.*/
>    foreach t of local temp{ /*For each value of the variable:*/
>       file write mefile "`v'" _tab /*Write variable name to file,*/
>       file write mefile "`t'" _tab /*Write question response to file,*/
>       summarize `v' if `v' == `t'
>       file write mefile "`r(N)'" _tab /*Write value to file,*/
>    }
>    summarize `v'
>    file write mefile "`r(N)'" _tab _n /*Write total number of
> responses to the question (variable) to file.*/
> }
> file close mefile
> **********************
> So I dropped the lowest income category from the dataset (let's assume
> there were no responses in that particular category). I'd like to use
> the "levelsof" command on the variable label instead of the variable
> values, since the label for the lowest category will always be in the
> dataset, but there may not be a variable value for each response
> category. How would one do that?
> Thanks!
*   For searches and help try:

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