我想在数据框的一列中看到所有可能值的列表,没有重复。就像是:
as.set(series["begin_year"][,1])
对于列“begin_year”虽然
as.set
不存在。
最佳答案
unique()
[或 levels()
,如果该列是一个因素]。
这是可重现的示例:
dat <- OrchardSprays
dat$rowpos
unique(dat$rowpos)
dat$treatment
unique(dat$treatment)
levels(dat$treatment)
编辑
请注意
levels()
将返回因子的唯一级别,即使该级别未使用。考虑:dat2 <- subset(dat, treatment != "A")
unique(dat2$treatment)
# [1] D E B H G F C
# Levels: A B C D E F G H
levels(dat2$treatment)
# [1] "A" "B" "C" "D" "E" "F" "G" "H"
您可以使用
droplevels()
删除未使用的级别。 :dat2$treatment <- droplevels(dat2$treatment)
levels(dat2$treatment)
# [1] "B" "C" "D" "E" "F" "G" "H"
关于r - 如何将向量变成r中的集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7953686/