Skip to main content

Sklearn-style generator of geo features: distances, angles, cosine similarity, KMeans, NN, polar features

Project description

geo-features-generator

Генератор гео-признаков в стиле sklearn: расстояния (Haversine, equirectangular, Manhattan), углы/синусы/косинусы, средние точки, дельты, квадраты расстояний, косинусная близость (3D), кластеризация KMeans, расстояния до ближайшего соседа, полярные признаки относительно базовой точки.

Установка

pip install geo-features-generator

Быстрый старт

import pandas as pd
from geo_features_generator import GeoFeaturesGenerator

df = pd.DataFrame({
    "lat1": [55.75, 59.93],
    "lon1": [37.62, 30.33],
    "lat2": [59.93, 55.75],
    "lon2": [30.33, 37.62],
})

gen = GeoFeaturesGenerator(
    coordinate_pairs=[("lat1", "lon1"), ("lat2", "lon2")],
    enable_squared_distances=True,
    enable_normed_deltas=True,
    enable_cosine_similarity=True,
    enable_kmeans=False,
    enable_nearest_neighbor=False,
    enable_polar_features=True,
    polar_base_point=(55.75, 37.62),
)

features = gen.fit_transform(df)
print(features.head())

Параметры

  • coordinate_pairs: список пар имен столбцов (lat, lon).
  • radius: радиус сферы (метры), по умолчанию 6_371_000.
  • output_format: "pandas" или "numpy".
  • generate_point_features: генерировать признаки для каждой точки.
  • generate_pair_features: генерировать признаки для пар точек.
  • enable_squared_distances: добавляет _m2 признаки квадратов расстояний.
  • enable_normed_deltas: добавляет abs_dlat_m, abs_dlon_m (в метрах).
  • enable_cosine_similarity: cosine_sim, cosine_dist по 3D dot на сфере.
  • enable_kmeans: добавляет *_kmeans_label для каждой точки (требуется scikit-learn).
  • kmeans_n_clusters, kmeans_random_state: параметры KMeans.
  • enable_nearest_neighbor: добавляет *_nn_haversine_m (требуется scikit-learn).
  • enable_polar_features: добавляет *_polar_bearing_deg, *_polar_dist_m относительно polar_base_point.
  • polar_base_point: (lat, lon) базовой точки.

Контакты

  • Telegram
  • GitHub

Лицензия

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

geo_features_generator-0.1.3.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

geo_features_generator-0.1.3-py3-none-any.whl (2.4 kB view details)

Uploaded Python 3

File details

Details for the file geo_features_generator-0.1.3.tar.gz.

File metadata

  • Download URL: geo_features_generator-0.1.3.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for geo_features_generator-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a0a5d5f216d510f5971454a797303595be749eb10f12fd44426bdcc4ad574709
MD5 8b20d31838ea107ddffa847e99314825
BLAKE2b-256 e776c4ef5cb65018afcd5bf6e223734191b122eec680d5eefaf25236266d6bf1

See more details on using hashes here.

File details

Details for the file geo_features_generator-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for geo_features_generator-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f95f52f8658eb227ae7666ba5b3c4b51133c09295f95c0dd037239d5d03d1439
MD5 1d7cca8158fbe50136b28ca826826569
BLAKE2b-256 9ab66b8f5b7c346125b2cb16405c0378740688a45694ce0fd9429122a5c9291e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page