2015-03-08 90 views
0

我正在为我的数据进行QSAR研究,并在通过DRAGON软件运行我的结构并获取描述符后,剩下383个描述符(移除常量和全部)。 现在我想对我的数据执行特征选择。其中n = 26和p = 383。那么我应该遵循什么方法? 我已经做了一些明智的回归分析以及遗传算法研究,以获得7个非常合适的描述符的R2值为0.831。 但我想尝试其他方法,例如随机森林方法,PLS或PCA来处理我的数据。我使用相同的R。因此,可以使用的包的任何想法。我已经与Caret和Boruta包合作。 Plus交叉验证研究包的任何想法。我需要执行LOOCV和Bootstrap。R中用于QSAR数据的特征选择用于回归分析

感谢您的帮助。

+0

您有26个观察值和383个潜在特征?这是一个TALL任务...通常,我将通过使用每个子集上的特征选择来一次循环几个变量,并随时更新获胜变量。 – Jason 2015-03-08 22:09:52

+0

谢谢杰森。即使我在第一种方法中也是这样做的。将数据集分成许多子集,然后用于特征选择。但是我听说随机森林并且要求特征选择方法可以与这个庞大的数据集一起工作。所以我只想知道是否有人知道如何在R中实现它! – 2015-03-11 04:07:01

回答

0

如果您使用随机森林或梯度增强算法,它们有时会实现一个功能,显示每个功能的“重要性”分数。

这基本上是算法选择某个特征的频率。你可以运行你所有功能的算法,然后看看这个分数。在例如XGBoost未使用的功能甚至不会出现在该列表中。所以,你可以用它来测试哪些功能是重要的或不是。

由于您拥有许多功能,因此您可能会先使用随机功能子集运行,然后终止不是或仅很少使用的功能。

我发现“重要性”这个词在这里有点误导,因为杀死很多“不重要”的功能可能会导致性能的降低。但是,测试无法使用的功能肯定是一个很好的策略。