Learn R Programming

sjmisc (version 1.2)

set_label: Add variable label(s) to variables

Description

This function adds variable labels as attribute (named "label" or "variable.label") to a variable or vector x, resp. to a set of variables in a data.frame or a list-object. Most functions of the sjPlot package can automatically retrieve the variable labels to use it as axis labels or plot title (see 'Details').

Usage

set_label(x, lab, attr.string = NULL)

set_var_labels(x, lab, attr.string = NULL)

Arguments

x
Variable (vector), list of variables or a data.frame where variables labels should be added as attribute
lab
If x is a vector (single variable), use a single character string with the variable label for x. If x is a data frame, use a vector with character labels of same length as ncol(x). Use lab = ""
attr.string
Attribute string for the variable label. Note: Usually, this argument should be ignored. It is only used internally for the write_spss and write

Value

  • x, with variable label attribute(s), which contains the variable name(s); or with removed label-attribute if lab = "".

Details

See 'Details' in get_labels

See Also

The sjPlot manual on http://www.strengejacke.de/sjPlot/datainit/{data initialization} or http://www.strengejacke.de/sjPlot/view_spss/{inspecting (SPSS imported) data frames} for more details; set_labels to manually set value labels or get_label to get variable labels.

Examples

Run this code
# sample data set, imported from SPSS.
data(efc)

library(sjPlot)
sjt.frq(efc$e42dep)
sjt.frq(data.frame(efc$e42dep, efc$e16sex))


# manually set value and variable labels
dummy <- sample(1:4, 40, replace = TRUE)
dummy <- set_labels(dummy, c("very low", "low", "mid", "hi"))
dummy <- set_label(dummy, "Dummy-variable")


# auto-detection of value labels by default, auto-detection of
# variable labels if argument "title" set to NULL.
library(sjPlot)
sjp.frq(dummy, title = NULL)


# Set variable labels for data frame
dummy <- data.frame(a = sample(1:4, 10, replace = TRUE),
                    b = sample(1:4, 10, replace = TRUE),
                    c = sample(1:4, 10, replace = TRUE))
dummy <- set_label(dummy,
                   c("Variable A",
                     "Variable B",
                     "Variable C"))
str(dummy)

# remove one variable label
dummy <- set_label(dummy,
                   c("Variable A",
                     "",
                     "Variable C"))
str(dummy)


# setting same variable labels to multiple vectors

# create a set of dummy variables
dummy1 <- sample(1:4, 40, replace = TRUE)
dummy2 <- sample(1:4, 40, replace = TRUE)
dummy3 <- sample(1:4, 40, replace = TRUE)
# put them in list-object
dummies <- list(dummy1, dummy2, dummy3)
# and set variable labels for all three dummies
dummies <- set_label(dummies, c("First Dummy", "2nd Dummy", "Third dummy"))
# see result...
get_label(dummies)

Run the code above in your browser using DataLab