MEOS (Mobility Engine, Open Source) is a C library which enables the manipulation of temporal and spatio-temporal data based on MobilityDB's data types and functions.
PyMEOS is a library built on top of MEOS that provides all of its functionality wrapped in a set of Python classes.
For the PyMEOS CFFI library, the middle layer between MEOS and PyMEOS, see the PyMEOS CFFI repository.
Usage
Installation
You can install PyMEOS (pymeos and pymeos-cffi) using pip, conda, or from sources.
Using pip
pip install pymeos
PyMEOS wheel should be compatible with any system, but it is possible that the pre-built distribution is not available for PyMEOS CFFI for some OS/Architecture.
Using conda
PyMEOS is also available on the conda-forge channel. To install it, first add the conda-forge channel to your conda configuration:
conda config --add channels conda-forge
conda config --set channel_priority strict
Then, you can install PyMEOS using the following command:
conda install conda-forge::pymeos
Source installation
For detailed instructions on how to install PyMEOS from sources, see the installation page in the PyMEOS Documentation.
Sample code
IMPORTANT Before using any PyMEOS function, always call
pymeos_initialize. Otherwise, the library will crash with aSegmentation Faulterror. You should also always callpymeos_finalizeat the end of your code.
from pymeos import pymeos_initialize, pymeos_finalize, TGeogPointInst, TGeogPointSeq
# Important: Always initialize MEOS library
pymeos_initialize()
sequence_from_string = TGeogPointSeq(
string='[Point(10.0 10.0)@2019-09-01 00:00:00+01, Point(20.0 20.0)@2019-09-02 00:00:00+01, Point(10.0 10.0)@2019-09-03 00:00:00+01]')
print(f'Output: {sequence_from_string}')
sequence_from_points = TGeogPointSeq(instant_list=[TGeogPointInst(string='Point(10.0 10.0)@2019-09-01 00:00:00+01'),
TGeogPointInst(string='Point(20.0 20.0)@2019-09-02 00:00:00+01'),
TGeogPointInst(string='Point(10.0 10.0)@2019-09-03 00:00:00+01')],
lower_inc=True, upper_inc=True)
speed = sequence_from_points.speed()
print(f'Speeds: {speed}')
# Call finish at the end of your code
pymeos_finalize()
Output: [POINT(10 10)@2019-09-01 01:00:00+02, POINT(20 20)@2019-09-02 01:00:00+02, POINT(10 10)@2019-09-03 01:00:00+02]
Speeds: Interp=Step;[17.84556057812839@2019-09-01 01:00:00+02, 17.84556057812839@2019-09-03 01:00:00+02]
For more examples and use-cases, see PyMEOS Examples repository
Documentation
Visit our ReadTheDocs page for a more complete and detailed documentation, including an installation manual and several examples.
Metadata
Release files for pymeos 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pymeos-1.2.1.tar.gz | 88.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pymeos-1.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 216.8 kB
Release files / pymeos-1.2.1.tar.gz
| Download URL | pymeos-1.2.1.tar.gz |
|---|---|
| Size | 88.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
35a642c2bb24e080dc5aad40dc2fd2bd68871d73af98defca50c8c79b8ad5bbb
|
|
BLAKE2b-256 checksum How to use checksums |
9196069a15e143b3bb7fe8362f9592cdf35dcb99b827ca52b396727e4e60f09a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 14, 2025.
Transparency logRelease files / pymeos-1.2.1-py3-none-any.whl
| Download URL | pymeos-1.2.1-py3-none-any.whl |
|---|---|
| Size | 128.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1624ff9e69e9c7b708011399898dabb4e663e6daf0bc85ac7d7349dbff5019e5
|
|
BLAKE2b-256 checksum How to use checksums |
fa43d6abbbf9deb12df953b66ff3570fc7ad7dd7328ca4d3cfe041b0ee62c9d3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 14, 2025.
Transparency log