對于單個因子變量
# 創(chuàng)建額外的因子水平 (gamma)
x <- factor(c("alpha","beta","alpha"), levels=c("alpha","beta","gamma"))
x
#> [1] alpha beta alpha
#> Levels: alpha beta gamma
# 移除額外的因子水平
x <- factor(x)
x
#> [1] alpha beta alpha
#> Levels: alpha beta
當(dāng)導(dǎo)入數(shù)據(jù)之后,可能有一個混合因子變量和其他向量的數(shù)據(jù)框,然后想要重新計(jì)算所有因子的水平??梢允褂胐roplevels()函數(shù)實(shí)現(xiàn)這一點(diǎn)。
# 創(chuàng)建一些因子的數(shù)據(jù)框 (有額外的因子水平)
df <- data.frame(
x = factor(c("alpha","beta","alpha"), levels=c("alpha","beta","gamma")),
y = c(5,8,2),
z = factor(c("red","green","green"), levels=c("red","green","blue"))
)
# 顯示因子水平 (with extra levels)
df$x
#> [1] alpha beta alpha
#> Levels: alpha beta gamma
df$z
#> [1] red green green
#> Levels: red green blue
# 丟掉額外因子水平
df <- droplevels(df)
# 再次顯示因子,現(xiàn)在沒有額外的因子水平了
df$x
#> [1] alpha beta alpha
#> Levels: alpha beta
df$z
#> [1] red green green
#> Levels: red green








暫無數(shù)據(jù)