Получите ограничивающую рамку координат, игнорируя крайние локации - PullRequest
1 голос
/ 01 февраля 2011

Я пытаюсь создать ограничивающий прямоугольник вокруг набора координат, но я хочу «сфокусироваться» на группах координат и игнорировать любые отдаленные точки, которые могут испортить карту. (Представьте себе карту из 10 мест в городе и 1 в другой стране)

Как лучше всего построить верхние левые и нижние правые значения?

Ответы [ 3 ]

1 голос
/ 01 февраля 2011

Сначала я бы определил ваши критерии для "крайних местоположений"

Что-то вроде "снаружи 2 σ", тогда вам просто нужно вычислить среднее значение в обоих измерениях и нарисовать линии на 2σ.Если вам нужна какая-то извилистая граница, то все становится намного сложнее ... Начните с ваших критериев и двигайтесь вперед оттуда.

Итак, давайте предположим, что вы хотите исключить вещи, превышающие 2σ, из среднего значения

Вам необходимо вычислить:

σ (x), σ (y), среднее (x), среднее (y)

Тогда ваша верхняя левая граница равна (среднее (x) -2σ)(x), среднее значение (y) + 2σ (y))

и ваша нижняя правая граница (среднее (x) + 2σ (x), среднее (y) -2σ (y))

это даст прямоугольник для 2σ в обоих измерениях.Для круга все будет немного сложнее ... начнем с определения "приемлемого региона"

0 голосов
/ 01 февраля 2011

Используйте на практике то, что вы узнали на курсах по статистике;Например:

  1. Рассчитать среднее значение ваших координат X и Y
  2. Рассчитать стандартное отклонение (X и Y)
  3. Отменить элементы, которые являются более чем двумя stdevs изваше среднее значение
  4. Рассчитайте вашу ограничивающую рамку на основе полученных координат
0 голосов
/ 01 февраля 2011

Вычислите центроид, а затем выберите точку, ближайшую к центроиду.Затем отбросьте любую точку, которая больше некоторого постоянного расстояния (или, возможно, некоторого порога, такого как одно или два стандартных отклонения от этой точки).Теперь пересчитайте, используя усеченный набор точек.Делайте это до тех пор, пока вы не будете довольны результатом (т.е. все точки находятся в границах, которые вы определяете).

Как сказал Мэтью П.К., это будет работать для простого радиуса, но если вы хотите какой-то типизогнутая граница, много дополнительной работы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...