12 亿条出行记录背后的纽约故事 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
chousb
V2EX    分享发现

12 亿条出行记录背后的纽约故事

  •  
  •   chousb 2016-06-30 18:27:54 +08:00 2447 次点击
    这是一个创建于 3439 天前的主题,其中的信息可能已经有所发展或是发生改变。

    纽约出租车和轿车委员会(简称 TLC )在其网站上公开了纽约整个城市从 2009 年 1 月到 2015 年 12 月共 12 亿条出租车出行记录(压缩前数据量大约 200GB )。

    这些数据详细记录了每一趟出租车上下客的时间和地理位置(精确到经纬度)、出行距离、出行费用、支付方式以及司机上报的乘客数量。出租车作为城市发展、社会变迁的见证者,其活动轨迹提供了很好的一扇窗,让我们能够一窥背后的纽约故事。

    关于纽约出租车

    在阐述分析结果前,我们首先简单科普一下纽约出租车的行业背景。

    很长一段时间里,作为城市的标志之一,黄色出租车( Yellow Taxi )是纽约唯一可以合法运营的出租车。从 2013 年夏天开始,为了更好地服务那些不被黄色出租车待见的区域, TLC 给数千辆绿色出租车( Green Taxi )颁发了营业许可。从此,纽约人民出行又多了一个选择。这也是为什么 TLC 发布的数据中,只包含了从 2013 年 8 月开始的绿色出租车数据。

    然而,与黄色出租车能在纽约五大行政区自由载客不同,绿色出租车的上客区域是有一定限制的。下图是 TLC 公布的绿色出租车的合法营业区域。

    绿色出租车可以在绿色区域自由载客,在灰色区域(肯尼迪国际机场和拉瓜迪亚机场)只能预约载客,在黄色区域是不能上客的。正因为这种营业区域的限制,造成了下面我们看到的很多有意思现象。

    上下客地点分布地图

    首先,我们看看总体的上下客地点分布地图。

    为了展现的效果,这两幅地图没有包含 Staten Island (斯塔滕岛)的数据(主要是斯塔滕岛的地理位置跟纽约其它四个行政区偏离得有点远,如果加进来的话,显示效果不是太理想)。

    以上两幅图分别展现了从 2009 年到 2015 年 7 年间出租车上客地点和下客地点的分布地图。

    • 黄点代表黄色出租车,绿点代表绿色出租车。
    • 亮度越高代表频率越高,分布越密集。

    无论从上客点还是下客点的分布地图看,曼哈顿区都是最密集的区域(中间那灰色的长方块对应的是纽约中央公园)。除曼哈顿外,另外两个高度密集的区域都是机场:肯尼迪国际机场和拉瓜迪亚机场。

    黄点和绿点的分布情况也大大致符合黄色出租车和绿色出租车自由载客区域的分布,特别是上客点的分布。最后,通过比较上下客点分布情况,我们发现,虽然两者还是主要集中在曼哈顿岛,但是下客点分布明显向外延伸了不少。

    出行活动的变化

    看完空间维度的分布地图,我们再从时间维度看看,从 2009 年到 2015 年,特别是 2013 年夏天引入绿色出租车后,出行活动数量的变化。

    首先是纽约人口最多的行政区--布鲁克林。

    在引入绿色出租车之前,黄色出租车的上客量从 20 万/月增长到 2013 年的 40 万/月,而这一时期正对应纽约人口逐步从曼哈顿迁移到布鲁克林。 2013 年夏天引入绿色出租车后,黄色出租车的上客量急剧下滑,并在半年的时间内被绿色出租车超越。虽然总的出租车上客量继续保持增长,但到 2015 年的时候黄色出租车的上客量已经降回 2009 年的水平。

    其次是曼哈顿的情况。虽然从 2014 年后,黄色出租车的上客量开始有所下降,总的上客量还是比较平稳。尽管绿色出租车被允许在上城区上客,但整个大区依旧是传统黄色出租车的天下,绿色出租车只占到微不足道的很小份额。

    与布鲁克林区绿色出租车强势崛起锋芒盖过黄色出租车和曼哈顿区黄色出租车王者地位不可撼动不同,皇后区绿色出租车市场份额虽然在短短一年内上升到 40 %,但之后就稳定下来,一直都没能超过黄色出租车,而且后者的上客量一直都比较稳定。

    结合前面的绿色出租车自由载客区域和上客点地理分布图,一个合理的解释是:除曼哈顿外,纽约另外两个上客点比较密集的地方是肯尼迪国际机场和拉瓜迪亚机场,这两个机场恰好都在皇后区。由于黄色出租车可以在机场自由载客,而绿色出租车只能在机场预约载客,导致机场巨大的上客量基本都流向了黄色出租车。

    威廉斯堡的北部

    分析完行政区后,我们再关注具体的街区。我们先看纽约城从 2009 年到 2015 年出租车活动增长最快的街区。

    与皇后区快速增长的街区比较分散不同,布鲁克林区增长最快的几个街区都集中在威廉斯堡的北部。现在让我们把目光聚焦在威廉斯堡北部,看看这些年那里都发生什么了。

    上图是威廉斯堡北部上客点的动态变化图。总的趋势看, 2009 年到 2014 年出行活动快速增长,之后就开始稳定下来。具体到地理位置,增长快速的上客点主要集中在威思大街( Wythe Ave )、贝里街( Berry St )、北 7 街( North 7th St ),北 11 街( North 11th St )和北 12 街( North 12th St )附近。

    其中,在威思大街、北 11 街和北 12 街附近有 Output 、 Verboten 夜店(通过 Google 地图我们能够很容易了解这些场所的类型)和威思酒店( Wythe Hotel );在贝里街和北 11 街附近有 The Whiskey Brooklyn (酒吧);在威思大街和北 7 街附近有 Shelter (餐馆)、 Rosarito Fish Shack (餐馆)和 D.O.C Wine Bar (餐馆)。这些消费场所基本上都是在过去 7 年间开业的(还是万能的 Google ),并带动了当地消费活动和出行活动。

    不过随着出行活动数据 2014 年后开始稳定,不清楚这是不是意味着该地区的商业发展到了饱和的阶段。

    天气对出行活动的影响

    结合美国国家气象中心提供的纽约中央公园的观测数据,我们可以分析下雨天和下雪天对出行活动影响。

    总的来说,下雨天对纽约人民出行没有明显的影响;而下雪天有负面影响,雪越大,人们越不愿意出行。

    支付方式的变化

    最后我们看看出行支付方式的变化。 TLC 提供的数据里包含两类有效的支付方式:现金和信用卡。

    我们可以看到,信用卡支付的比例从 2009 年的 20% 多点上升到了 2015 年的 60%,反映出信用卡在日常消费日益普遍。再根据支付金额细分,虽然总的趋势还是信用卡支付越来越常见,但是金额较小的时候(小于 10 美金),人们还是倾向于现金支付。

    总结

    由于时间和篇幅关系,在这篇文章中,我们只是利用 12 亿条出行记录做了一些简单的分析,权当抛砖引玉。

    感兴趣的读者可以利用这些数据做更多其他有意思的分析,如纽约的夜店集中在哪些地方,从曼哈顿中心城区到机场需要多长时间,华尔街的银行家上下班时间, 9.11 事件 10 周年纪念仪式的交通情况,以及《虎胆龙威 3 》中布鲁斯.威利斯和塞缪尔.杰克逊能否在 30 分钟内从曼哈顿上西城赶到华尔街地铁站,等等。

    在去年 11 月份的一篇博客文章中, Todd Schneider 利用他的苹果笔记本基于 PostgreSQL + PostGIS + R + Google Map API 的技术栈对这些数据进行一系列的分析,并将其分析的代码( SQL , Shell 和 R 脚本)放到 GitHub 上面。

    在其 GitHub 代码 README.md 文件中的一个问题引起了我们的兴趣:为什么不用 BigQuery 和 Redshift ? BigQuery 和 Redshift 分别是 Google 云平台和 Amazon Web Service 上面的数据仓库服务。

    我们在这篇文章中进行的数据分析也是基于 Todd 提供的脚本,并加入了 2015 年下半年的数据( Todd 写文章的时候 TLC 还没有公开那部分数据)。

    不过和 Todd 使用 PostgreSQL 不同,虽然我们也没有使用 BigQuery 和 Redshift ,但是用了另外一个功能类似的云端数据仓库 -- HashData 。

    所以这篇文章中数据分析使用的技术栈是: HashData + PostGIS + R + Google Map API

    借助 HashData 强大的并行执行引擎,我们将 Todd 用他的苹果笔记本 3 天才完成的数据分析任务缩短至不到两个小时,付出代价是不到 20 元人民币的云服务费用。

    为了方便感兴趣的读者进行更深入的分析,我们将加工后的 12 亿条出行记录数据放到了青云对象存储 QingStor (点击查看更多 QingStor 内容)中。 HashData 数据仓库提供了直接从 QingStor 中加载数据的功能。一旦数据加载到数据仓库中,读者就可以利用上述的技术栈对数据进行分析。

    尾言

    本文转载自 HashData 的博客 地址: http://www.hashdata.cn/blog/

    利用最新的数据分析工具和公开数据进行一场分析是不是非常有趣呢?

    文中使用的数据仓库 HashData 已加入青云应用中心,你可以在应用中心直接使用。文中用到的数据加载和分析脚本都已经放到 Github 。 地址: https://github.com/HashDataInc/Open-Data

    下面,轮到你发挥想象力了~

    5 条回复    2016-07-02 03:19:54 +08:00
    zzcworld
        1
    zzcworld  
       2016-06-30 20:05:30 +08:00 via iPhone
    有点像 I quant NY 的风格,有机会可以做做纽约地铁的数据分析
    msg7086
        2
    msg7086  
       2016-06-30 21:50:04 +08:00
    不错的干♂货
    sinxccc
        3
    sinxccc  
       2016-06-30 22:30:21 +08:00   1
    这种数据真的不会泄露隐私么?
    chousb
        4
    chousb  
    OP
       2016-07-01 18:04:12 +08:00
    @sinxccc 收集的信息里面没有乘客的个人信息
    sinxccc
        5
    sinxccc  
       2016-07-02 03:19:54 +08:00
    @chousb 嗯,我指的是通过乘车数据甄别出一个特定的群体甚至个体的可能…仅仅是个想法
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     887 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 22:49 PVG 06:49 LAX 14:49 JFK 17:49
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86