Округление широты и долготы в пределах примерно 500 метров

#latitude-longitude

#широта-долгота

Вопрос:

У меня более 350 000 пар десятичных значений широты и долготы. Эти пары представляют местоположения в США. Эти данные дают мне довольно точные данные, но мне не нужно быть таким точным.

Я ищу рекомендации о том, как округлить эти значения, чтобы я мог уменьшить свои местоположения с 350 000 до чего-то меньшего.

  • Округление обоих значений до ближайшей сотой дает 138 тыс. пар.
  • Округление обоих значений до ближайшей тысячной дает 320 тыс. пар.

Если округлять до 2-го десятичного знака, я боюсь, что я захожу слишком далеко. При округлении до 3-го знака после запятой я чувствую, что у меня все еще слишком много пар. В идеале я хотел бы находиться в пределах, возможно, 400-600 метров от фактической широты / lon. Я полагаю, что округление до 3-го десятичного знака действительно приближается к желаемой области, но немного со строгой стороны.

Кто-нибудь пробовал это и, возможно, использовал подход округления широты до 2-го десятичного знака и долготы до 3-го десятичного знака? Вы бы порекомендовали одно вместо другого? Опять же, большая часть данных в континентальной части США, с некоторыми на Аляске и Гавайях.

Ответ №1:

Сохранение точности в ваших значениях широты более полезно, чем точность в долготе. На экваторе точность (в градусах) получается одинаковой, но по мере того, как вы двигаетесь оттуда на север или юг, расстояние в градусной долготе становится все меньше и меньше.

Если вам действительно нужно в пределах 500 метров, и вы предполагаете, что округление каждого местоположения приводит к равной потере расстояния, вы можете округлить каждое значение на 354 метра. (То есть вы нацелены на округление каждого равного расстояния в среднем.)

354 метра — это примерно 0,0033 градуса широты в любой точке мира. (В зависимости от местоположения разница составляет менее процента.)

Но долгота меняет размер гораздо более резко: на севере Аляски, на широте 70 градусов Северной широты, 354 метра приближаются к 0,01 градуса долготы, но на Гавайях то же расстояние с востока на запад равно 0,0033 градуса.

Вместо простого округления не могли бы вы сгруппировать до ближайшей четной тысячной для широты? Для долготы сгруппируйте до ближайшей сотой, если широта больше 50, сгруппируйте до ближайшей четной тысячной в противном случае.

Может быть, людям сложно объяснять, но, я думаю, не слишком сложно кодировать.

Комментарии:

1. Спасибо за отзыв, я ценю это. Я решил сохранить свои 350 тыс. баллов из-за запроса продукта, вздох. Я отмечаю это как утвержденный ответ на случай, если ситуация изменится в будущем.