Skip to main content

Human mobility and movement analysis framework.

Project description

The trackintel Framework

Binder PyPI version Build Status Documentation Status codecov.io

Focusing on human mobility data, trackintel provides functionalities for data quality enhancement, integrating data from various sources, performing quantitative analysis and mining tasks, and visualizing the data and/or analysis results. In addition to these core functionalities, packages are provided for user mobility profiling and trajectory-based learning analytics.

You can find the documentation on the trackintel documentation page.

Target Users and Assumptions

trackintel is intended for use mainly by researchers with:

  • Programming experience in Python
  • Proficiency in movement data mining and analysis

These assumptions concern your data:

  • Movement data exists in csv, (geo)json, gpx or PostGIS format
  • Movement data consists of points with x,y-coordinates, a time stamp, a user ID, and an optional accuracy
  • One of the following transportation modes was used at any time: car, walking, bike, bus, tram, train, plane, ship, e-car, e-bike
  • The tracking data can be reasonably segmented into
    • positionfixes (raw tracking points)
    • triplegs (or stages) (aggregated tracking points based on the transport mode)
    • trips (aggregated activities based on the visited destination / staypoint)
    • tours (aggregated trips starting / ending at the same location / staypoint)

Installation and Usage

This is not on pypi.org yet, so to install you have to git clone the repository and install it with pip install . or pipenv install -e .. If you choose the second approach and you are on Windows, you might have to install individual wheels (e.g., from https://www.lfd.uci.edu/~gohlke/pythonlibs). For this, activate the environment using pipenv shell and install everything using pip install ... (in particular: GDAL, numpy, sklean, Rtree, fiona and osmnx). You can quit this shell at any time using exit.

You should then be able to run the examples in the examples folder or import trackintel using:

import trackintel

Development

You can install trackintel locally using pip install .. For quick testing, use trackintel.print_version().

Testing is done using pytest. Simply run the tests using pytest in the top-level trackintel folder. In case you use pipenv, install pytest first (pip install pytest), then run pytest using this version: python -m pytest. The use of fixtures for data generation (e.g., trips and trackpoints) is still an open todo. As for now, there are some smaller datasets in the tests folder.

Versions use semantic numbering. Commits follow the standard of Conventional Commits. You can generate them easily using Commitizen.

You can find the development roadmap under ROADMAP.md.

Documentation

The documentation follws the pandas resp. numpy docstring standard. In particular, it uses Sphinx to create the documentation. You can install Sphinx using pip install -U sphinx or conda install sphinx.

If you use additional dependencies during development, do not forget to add them to autodoc_mock_imports in docs/conf.py for readthedocs.org to work properly.

You can then generate the documentation using sphinx-build -b html docs docs.gen. This will put the documentation in docs.gen, which is in .gitignore.

Continuous Integration

There are travis and appveyor CIs set up for Unix/Windows builds. You can find the corresponding scripts in .travis.yml and appveyor.yml. Adding Coveralls is an open todo.

Contributors

trackintel is primarily maintained by the Mobility Information Engineering Lab at ETH Zurich (mie-lab.ethz.ch). If you want to contribute, send a pull request and put yourself in the AUTHORS.md file.

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

trackintel-0.4.1.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

trackintel-0.4.1-py3-none-any.whl (56.7 kB view details)

Uploaded Python 3

File details

Details for the file trackintel-0.4.1.tar.gz.

File metadata

  • Download URL: trackintel-0.4.1.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for trackintel-0.4.1.tar.gz
Algorithm Hash digest
SHA256 c8f5d90d7e4c0aceda5bc1b8b2157b510547f16fdce520d089aba678d84319bc
MD5 e085893bccfcccea4aea3d178341440d
BLAKE2b-256 8e5943e1a3ef7619a4e9f259d4e5599399140dd2487b5a4c0f85e3691ae12108

See more details on using hashes here.

File details

Details for the file trackintel-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: trackintel-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 56.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for trackintel-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8586b0cc002ff658032ab168ee1e81977ee8da166b57a8de2999bf8004bcb894
MD5 5a1e3c4b4f1bb0b6f0f4a83b87e20302
BLAKE2b-256 8b90a970b40db7778eba637ed08fec61bdd0680a823bb4dc95b19ce767eb1f60

See more details on using hashes here.

Supported by

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