Skip to main content

MeowMotion Logo
Detecting Trips, OD Matrices, and Transport Modes from GPS Data
A Python package for processing geolocation data at scale

📖 Documentation • 🛠 Installation • 🚀 Quick Start

Python 3.11 Documentation License: MIT Developed at UBDC DOI


🐾 What is MeowMotion?

MeowMotion is a Python package for processing raw GPS data to detect trips, classify transport modes, and generate Origin-Destination (OD) matrices using scalable and modular methods. Originally developed at the Urban Big Data Centre (UBDC), it supports advanced functionality such as:

  • Stay point and trip detection
  • Activity-based and demographic-based trip scaling
  • Generation of 4 OD matrix types (AM, PM, All-day, and Non-peak)
  • Machine learning-based travel mode classification

It’s an ideal tool for urban mobility researchers, transport planners, and geospatial data scientists working with mobile GPS traces or passive location data.


📖 Full Documentation

👉 Read the full docs here: https://urbanbigdatacentre.github.io/meowmotion/

The documentation includes:

  • Installation instructions
  • Data format requirements
  • End-to-end usage examples
  • Input file specifications
  • Details on OD matrix generation and model predictions

🛠 Installation

📌 Prerequisites

  • Python 3.11 is recommended for best compatibility.

  • Poetry (optional, for source installs):

    pip install poetry
    

🎉 Install via PyPI (Recommended)

The easiest way to get started is to install directly from PyPI:

poetry new project_name
cd project_name
poetry add meowmotion

🔧 For compatibility tips and alternative setups (e.g., using uv), see the Installation Guide.

🚀 Quick Start

Here’s a minimal pipeline example (see full Quick Start guide):

from meowmotion.meowmob import getStopNodes, processFlowGenration, getActivityStats, generateOD
from meowmotion.process_data import getFilteredData
import pandas as pd

raw_df = readData()  # Load your GPS data
filtered_df = getFilteredData(raw_df, impr_acc=10, cpu_cores=4)
stdf = getStopNodes(filtered_df, time_th=300, radius=150, cpu_cores=4)
trip_df = processFlowGenration(stdf, raw_df, cpu_cores=4)
activity_df = getActivityStats(df=raw_df, output_dir='outputs', cpu_cores=4)

# Load shapefile and support files, then generate OD matrices
generateOD(
    trip_df=trip_df,
    shape=shape,
    active_day_df=activity_df,
    hldf=hldf,
    adult_population=adult_population_df,
    org_loc_cols=["origin_geo"],
    dest_loc_cols=["dest_geo"],
    output_dir="outputs",
    cpu_cores=4,
)

📬 Feedback & Support

For questions, suggestions, or collaborations, feel free to reach out via Issues or contact:

📧 ubdc-dataservice@glasgow.ac.uk

📄 License This project is licensed under the MIT License.

Metadata

Release files for meowmotion 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for meowmotion 0.1.2
File Size Uploaded
meowmotion-0.1.2.tar.gz 35.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for meowmotion 0.1.2
File Interpreter ABI Platform
meowmotion-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 72.2 kB

Release files / meowmotion-0.1.2.tar.gz

Download URL meowmotion-0.1.2.tar.gz
Size 35.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d5b4d3dfc6423ef7d1bb40e5dabb8e1f2094746b9d60295dcbaed02f445db732
BLAKE2b-256 checksum
How to use checksums
24975366f35de56d7b09ac4d8ae514c1fab632f53cad7cd2f25415812fc4ed58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.1 CPython/3.11.2 Windows/10

Release files / meowmotion-0.1.2-py3-none-any.whl

Download URL meowmotion-0.1.2-py3-none-any.whl
Size 37.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
36034f3e226d7aa1660bfdbd6568852d8ebc842b20da747591d33c661d8ea18f
BLAKE2b-256 checksum
How to use checksums
6091b55cb6c4f7a89613c539d0c43eb6eee46aa514c21706dd9c0fab03b83b6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.1 CPython/3.11.2 Windows/10

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page