2012-06-14 12 views
2

В rtree, как я могу определить порог для тестирования равенства поплавка?В rtree, как я могу определить порог для тестирования равенства поплавка?

При проверке ближайших соседей rtree может возвращать больше заданного количества результатов, как если бы две точки были равноудалены, он возвращает оба значения. Чтобы проверить это эквидистантность, он должен иметь некоторый порог, так как расстояния являются поплавками. Я хочу контролировать этот порог.

ответ

0

На самом деле, для обработки галстуков необязательно иметь порог. Они просто случаются.

Предполагая, что вы точки данных (1.,0.) и (0.,1.) и точкой запроса (0.,0.), любая реализация я видел евклидова расстояния возвратит точное одинаковое расстояние для обоих, без какого-либо порога.

+0

Не было бы хорошей идеей для них включить пороги и сделать значение изменчивым API? С их стороны было бы легко сделать это, но было бы очень сложно для тех, кто использует их в качестве API, скажем, из Python. – SherjilOzair

+0

Почему? Что вы ожидаете от этого? Просто используйте большее окно запросов или получите еще несколько соседей? Или используйте инкрементный API ближайшего соседа, тогда вы можете решить, когда прекратить опрос в вашем коде. Очевидно, что нет необходимости путать результаты. –

+0

Я уверен, что поплавки и парные пары всегда должны быть проверены на равенство, используя ПОРОГ. Это то, чему они научили меня в Scientific Computing 101. – SherjilOzair