交通数据处理-计算途径某些路段的车辆数

news2024/9/20 1:08:10

根据车辆的运行轨迹,计算先经过某些路段,再经过某些路段的车辆数。

欢迎关注本人公众号--交通数据探索师

如下表,

其中:vehicle: 车辆编号;route: 车辆轨迹。

以第一行为例,车辆car1按顺序经过了路段123、路段456、路段789。

现统计先通过路段123再通过路段789的车辆数。

大家可以可以先思考一下怎么使用Python和SQL进行实现。

 

Python

实现思路:以car1的轨迹为例,现将route拆分成列表['123', '456', '789'],判断该列表中是否包含路段123和路段789,如果包含则再进一步判断路段123在列表中的位置是不是在路段789的前面,如果也是,则该车辆满足要求。​

import pandas as pd
import numpy as np 

data = pd.DataFrame(
    {
        'vehicle': ['car1', 'car2', 'car3', 'car4', 'car5'],
        'route': ['123+456+789', '1123+789+357', '123+456+7899', '123+456+789+548', '789+123']
    }
)

# 统计途径路段:123和789的车辆数
data = (
    data.
    eval("route=route.str.split('+')").  # 将route拆分成列表
    # 如果车辆的route包含123和789则flag列赋值为1 否则为0
    assign(flag=lambda df: df['route'].apply(lambda x: 1 if set(['123', '789']).issubset(set(x)) else 0)).
    query("flag==1").  # 将flag列为1的数据筛选出来
    # 比较123和456在列表中的位置
    assign(order_check=lambda df: df['route'].apply(lambda x: x.index('123') < x.index('789'))).
    query("order_check==True")
)
data

至此筛选出来了满足条件的车辆,可进一步处理出车辆数。​

clickhouse

select vehicle, 
            splitByChar('+', route) as route_list,  # 将route拆分成数组
            hasAll(route_list, ['123', '789']) as flag  # 判断['123', '789']是否都包含在route_list中
            indexOf(route_list, '123') as one,  # 计算123在route_list中的位置
            indexOf(route_list, '789') as two   # 计算789在route_list中的位置
from table_name
where flag = 1
and one < two

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1957550.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从0开始搭建vue + flask 旅游景点数据分析系统(三):开发header部分

这一期开始开发header部分&#xff0c;预期实现两个目标&#xff1a; 右侧显示用户名、退出按钮和头像左侧显示系统的访问的路径 1 修改Layout.vue 先修改el-header部分, <el-header class"header"> <!-- <div class"logo">My Ad…

【leetcode 详解】生成特殊数字的最少操作【中等】(C++思路精析)

题目见下&#xff1a; 测试数据: 解题思路笔记&#xff1a; 最初拿到这道题是很蒙的&#xff0c;联想不到什么数据结构的模型&#xff08;肯定是笔者积累太少了&#xff09;&#xff0c;甚至惯性地想怎么实现“删除数字”的操作&#xff1a;在原字符串中抽出一个字符然后将剩…

趋动科技与天数智芯携手构筑全场景高效算力底座

近日&#xff0c;趋动科技与天数智芯正式推出联合解决方案&#xff0c;该方案基于趋动科技OrionX AI算力资源池化软件以及天数智芯通用GPU产品构建AI算力资源池&#xff0c;实现异构算力资源的统一纳管。 经测试&#xff0c;OrionX AI算力资源池化软件与天数智芯通用GPU产品相…

数据结构·红黑树

1. 红黑树的概念 红黑树&#xff0c;是一种搜索二叉树&#xff0c;但在每个节点上增加一个存储位表示节点的颜色&#xff0c;可以是Red或Black。通过对任意一条从根到叶子的路径上各个节点着色方式的限制&#xff0c;红黑树确保没有一条路径会比其他路径长出两倍&#xff0c;因…

【C++11】C++11新纪元:深入探索右值引用与移动语义

&#x1f4dd;个人主页&#x1f339;&#xff1a;Eternity._ ⏩收录专栏⏪&#xff1a;C “ 登神长阶 ” &#x1f921;往期回顾&#x1f921;&#xff1a;位图与布隆过滤器 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; ❀C11 &#x1f4d2;1. C11简介…

sentinel的使用以及springcloud整合sentinel

一、为什么要用到sentinel 首先我们要知道的是一个微服务项目如果一个服务挂载掉了&#xff0c;会出现什么情况&#xff0c;是不是回出现一个服务挂载而另一个服务还需要一直调用此服务就很容易导致和它有关联的服务不能被访问到&#xff0c;这也就是我们常常在生活中说到的雪崩…

关于 NASA 航空公司 cmapss 数据集剩余寿命(Rul)预测数据预处理的疑问。

&#x1f3c6;本文收录于《CSDN问答解惑-专业版》专栏&#xff0c;主要记录项目实战过程中的Bug之前因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&收…

微服务--熟练掌握网关(包括权限认证)

目录 一、网关的路由 二、网关登录的校验 2.1.鉴权思路分析 2.2.网关过滤器 2.3 自定义过滤器 2.3.1 自定义GatewayFilter 2.3.2 自定义GlobalFilter 2.4 登陆校验 具体的实现步骤&#xff1a; 一、在微服务中&#xff0c;我们在微服务的网关模块&#xff0c;就要进行…

