0

我从 WEKA 开始,想要实现以下目标。

我有具有 2 个属性的文件:user_id、user_age。我可以使用 WEKA API 成功加载数据并获取Instances对象。

现在我想计算新属性 user_age_range - 比如 (0-18) - 0, (19-25) - 1 等。

有没有办法使用 WEKA 过滤器计算这个属性?此外,我不想手动遍历所有实例,而是定义在单个实例上运行的方法Instance并使用一些过滤器(或其他抽象),将相应的“转换”应用于所有实例。

请建议 - 我怎么能做到这一点。

提前致谢。

4

2 回答 2

0

在浏览完文档后,我发现了一两个过滤器,您可以结合使用它们来实现您想要的效果。

http://weka.sourceforge.net/doc.dev/weka/filters/unsupervised/attribute/Copy.html

使用副本创建您将转换的副本。

http://weka.sourceforge.net/doc.dev/weka/filters/unsupervised/attribute/NumericTransform.html

数字转换需要一个类和一个方法选项,您可以编写自己的类,将年龄框到您想要的范围内,并提供此类和方法作为您的选项。

希望这可以帮助

于 2013-03-08T13:38:52.150 回答
0

使用 csv 文件,您可以在 Excel 上执行此操作。如果您使用的是 arff 文件,请将其转换为 csv,然后您可以根据新属性的数量添加所需的列,然后对第一行的一个或多个属性执行任何您想做的事情。将其扩展到所有行并完成。

于 2018-07-06T14:34:54.103 回答