【发布时间】:2013-08-01 13:18:20
【问题描述】:
我正在为我的数据框EMGbin 使用bnlearn 包中的程序gs。数据框EMGbin 包含从 A 到 Z 的所有因子。EMGbin 有 600000 列和 130 行。这是EMGbin的示例:
V101 V102 V103 V104 V105 V106
1 L M D S O O
2 L M C P A O
3 J M C O O O
4 L N D R A O
5 K M D O A O
6 K M C P O O
7 K N D Q O O
8 L N D R O O
9 L M D O O O
10 K M D S A O
当我运行程序 gs(EMGbin) 时,我得到了错误:
Error in check.data(x) : all factors must have at least two levels.
当我运行sapply(EMGbin, nlevels) 时,我看到了 600,000 个变量中每个变量的级别,并且我看到其中一些被列为 1 级别。删除具有 1 个因子水平的变量会有所帮助吗?到目前为止,我知道如何做到这一点的唯一方法是 x[, sapply(x, fun) != 1],但我不知道用什么替代 fun。
【问题讨论】:
标签: r