将缺失值标记为任何其他字符串

问题描述 投票:0回答:1

我用

haven
创建了一个带标签的列。

library(dplyr)
library(haven)

df <- tibble(x = labelled(c(1:3, NA), c('a' = 1, 'b' = 2, 'missing' = NA)))

# # A tibble: 4 × 1
#           x
#   <int+lbl>
# 1     1 [a]
# 2     2 [b]
# 3     3
# 4    NA

我好像是缺失值标注失败。我希望看到像

这样的东西
# # A tibble: 4 × 1
#           x
#   <int+lbl>
# 1     1 [a]
# 2     2 [b]
# 3     3
# 4    NA [missing]

此外,

as_factor

as_factor(df$x)

# [1] a    b    3    <NA>
# Levels: a b 3 missing

但我想要

# [1] a    b    3    missing
# Levels: a b 3 missing
r label na r-haven
1个回答
0
投票

tagged_na

x <- labelled(c(1:3, tagged_na("")), c('a' = 1, 'b' = 2, "missing" = tagged_na("")))

<labelled<double>[4]>
[1]     1     2     3 NA

Labels:
 value   label
     1       a
     2       b
    NA missing

按预期与

as_factor
一起工作:

as_factor(x)
#[1] a       b       3       missing
#Levels: a b 3 missing
© www.soinside.com 2019 - 2024. All rights reserved.