πŸš€ Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more β†’
Socket
DemoInstallSign in
Socket

meowmotion

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

meowmotion

Mobile phone GPS data processor for trip generation and travel mode detection

0.1.2
PyPI
Maintainers
1

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
    

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.

Keywords

GPS

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts