可能重复:
在 R 中的子集数据框中删除因子级别
我有一个包含因子列的数据框,然后我想使用子集仅提取其部分数据。但是提取的数据框的因子列仍然具有相同的级别,即使某些级别没有价值。这会影响我的后续操作(例如使用 ggplot 进行可视化)。
以下是示例代码。
d<-data.frame(c1=factor(c(1,1,2,3)),c2=c("a","b","c","d"))
d<-subset(d,c1 %in% c(1,2))
d$c1
列 c1 仍然有 3 个级别 (1,2,3),但实际上我希望它是 (1,2),因为这些对于级别 3 没有价值。然后在可视化中,我不会绘制任何图表对于第 3 级。
我怎样才能做到这一点?谢谢