當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R forcats fct 創建一個因子


fct()factor() 的更嚴格版本,如果 levels 的規範與 x 中的值不一致,則會出錯。

用法

fct(x = character(), levels = NULL, na = character())

參數

x

字符向量。值必須出現在 levelsna 中。

levels

已知級別的特征向量。如果未提供,將從 x 的唯一值按照它們出現的順序進行計算。

na

應成為缺失值的值的字符向量。

一個因子。

例子

# Use factors when you know the set of possible values a variable might take
x <- c("A", "O", "O", "AB", "A")
fct(x, levels = c("O", "A", "B", "AB"))
#> [1] A  O  O  AB A 
#> Levels: O A B AB

# If you don't specify the levels, fct will create from the data
# in the order that they're seen
fct(x)
#> [1] A  O  O  AB A 
#> Levels: A O AB


# Differences with base R -----------------------------------------------
# factor() silently generates NAs
x <- c("a", "b", "c")
factor(x, levels = c("a", "b"))
#> [1] a    b    <NA>
#> Levels: a b
# fct() errors
try(fct(x, levels = c("a", "b")))
#> Error in fct(x, levels = c("a", "b")) : 
#>   All values of `x` must appear in `levels` or `na`
#> ℹ Missing level: "c"
# Unless you explicitly supply NA:
fct(x, levels = c("a", "b"), na = "c")
#> [1] a    b    <NA>
#> Levels: a b

# factor() sorts default levels:
factor(c("y", "x"))
#> [1] y x
#> Levels: x y
# fct() uses in order of appearance:
fct(c("y", "x"))
#> [1] y x
#> Levels: y x
源代碼:R/fct.R

相關用法


注:本文由純淨天空篩選整理自Hadley Wickham等大神的英文原創作品 Create a factor。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。