首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用FSelector软件包正确计算所有权重?

如何使用FSelector软件包正确计算所有权重?
EN

Stack Overflow用户
提问于 2016-05-31 22:40:58
回答 1查看 790关注 0票数 0

我试图使用FSelector包计算R中数据集的权重。数据采用从这个地方

代码语言:javascript
复制
data = read.csv("filepath/Indian Liver Patient Dataset (ILPD).csv")
names(data)<-c("Age","Gender", "TB", "DB", "Alkphos", "Sgpt", "Sgot", "TP", "ALB", "A/G Ratio", "Selector")
library(FSelector)
weights <- gain.ratio(Selector ~., data)
print(weights)

我不能计算所有的重量。当我使用gain.ratio函数时,Age的权重是NaN。当我使用chi.squared函数时,AgeA/G Ratio都是零。当我从data中提取前200个元素并计算权重时,只有5个元素被同时计算,而其他元素则是零或NaN。

我尝试通过data <- na.omit(data)从数据中删除错误的元素,但是没有改变结果。

怎样才能正确计算重量?

下面是一个重量打印的例子。

代码语言:javascript
复制
Age             0.0000000
Gender          0.1304229
TB              0.3281865
DB              0.3238010
Alkphos         0.2965842
Sgpt            0.2734633
Sgot            0.3120432
TP              0.2504747
ALB             0.3051724
A/G Ratio       0.0000000
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-01 17:34:01

零是特征重要性的有效值--这意味着特征没有任何关于分类目标的信息。NaNs是由FSelector中的一个bug引起的,如果某个特性不包含任何信息,该错误除以0。我已经在开发版本中修正了这个问题。

名称"A/G比率“不是有效的R标识符,因此会导致某些方法的问题。下面的代码修复了这个问题,并安装了FSelector的开发版本。

代码语言:javascript
复制
data = read.csv("Indian\ Liver\ Patient\ Dataset\ (ILPD).csv")
names(data)<-c("Age","Gender", "TB", "DB", "Alkphos", "Sgpt", "Sgot", "TP", "ALB", "AGRatio", "Selector")

library(devtools)
install_github("larskotthoff/fselector")

library(FSelector)
weights = gain.ratio(Selector~., data)
print(weights)

weights = chi.squared(Selector~., data)
print(weights)

输出:

代码语言:javascript
复制
        attr_importance
Age          0.00000000
Gender       0.01539699
TB           0.09711392
DB           0.11547683
Alkphos      0.06593879
Sgpt         0.06566624
Sgot         0.07667241
TP           0.08836895
ALB          0.07766682
AGRatio      0.15403574

        attr_importance
Age           0.0000000
Gender        0.1304229
TB            0.3281865
DB            0.3238010
Alkphos       0.2965842
Sgpt          0.2734633
Sgot          0.3120432
TP            0.2504747
ALB           0.3051724
AGRatio       0.0000000
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37556815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档