Differences between revisions 8 and 9
Revision 8 as of 2022-03-17 17:47:53
Size: 2124
Comment:
Revision 9 as of 2022-03-17 17:48:57
Size: 2118
Comment:
Deletions are marked like this. Additions are marked like this.
Line 47: Line 47:
label variable VAR "var" label variable foo "bar"
Line 66: Line 66:
label define LABEL 0 "No" 1 "Yes"
label define LABEL 99 "Missing", modify
label values VAR LABEL
label define baz 0 "No" 1 "Yes"
label define baz 99 "Missing", modify
label values foo baz

Stata Metadata

Stata offers human-readable variable names, variable labels, variable printing formats, and value labels.

Stata stores variable labels and value labels in a separate database. Many built-in commands seamlessly pull in metadata from that database, but there are notable exceptions.


Variable Names

Variables are (re)named using the rename command. Since Stata 12, it offers some advanced features:

// rename all variables with a leading 'v' such that the 'v' is replaced with a 'V'
rename v* V*

// rename all variables with a leading 'new_' such that the prefix is stripped
rename new_* *

// rename all variables to a lowercase name
rename *, lower

For older versions of Stata, try these:

renpfix v V
renpfix new_
// TODO: how did older versions rename variable to lowercase?


Labels

Variable Labels

Variable labels are defined using the label command.

label variable foo "bar"

Variable metadata including labels can be inspected and exported using the describe command.

preserve
describe, replace
assert varlab=="foo" if name=="bar"
restore

Value Labels

Variable labels are defined using the label command. However, they must first be defined as a label and then linked to one or more variables.

label define baz 0 "No" 1 "Yes"
label define baz 99 "Missing", modify
label values foo baz

By default, labels cannot be overwritten. The add option allows new values to be inserted into an existing label. The replace option allows existing values to be overwritten in an existing label. The modify option combines both.

Numeric values can be added to value labels using the numlabel command.

numlabel LABEL, add mask("#. ")


Quick Tips

Stata has a number of interactive tools for examining metadata.

di _N    // number of cases
di c(k)  // number of variables


CategoryRicottone

Stata/Metadata (last edited 2023-06-07 18:54:07 by DominicRicottone)