Copy value and variable labels to (subsetted) data frames
Subsetting-functions usually drop value and variable labels from
subsetted data frames (if the original data frame has value and variable
label attributes). This function copies these value and variable
labels back to subsetted data frames that have been subsetted, for instance,
with subset
.
copy_labels(df_new, df_origin = NULL, ...)
df_new |
The new, subsetted data frame. |
df_origin |
The original data frame where the subset ( |
... |
Optional, unquoted names of variables that should be selected for
further processing. Required, if |
Returns df_new
with either removed value and variable label attributes
(if df_origin = NULL
) or with copied value and variable label
attributes (if df_origin
was the original subsetted data frame).
In case df_origin = NULL
, all possible label attributes
from df_new
are removed.
data(efc) # create subset - drops label attributes efc.sub <- subset(efc, subset = e16sex == 1, select = c(4:8)) str(efc.sub) # copy back attributes from original dataframe efc.sub <- copy_labels(efc.sub, efc) str(efc.sub) # remove all labels efc.sub <- copy_labels(efc.sub) str(efc.sub) # create subset - drops label attributes efc.sub <- subset(efc, subset = e16sex == 1, select = c(4:8)) if (require("dplyr")) { # create subset with dplyr's select - attributes are preserved efc.sub2 <- select(efc, c160age, e42dep, neg_c_7, c82cop1, c84cop3) # copy labels from those columns that are available copy_labels(efc.sub, efc.sub2) %>% str() } # copy labels from only some columns str(copy_labels(efc.sub, efc, e42dep)) str(copy_labels(efc.sub, efc, -e17age))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.