输出数据帧中所有因子的级别数

时间:2015-02-23 14:18:02

标签: r

我正在尝试创建一个列表或df,其中包含数据帧中所有因素的因子级别数。

所以,看来我需要首先确定因素(使用is.factor()),然后计算每个因素的级别数(使用length()

我使用的是sapply,但无法获得我想要的内容。

任何帮助都将不胜感激。

这是我到目前为止所做的:

fac <- sapply(cf_nm, function(x) is.factor(x)  )
fac <- cf_nm[fac]

我可以简单地计算一下这里的水平 - 但我希望有一种更有说服力的方式来做我想做的事。

1 个答案:

答案 0 :(得分:10)

我相信您正在寻找nlevels而不是length的等级数。

这是一个快速解决方案。

sapply(df1[,sapply(df1, is.factor)], nlevels)