Stata System Variables

Stata exposes internal data through system variables. These are sometimes also referred to as underscore variables.


Metadata

_N stores the number of cases. Ordinarily this evaluates to the number of cases in the active dataset. If the dataset is being subset or split, it evaluates to the number included in a given execution context.

_n stores a case's index. Ordinarily this evaluates to a different number for every case, ranging from 1 to _N. But again, if the dataset is being subset or split, it evaluates to a case's index within the given execution context.


Return Code

In Unix fashion, _rc stores the return code of the last command or program. 0 indicates success, any other integer value indicates an error. Try:

capture assert duplicate==0
if (_rc!=0) {
  display "There are duplicates!"
}


Models

For the most-recent model, several system variables are stored:

In the context of multiple-equation models, an additional bit of syntax is necessary to indicate the equation number. This can either be specified in brackets preceding the system variable ([#2]_b[VAR]), or inside the brackets preceding the variable specification (_b[#2:VAR]). If an equation number is not specified, #1 is implied. In the context of a single-equation model, #1 is the only valid reference and generally is not specified.

There are several aliases enabled by this syntax. All of the following are equivalent.

_b[VAR]
_coef[VAR]
[#1]_b[VAR]
[#1]_coef[VAR]
[#1][VAR]
_b[#1:VAR]
_coef[#1:VAR]


CategoryRicottone

Stata/SystemVariables (last edited 2025-10-24 16:25:26 by DominicRicottone)