2

我正在处理高维和大型数据集,所以我需要从ResultWriter. elki 中有一些选项可以从这个输出中获取前 N 个异常值?

4

1 回答 1

1

ResultWriter是 ELKI 中一些最古老的代码,需要重写。它相当通用 - 它试图找出如何最好地将输出序列化为文本。

如果您想要某种特定格式或特定子集,正确的方法是编写自己的ResultHandler. 有一个编写ResultHandler.

如果要在结果中查找输入坐标,

Database db = ResultUtil.findDatabase(baseResult);
Relation<NumberVector> rel = db.getRelation(TypeUtil.NUMBER_VECTOR_VARIABLE_LENGTH);

将返回包含数字向量的第一个关系。

要遍历按异常值排序的对象,请使用:

OrderingResult order = outlierResult.getOrdering();
DBIDs ids = order.order(order.getDBIDs());
for (DBIDIter it = ids.iter(); it.valid(); it.advance()) {
  // Output as desired.
}
于 2015-03-05T14:41:09.153 回答