司机通常关心的核心指标包括:
1. 小时收入率(Earnings per Hour):在单位时间内能够得到的收益。
2. 客单价(Average Fare per Trip):平均每单的收入情况,包括基础车费、附加费、拥堵费、以及小费等综合因素。
3. 小费比例(Tip Percentage):关注何时何地或什么特征下更容易获得更高小费率。
4. 空驶率与接单效率(Utilization Rate):关注接单时段、地区和服务类型,使司机在工作时间内能完成更多有效订单,从而提升总体收入。
基于以上指标,我们可以尝试用Spark对数据做聚合与建模分析,以期帮助司机决策,包括:
• 哪些时间(按小时、周几)和地点(PULocationID,DOLocationID)有较高的平均收益率
• 哪些订单类型或支付方式下更有利可图(例如高出车费的地区、带有机场费的行程)
• 不同车辆类型(是否WAV车辆)、共享/不共享模式对收入的影响
y
1. 数据缺少唯一车辆标识:
你现在的数据集只有 platform(平台,比如 Yellow, Uber, Lyft),并没有用于区分单辆车的唯一车辆标识(例如车辆ID或牌照信息)。在没有单车唯一标识的情况下,我们无法知道哪一条记录属于同一辆车,也就不能拼接一辆车在一天中连续多单之间的空置时段。
2. 现有数据是订单级别而非车辆级别:
数据行代表每一次行程。当你只有平台和时间信息时,你只能聚合分析平台在每个小时的总订单量、收入等指标。但无法从中分辨出某个具体小时内,某一辆车是否在该小时的某段时间空置。
3. 需要车辆ID与更细粒度的数据:
如果想知道一辆车未运行的时间段,需要具备:
• 唯一的车辆标识(vehicle_id)
• 该车辆所有订单的开始和结束时间
有了这些数据,才能对同一辆车的连续订单之间的时间间隙进行计算,进而确定空置时段(即车在两单之间的等待时间)。
那我们怎么办?
没有车辆ID时的替代方法
在没有车辆ID的情况下,你无法直接获得单车层面的空置时段。不过可以做一些平台层面的近似分析,如计算“空载率”或“利用率”:
• 空载率(平台层面):假设每有订单的小时都是满60分钟的“潜在运行时间”,则:
空载率 = 1 - (总行驶时间总和 / (订单小时数 * 3600))
尝试得到近似结果
收入上,我们看到uber/lyft司机获得了比较高的时间利用率,但收入却没有比yellow taxi高…这是怎么回事呢?我们都懂…
- 如果每天工作8小时,找到能够最大化收益的时间段
- 连续8小时
- 间断8小时
- 分析数据中的地理位置信息,找到最大化收益的路径