我是R的新手,我想用它来对我拥有的数据集执行特征选择 . 我找到了FSelector包 . 我看了一下手册,但我有些疑惑 .
data(iris)
weights <- relief(Species~., iris, neighbours.count = 5, sample.size = 20)
subset <- cutoff.k(weights, 2)
f <- as.simple.formula(subset, "Species")
此示例使用Relief方法计算每个变量的重要性 . 最后一行创建一个公式:“class = feature1 feature2 ... featureN” . 现在,给定所选特征的子集(一个字符数组),我如何从虹膜创建一个新的数据集,它只包含那些变量(即一个包含2列的矩阵)?
1 回答
如果我理解正确,你可以使用
cutoff.k
的结果获取虹膜的子集,因为它返回一个带有你想要保留的变量名称的向量:这里
[]
命令用于获取虹膜的子集,在这种情况下,只有cutoff.k
结果中名称的列(行/列表示如下:[rows,columns]
) .得到
matrix
而不是data.frame
:as.matrix(iris[,cutoff.k(weights, 2)])