Java Weka 统计属性不同值的出现次数

我有一个属性(使用 Weka!)

@attribute age {10-19,20-29,30-39,40-49,50-59,60-69,70-79,80-89,90-99}

现在,对于给定的 Instances data,我想获取属性 age 中每个 Instance 的出现次数。因此,如果在 data 中有 50 个实例的属性为 age 10-19,100 个人的属性为 age 20-29,以及 150 个人的属性为 age 30-39,那么我想统计这些数据,并得到类似以下的结果:

age 10-19: 50age 20-29: 100age 30-39: 150age 40-49: 0age 50-59:0...age 90-99: 0

我的初步想法是使用某种简单的方法,比如使用哈希映射来统计每个值的出现次数,但我认为可能有更好的解决方案。任何帮助都将不胜感激(即使是简单的方法)。谢谢!


回答:

找到了一种解决方案。

对于作为索引的属性 i,通过遍历数据集并使用 instance.value(i) 查找属性 i 的实例属性值索引。

Instances training = loadData("...");int[] countAttributes = new int[training.attribute(i).numValues()];for(Instance instance: training){    countAttributes[(int)instance.value(i)]++;}

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注