lama_mutate {labelmachine} | R Documentation |
Change or append a variable translation to an existing lama_dictionary object
Description
The functions lama_mutate()
and lama_mutate_()
alter a
lama_dictionary object. They can be used to alter,
delete or append a translations to a
lama_dictionary object.
The function lama_mutate()
uses named arguments to assign the translations
to the new names (similar to dplyr::mutate
), whereas the function
lama_mutate_()
is takes a character string key
holding the
name to which the translation should be assigned and a named character
vector translation
holding the actual translation mapping.
Usage
lama_mutate(.data, ...)
## S3 method for class 'lama_dictionary'
lama_mutate(.data, ...)
lama_mutate_(.data, key, translation)
## S3 method for class 'lama_dictionary'
lama_mutate_(.data, key, translation)
Arguments
.data |
A lama_dictionary object |
... |
One or more unquoted expressions separated by commas. Use named
arguments, e.g. |
key |
The name of the variable translation that should be altered. It can also be variable translation name that does not exist yet. |
translation |
A named character vector holding the new variable
translation that should be assigned to the name given in argument |
Value
An updated lama_dictionary class object.
See Also
lama_translate()
, lama_to_factor()
, lama_translate_all()
,
lama_to_factor_all()
, new_lama_dictionary()
,
as.lama_dictionary()
, lama_rename()
, lama_select()
,
lama_merge()
, lama_read()
, lama_write()
Examples
# initialize lama_dictinoary
dict <- new_lama_dictionary(
subject = c(en = "English", ma = "Mathematics"),
result = c("1" = "Very good", "2" = "Good", "3" = "Not so good")
)
## Example-1: mutate and append with 'lama_mutate'
# add a few subjects and a few grades
dict_new <- lama_mutate(
dict,
subject = c(bio = "Biology", subject, sp = "Sports"),
result = c("0" = "Beyond expectations", result, "4" = "Failed", NA_ = "Missed")
)
# the subjects "Biology" and "Sports" were added
# and the results "Beyond expectations", "Failed" and "Missed"
dict_new
## Example-2: delete with 'lama_mutate'
dict_new <- lama_mutate(
dict,
subject = NULL
)
dict_new
## Example-3: Alter and append with 'lama_mutate_'
# generate the new translation (character string)
subj <- c(
bio = "Biology",
lama_get(dict, subject),
sp = "Sports"
)
# save the translation under the name "subject"
dict_new <- lama_mutate_(
dict,
key = "subject",
translation = subj
)
# the translation "subject" now also contains
# the subjects "Biology" and "Sports"
dict_new
## Example-4: Delete with 'lama_mutate_'
# save the translation under the name "subject"
dict_new <- lama_mutate_(
dict,
key = "subject",
translation = NULL
)
# the translation "subject" was deleted
dict_new