Differences between revisions 1 and 12 (spanning 11 versions)
Revision 1 as of 2020-01-29 19:47:10
Size: 238
Comment:
Revision 12 as of 2023-01-14 20:10:38
Size: 1539
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Metadata = = Stata Metadata =
Line 3: Line 3:
Data about data. 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.

<<TableOfContents>>

----



== 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=="bar" if name=="foo"
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 baz, add mask("#. ")
}}}

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 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=="bar" if name=="foo"
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 baz, 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 2025-10-24 15:58:53 by DominicRicottone)