gpt4 book ai didi

r - 从标记数据创建带有标签的列

转载 作者:行者123 更新时间:2023-12-05 08:45:40 24 4
gpt4 key购买 nike

我有一个带有标签数据的数据集,我想创建一个仅包含标签作为字符的新列。

考虑以下示例:

value_labels <- tibble(value = 1:6, labels = paste0("value", 1:6))
df_data <- tibble(id = 1:10, var = floor(runif(10, 1, 6)))
df_data <- df_data %>% mutate(var = haven::labelled(var, labels = deframe(value_labels[2:1])))

这会产生:

# A tibble: 10 x 2
id var
<int> <dbl+lbl>
1 1 2 [value2]
2 2 2 [value2]
3 3 4 [value4]
4 4 2 [value2]
5 5 4 [value4]
6 6 3 [value3]
7 7 5 [value5]
8 8 4 [value4]
9 9 3 [value3]
10 10 1 [value1]

我现在想创建一个仅包含标签的附加列 labs(即第 1 行和第 2 行中的 value2,行中的 value4 3等

我尝试使用 val_labs() (df_data %>% mutate(labs = val_labels(df_data$var, var))) 失败。有人可以指出正确的方法吗?

最佳答案

haven::as_factor() 用于此目的。查看 help page 的示例对于标记的载体。

df_data %>%
mutate(labs = as_factor(var))

# A tibble: 10 × 3
id var labs
<int> <dbl+lbl> <fct>
1 1 2 [value2] value2
2 2 5 [value5] value5
3 3 2 [value2] value2
4 4 5 [value5] value5
5 5 2 [value2] value2
6 6 4 [value4] value4
7 7 5 [value5] value5
8 8 4 [value4] value4
9 9 5 [value5] value5
10 10 3 [value3] value3

关于r - 从标记数据创建带有标签的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71942322/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com