A lib python to processing and visualization of trajectories and other spatial-temporal data
Project description
Use PyMove and go much further
Information
| Package Status | |
| License | |
| Python Version | |
| Platforms | |
| Build Status | |
| PyPi version | |
| PyPi Downloads | |
| Conda version | |
| Conda Downloads | |
| Code Quality | |
| Code Coverage |
What is PyMove
PyMove is a Python library for processing and visualization of trajectories and other spatial-temporal data.
We will also release wrappers to some useful Java libraries frequently used in the mobility domain.
Read the full documentation on ReadTheDocs
Main Features
PyMove proposes:
-
A familiar and similar syntax to Pandas;
-
Clear documentation;
-
Extensibility, since you can implement your main data structure by manipulating other data structures such as Dask DataFrame, numpy arrays, etc., in addition to adding new modules;
-
Flexibility, as the user can switch between different data structures;
-
Operations for data preprocessing, pattern mining and data visualization.
Creating a Virtual Environment
It is recommended to create a virtual environment to use pymove.
Requirements: Anaconda Python distribution installed and accessible
-
In the terminal client enter the following where
env_nameis the name you want to call your environment, and replacex.xwith the Python version you wish to use. (To see a list of available python versions first, type conda search "^python$" and press enter.)-
conda create -n <env_name> python=x.x -
Press y to proceed. This will install the Python version and all theassociated anaconda packaged libraries atpath_to_your_anaconda_location/anaconda/envs/env_name
-
-
Activate your virtual environment. To activate or switch into your virtual environment, simply type the following where yourenvname is the name you gave to your environment at creation.
conda activate <env_name>
-
Now install the package from either
conda,piporgithub
Conda instalation
conda install -c conda-forge pymove
Pip installation
pip install pymove
Github installation
-
Clone this repository
git clone https://github.com/InsightLab/PyMove
-
Switch to folder PyMove
cd PyMove
-
Switch to a new branch
git checkout -b developer
-
Make a pull of branch
git pull origin developer
-
Install pymove in developer mode
make dev
For windows users
If you installed from pip or github, you may encounter an error related to
shapely due to some dll dependencies. To fix this, run conda install shapely.
Examples
You can see examples of how to use PyMove here
Mapping PyMove methods with the Paradigms of Trajectory Data Mining
-
1: Spatial Trajectories →
pymove.coreMoveDataFrameDiscreteMoveDataFrame
-
2: Stay Point Detection →
pymove.preprocessing.stay_point_detectioncreate_or_update_move_stop_by_dist_timecreate_or_update_move_and_stop_by_radius
-
3: Map-Matching →
pymove-osmnx -
4: Noise Filtering →
pymove.preprocessing.filtersby_bboxby_datetimeby_labelby_idby_tidclean_consecutive_duplicatesclean_gps_jumps_by_distanceclean_gps_nearby_points_by_distancesclean_gps_nearby_points_by_speedclean_gps_speed_max_radiusclean_trajectories_with_few_pointsclean_trajectories_short_and_few_pointsclean_id_by_time_max
-
5: Compression →
pymove.preprocessing.compressioncompress_segment_stop_to_point
-
6: Segmentation →
pymove.preprocessing.segmentationbbox_splitby_dist_time_speedby_max_distby_max_timeby_max_speed
-
7: Distance Measures →
pymove.distancesmedpmedteuclidean_distance_in_metershaversine
-
8: Query Historical Trajectories →
pymove.query.queryrange_queryknn_query
-
9: Managing Recent Trajectories
-
10: Privacy Preserving
-
11: Reducing Uncertainty
-
12: Moving Together Patterns
-
13: Clustering →
pymove.models.pattern_mining.clusteringelbow_methodgap_statisticsdbscan_clustering
-
14: Freq. Seq. Patterns
-
15: Periodic Patterns
-
16: Trajectory Classification
-
17: Trajectory Outlier / Anomaly Detection →
pymove.semantic.semanticoutlierscreate_or_update_out_of_the_bboxcreate_or_update_gps_deactivated_signalcreate_or_update_gps_jumpcreate_or_update_short_trajectorycreate_or_update_gps_block_signalfilter_block_signal_by_repeated_amount_of_pointsfilter_block_signal_by_timefilter_longer_time_to_stop_segment_by_id
Cite
The library was originally created during the bachelor's thesis of 2 students from the Federal University of Ceará, so you can cite using both works.
@mastersthesis{arina2019,
title = {Uma arquitetura e implementação do módulo de pré-processamento para biblioteca PyMove},
author = {Arina De Jesus Amador Monteiro Sanches},
year = 2019,
school = {Universidade Federal Do Ceará},
type = {Bachelor's thesis}
}
@mastersthesis{andreza2019,
title = {Uma arquitetura e implementação do módulo de visualização para biblioteca PyMove},
author = {Andreza Fernandes De Oliveira},
year = 2019,
school = {Universidade Federal Do Ceará},
type = {Bachelor's thesis}
}
Publications
- Uma arquitetura e implementação do módulo de pré-processamento para biblioteca PyMove
- Uma arquitetura e implementação do módulo de visualização para biblioteca PyMove
- Avaliação de técnicas de aumento de dados para trajetórias
- Implementação de algoritmos para análise de similaridade de trajetória na biblioteca PyMove
Useful list of related libraries and links
Project details
Release history Release notifications | RSS feed
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 pymove-3.0.1.tar.gz.
File metadata
- Download URL: pymove-3.0.1.tar.gz
- Upload date:
- Size: 506.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a773b9c5017afd4f1db69691dc699a77d97ef0281540004c5dcfee2e1818360c
|
|
| MD5 |
d3e9a8e2fdcd0f300f182e166760c59a
|
|
| BLAKE2b-256 |
60126d4cfad5966685ce359f3f21ae0a4ca6ced2cf00dce7b728b3ddb12aae57
|
File details
Details for the file pymove-3.0.1-py3-none-any.whl.
File metadata
- Download URL: pymove-3.0.1-py3-none-any.whl
- Upload date:
- Size: 400.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2aa1efc3867b8c685afaee9a2896f2f219680c8df0be057491ecebe6854e98ba
|
|
| MD5 |
f470305413ab6c1c7828fe14e25780c7
|
|
| BLAKE2b-256 |
dc9429812762915f5c8267b1f4bb78b4ab3fe4ffabea54c08d9b0447ca53daaa
|