ni1o1

transbigdata

TransBigData 交通时空大数据分析工具集。适用于轨迹数据栅格化、轨迹清洗处理、出租车OD提取、公交地铁网络分析、坐标转换、数据可视化等交通大数据分析任务。

ni1o1 4 2 Updated 4mo ago

Resources

5
GitHub

Install

npx skillscat add ni1o1/claude-skill-transbigdata

Install via the SkillsCat registry.

SKILL.md

TransBigData 交通时空大数据分析

TransBigData 是一个用于交通时空大数据处理、分析与可视化的 Python 库。本插件提供了完整的使用指南。

安装

pip install transbigdata

功能模块

根据你的任务选择对应的模块:

模块 适用场景 调用命令
栅格化 GPS点映射到栅格、生成方形/六边形栅格、Geohash编码 /transbigdata:transbigdata-grid
轨迹处理 轨迹清洗(漂移、冗余)、平滑、分段、停留识别、路网匹配 /transbigdata:transbigdata-traj
数据预处理 数据质量检查、采样间隔分析、边界过滤、ID重编号 /transbigdata:transbigdata-preprocess
出租车分析 出租车状态清洗、OD提取、载客/空驶轨迹分离 /transbigdata:transbigdata-taxi
可视化 热力图、轨迹动画、OD流向图、底图加载 /transbigdata:transbigdata-visualize
坐标转换 WGS84/GCJ02/BD09互转、距离计算 /transbigdata:transbigdata-coordinates
公交地铁 地铁网络建模、最短路径、换乘分析、公交到站识别 /transbigdata:transbigdata-metroline
数据获取 获取公交线路站点、行政区划、等时圈 /transbigdata:transbigdata-getdata

快速开始

典型工作流:出租车数据分析

import pandas as pd
import transbigdata as tbd

# 1. 加载数据
data = pd.read_csv('taxi_gps.csv')
data['Time'] = pd.to_datetime(data['Time'])

# 2. 数据预处理(参考 transbigdata-preprocess)
bounds = [113.75, 22.4, 114.62, 22.86]  # 深圳范围
data = tbd.clean_outofbounds(data, bounds=bounds, col=['Lng', 'Lat'])

# 3. 轨迹清洗(参考 transbigdata-traj)
data = tbd.traj_clean_redundant(data, col=['VehicleNum', 'Time', 'Lng', 'Lat'])
data = tbd.traj_clean_drift(data, col=['VehicleNum', 'Time', 'Lng', 'Lat'])

# 4. OD提取(参考 transbigdata-taxi)
od_data = tbd.taxigps_to_od(data, col=['VehicleNum', 'Time', 'Lng', 'Lat', 'OpenStatus'])

# 5. 栅格化分析(参考 transbigdata-grid)
params = tbd.area_to_params(bounds, accuracy=500)  # 500米栅格
od_data['LONCOL'], od_data['LATCOL'] = tbd.GPS_to_grid(od_data['slon'], od_data['slat'], params)

# 6. 可视化(参考 transbigdata-visualize)
import geopandas as gpd
grid_count = od_data.groupby(['LONCOL', 'LATCOL']).size().reset_index(name='count')
grid_count['geometry'] = tbd.grid_to_polygon([grid_count['LONCOL'], grid_count['LATCOL']], params)
gdf = gpd.GeoDataFrame(grid_count, geometry='geometry', crs='EPSG:4326')
gdf.plot(column='count', cmap='YlOrRd', legend=True)

常用默认配置

  • 栅格精度: 500米(城市级)或 1公里(区域级)
  • 栅格类型: 方形栅格(method='rect'
  • 停留判定: 1800秒(30分钟)
  • 漂移清洗: 速度上限 80-100 km/h

使用建议

  1. 新手入门: 从 transbigdata-grid(栅格化)开始,这是最核心的功能
  2. 数据清洗: 先用 transbigdata-preprocess 检查数据质量,再用 transbigdata-traj 清洗
  3. 出租车分析: 按顺序使用 预处理 → 轨迹清洗 → OD提取 → 栅格化 → 可视化
  4. 坐标问题: 如果数据来自高德/百度地图,先用 transbigdata-coordinates 转换坐标

参考文档