如何在 R 中将因子水平转换为列表

How to convert factor levels to list, in R

想象一个数据框,例如下面的 df1:

df1 <- data.frame(v1 = as.factor(c("m0p1", "m5p30", "m11p20", "m59p60", "m59p60")))

如何创建变量所有级别的列表?谢谢。

要打印变量中的级别,请使用 levels() 正如@scoa 所说:

levels(df1$v1)

要使其成为一个明确的列表,请同时使用 as.list()

l <- as.list(levels(df1$v1))
l

这会将因子转换为可管理的值:

df1$v1 <- vapply(df1$v1, paste, collapse = ", ", character(1L))