Obtains the labels for a factor if it has been defined with labels, or constructs labels from its levels otherwise (V.M. Cave).
Options
PRINT = string token |
Controls printed output (labels ); default * |
---|---|
PREFIX = text |
Supplies a single line of text to be used as a prefix when constructing labels from the factor levels; default * i.e. none |
Parameters
FACTOR = factors |
Factor whose labels are to be obtained |
---|---|
LABELS =texts |
Specifies text structures to save the labels of each factor |
EXIST = scalars |
Specifies a scalar for each factor, set to the value 1 if its labels already existed or 0 if they had to be constructed |
Description
FACGETLABELS
can be used to obtain the labels of a factor. If the factor has been defined without any labels, they are constructed from its levels.
The factor whose labels are to obtained (or constructed) is specified using the FACTOR
parameter. The LABELS
parameter can be used to save the labels in a text structure. The EXIST
parameter can save a scalar that indicates whether the labels already existed (= 1), or had to be constructed (= 0).
The PRINT
option can be set to labels
to print the resulting labels; by default, nothing is printed. The PREFIX
option can supply a text containing a single string, to be used as a prefix when constructing labels from factor levels. The string is inserted before the level numbers to form the labels. For factors with defined labels, PREFIX
is ignored.
Options: PRINT
, PREFIX
.
Parameters: FACTOR
, LABELS
, EXIST
.
Method
FACGETLABELS
uses GETATTRIBUTE
to get the necessary attributes. If there are no labels, TXCONSTRUCT
is used to form them from the levels and any prefix.
Action with RESTRICT
Any restrictions on the factors supplied by FACTOR
are ignored.
See also
Directive: GETATTRIBUTE
, TXCONSTRUCT
.
Example
CAPTION 'FACGETLABELS example'; STYLE=meta "Factor with labels defined" FACTOR [LEVELS=2; LABELS=!T(male,female)] Sex; VALUES=!T(4(male,female)) FACGETLABELS [PRINT=labels] Sex; LABELS=LabelsSex "Factor without labels defined" FACTOR [LEVELS=!(2,4,8,16); VALUES=8,4,2,16,4,2,16,8,2] Dose FACGETLABELS [PRINT=labels] Dose; LABELS=LabelsDose "Add preceding text when creating factor labels from levels" FACGETLABELS [PRINT=labels; PREFIX='Rate '] Dose; LABELS=LabelsDose