在某些值不再存在后重新计算数据帧

时间:2015-01-06 08:07:07

标签: r

我试图对数据框中的所有列因子进行重新分解,以减少因子级别的数量。示例是在我的情况下,在我删除了数据框中大约50%的行之后,很多列的因子级别中的值不再存在,我想删除它们。数据框包含很多列是因素,所以一次重新分解它们对我来说变得乏味。

在SO中还有另一个问题refactor data.frame column values,但它没有解决我的问题,所以我想我会在这里提出问题作为参考。

1 个答案:

答案 0 :(得分:1)

我找到了一些答案here,而我选择的答案来自Brian Ripley教授:

ind <- sapply(DF, is.factor)
DF[ind] <- lapply(DF[ind], "[", drop=TRUE) 

DF是数据框。