K210视觉识别模块学习笔记8:Mx_yolo3本地模型训练环境搭建_部署模型到亚博canmv(失败)

今日开始学习K210视觉识别模块: 本地模型训练环境搭建 亚博智能 K210视觉识别模块...... 固件库: canmv_yahboom_v2.1.1.bin 本地训练 Mx_yolo3 这里就简单地提示一下下载安装哪些软件&#xff0c;然后主要是使用Mx_yolo3 进行本地训练模型的...... 本文不…

子网划分+汇总

子网划分的意义&#xff1a;为了使得ip地址充分得到使用&#xff0c;减少浪费 我们知道IP地址分为ABCDE五类&#xff08;这里不讨论DE类&#xff09; IP地址总共有32个字节&#xff0c;分成四个八个字节的二进制数 例如128.64.1.1 10000000.01000000.00000001.00000001 0…

1、AI测试辅助-提示词优化

AI测试辅助-提示词优化 一、基本规则二、提示词优化技巧&#xff1a;2.1 Prompt 逆向工程2.2 提示词框架2.2.1 CO-STAR 框架 2.3 提示词生成器 三、总结 一、基本规则 写提示词有个通用的基本规则&#xff0c;遵循这个规则基本上能解决大部分的问答&#xff1a; 角色任务要求 …

视频逐帧播放查看神器-android闪黑闪白等分析辅助工具

背景 刚好有学员朋友在群里问道有没有什么播放软件可以实现对视频的逐帧即一帧一帧播放。在做android系统开发时候经常会偶尔遇到有时候是闪黑&#xff0c;闪白等一瞬间现象的问题。这类问题要分析的话就不得不需要对设备录屏&#xff0c;然后对录屏进行逐帧播放查看现象&…

Python层内层外多图布局图基分析

&#x1f3af;要点 &#x1f3af;多层图和多路复用图结构模型 | &#x1f3af;图结构变换、读写图、聚类系数、可视化、同构、图基分析 | &#x1f3af;稀疏网络边数和节点数线性扩展 | &#x1f3af;耦合边的生成和惰性评估 | &#x1f3af;层内布局计算、多层网络绘图、层间…

初识C++: string类【标准库里的string】【string类的模拟实现】

关于string类&#xff0c;可以先看一下这个文档string文档。 一.标准库里的string 1.1auto关键字 &#xff08;1&#xff09; 在早期C/C中auto的含义是&#xff1a;使用auto修饰的变量&#xff0c;是具有自动存储器的局部变量&#xff0c;后来这个 不重要了。C11中&#xff…

Linux基础三

拼搏何惧路途难&#xff0c; 汗水淋漓志未残。 砥砺前行心不改&#xff0c; 终能登顶笑开颜。 目录 一&#xff0c;vi编辑器 1&#xff0c;命令模式 2&#xff0c;末行模式 3&#xff0c;编辑模式 二&#xff0c;Linux进程启动的几种方式 2.1前台启动进程 2.2后台启动进程 三&a…

Git 创建分支进行写作开发

第一次链接仓库提交 and 有SSH公匙 第一步&#xff1a; git clone 远程仓库链接clone 远程已有仓库到本地 第二部&#xff1a; cd 文件夹 第三步&#xff1a; git checkout -b <your_branch_name> 创建分支 第四步&#xff1a; git add . 将目前目录下的所有文件…

加密micropython写的程序为.mpy的方法

2024年7月26日 用虚拟机安装一个Linux&#xff0c;本例为CentOS7的Linux系统。 1.保证Linux能够连接网络。 2.进入root用户&#xff0c;使用下面的命令行安装gcc编译器&#xff1a; yum install gcc 3.安装完成后&#xff0c;查看gcc是否安装成功&#xff0c;用下面的命令…

Java从入门到精通(十三)~ 枚举和注解

晚上好&#xff0c;愿这深深的夜色给你带来安宁&#xff0c;让温馨的夜晚抚平你一天的疲惫&#xff0c;美好的梦想在这个寂静的夜晚悄悄成长。 文章目录 目录 前言 一、枚举 1.1 枚举的概念 ​编辑 1.2 枚举的特点 1.3 枚举的实际运用 1. 状态机&#xff0c;描述属性的…

App Inventor 2 低功耗蓝牙 BlueToothLE 拓展中文文档(完整翻译加强版)

低功耗蓝牙&#xff0c;也称为蓝牙LE 或简称 BLE&#xff0c;是一种类似于经典蓝牙的新通信协议&#xff0c;不同之处在于它旨在消耗更少的功耗和成本&#xff0c;同时保持同等的功能。 因此&#xff0c;低功耗蓝牙是与耗电资源有限的物联网设备进行通信的首选。BluetoothLE 扩…

【C++】C++11中R字符串的作用

在 C11 中添加了定义原始字符串的字面量 1.定义和基本使用 定义方式为&#xff1a; R"xxx(原始字符串)xxx"其中 () 两边的字符串可以省略&#xff0c;R只会处理括号中的字符串。 原始字面量 R 可以直接表示字符串的实际含义&#xff0c;而不需要额外对字符串做转义…