Sklearn-style generator of geo features: distances, angles, cosine similarity, KMeans, NN, polar features
Project description
geo-features-generator
Генератор гео-признаков для больших данных: расстояния (Haversine, equirectangular, Manhattan), углы/синусы/косинусы, средние точки, дельты, квадраты расстояний, косинусная близость (3D), кластеризация KMeans, расстояния до ближайшего соседа, полярные признаки относительно базовой точки, H3 ячейки.
Установка
pip install geo-features-generator
Быстрый старт
from geo_features_generator import GeoFeaturesGenerator
# Основные гео-признаки
gen = GeoFeaturesGenerator(
[("lat1", "lon1"), ("lat2", "lon2")],
enable_squared_distances=True,
enable_normed_deltas=True,
enable_cosine_similarity=True,
enable_h3=True,
)
features = gen.fit_transform(df)
Параметры
Обязательные параметры:
coordinate_pairs: список пар имен столбцов(lat, lon). Первый аргумент, передается как[("lat1", "lon1"), ("lat2", "lon2")].
Опциональные параметры (переключатели функций True/False):
enable_squared_distances(по умолчанию True): добавляет_m2признаки квадратов расстояний (haversine_m2,equirect_m2,manhattan_m2)enable_normed_deltas(по умолчанию True): добавляетabs_dlat_m,abs_dlon_m- абсолютные разности координат в метрахenable_cosine_similarity(по умолчанию True): добавляетcosine_sim,cosine_distкосинусную близость по 3D векторному произведению на сфереenable_kmeans(по умолчанию False): добавляет*_kmeans_labelметки кластеров для каждой точки. Требуется scikit-learn.enable_nearest_neighbor(по умолчанию False): добавляет*_nn_haversine_mрасстояния до ближайшего соседа. Требуется scikit-learn.enable_polar_features(по умолчанию False): добавляет полярные признаки*_polar_bearing_deg,*_polar_dist_mотносительно базовой точкиenable_h3(по умолчанию False): добавляет H3 ячейки для каждой геофичи. Требует скачанную библиотеку 'h3'. Дополнительные параметры:radius(по умолчанию 6371000): радиус сферы в метрах для расчета расстоянийoutput_format(по умолчанию "pandas"): формат вывода - "pandas" или "numpy"polar_base_point: координаты(lat, lon)базовой точки для полярных признаковh3_resolutions(по умолчанию [8, 10]): список разрешений H3 ячеек для генерации признаков
Описание функций
Геодетические расстояния
- Haversine: точное сферическое расстояние по формуле гаверсинуса
- Equirectangular: быстрое приближенное расстояние на основе равнопрямоугольной проекции
- Manhattan: приближенное манхэттен-расстояние вдоль параллелей и меридианов
Математические признаки координат
- Тригонометрические: sin/cos преобразования широты и долготы для цикличности признаков
- Полярные признаки: азимут и расстояние от заданной базовой точки
Угловые признаки
- Начальный азимут: угол направления между двумя точками
- Синусы и косинусы: циклическое представление углов
- Косинусное сходство: скалярное произведение векторов на единичной сфере
Расстояния и геометрия
- Квадраты расстояний: для машинного обучения, увеличенная роль больших расстояний
- Нормализованные дельты: разности координат в метрах вдоль меридианов и параллелей
- Средние точки: геометрический центр между двумя точками по большой окружности
Машинное обучение
- KMeans кластеризация: автоматическая группировка точек по схожести координат
- Ближайший сосед: расстояние до наиболее похожей точки в наборе данных
H3 геопространственные признаки
- H3 ячейки: добавляет для каждой геофичи H3 ячейки с заданными разрешениями (например, [8, 10])
Контакты
Лицензия
MIT. См. файл LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file geo_features_generator-0.2.0.tar.gz.
File metadata
- Download URL: geo_features_generator-0.2.0.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cdefb3155c0216a9f2ef64e35df555cb1a8ffa4f137c1f358cfde1416ca9beb0
|
|
| MD5 |
2097919ed220ea5c04aa5b94becdabc6
|
|
| BLAKE2b-256 |
360b871d414cc633373c6776575c08da0ab5717e68b2b9adfc4d2473895a8348
|
File details
Details for the file geo_features_generator-0.2.0-py3-none-any.whl.
File metadata
- Download URL: geo_features_generator-0.2.0-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d45061d58bbf5c41b06098b987be75656e64245c1144c0134ab21b2ea7497646
|
|
| MD5 |
8c64ee3c914679f4228ec6f650d3d3b3
|
|
| BLAKE2b-256 |
c54a9a40bf99ee2029c9c1009da5a7ffb695f02791ca82ce7b48fb31d27672c3
|