扒开北京学区房地图,他们发现了什么?

谷雨访谈发布:2017-08-04
0
评论:0

学区房是不是动辄几十万一平米?居住环境是不是一定特别差?学区房与孩子成才之间的逻辑是怎么建立的?腾讯新闻谷雨实验室近期推出《抢滩学区房:三个家庭的焦虑与选择》,试图用多角度叙事方式来回答关于学区房的诸多问题。


这样一个由腾讯新闻、数据工场、腾讯房产三方合作的数据驱动型作品是怎样完成的?我们邀请四位主创——张艾华(项目统筹/腾讯新闻)、罗京运(文字记者/腾讯新闻)、陈羽萱(交互设计和开发/数据工场)、吴嘉川(数据分析和可视化/数据工场)来探讨:扒开北京学区房地图之后,他们发现了什么?


作者 | 谷雨实验室
张艾华 罗京运 陈羽萱 吴嘉川
腾讯微博 QQ空间 QQ好友 新浪微博 微信

统筹者需明确轻重缓急

谷雨故事:“抢滩学区房”的选题立意是什么?

张艾华:为什么居住条件差价格贵的学区房,人们还抢着买?作品的开篇引语中有一句话:“买下带有优质学区资源的房子,就等于买下缩小阶级差距的先机”。这句话是在故事完成后编辑提出的,团队也一致认为追求学区房,其实正是出于一种“向上的焦虑”。

前几天有篇文章《北京,有2000万人假装在生活》引起自媒体的又一次狂欢,人们调侃中国的中产阶级平均每月要焦虑三次,《抢滩学区房》故事中的主人公大概就是属于此类。根据他们的焦虑程度,我们可以把文中三个故事看成学区房众生相的天堂、人间和地狱。

学区房现象不仅北京特有,甚至不是中国特有,很多国家都有这个概念。比如《纽约时报》今年也有一个关于学区房的数据新闻作品,在开篇段落就提及教育资源对人们置业选择的一些影响。

我们在这个选题中选择了两个切入角度,首先是故事维度,怎么找到被学区房裹挟的典型家庭?他们的心态是怎样的?被动还是主动?

关于这些问题的探究也引申出我们在每个故事开头给读者出的选择题——如果你们是故事中的人物,会怎样选择自己的人生?

其次是更理性的数据部分。除了探究学区房的市场情况、学区房和教育这两个概念的关联逻辑,我们还要跳出“学区房一定要跟教育绑定”的观点,观察学区房作为房产的投资属性。

城六区高中示范校数量比较。数据来源/北京教育考试院城六区高中示范校数量比较。数据来源/北京教育考试院

谷雨故事:选题确定后,团队如何组建?

张艾华:如何组建项目组要根据项目自身的特点来决定。最初,我们将这个项目定性为数据驱动的报导。首先要思考两个问题——数据来源以及数据由谁来处理。腾讯房产和腾讯新闻同属腾讯的网络媒体条线,彼此沟通成本低,合作意愿强。于是我们选择了他们。

数据处理部分的工作由数据工场负责。虽然腾讯不缺业内堪称优秀的设计师和开发人员,但我们还是希望这个项目的每个环节都能由最专业的人或团队来完成。数据工场由黄志敏老师带队,项目团队成员都是哥大LEDE项目的优秀毕业生,在数据可视化尤其是数据新闻领域可以说是首屈一指。

另外,故事采写和项目统筹、上线、发布、推广等工作则由腾讯新闻来完成的。

谷雨故事:这么庞大的一个团队要如何完成彼此间的协作?

张艾华:统筹者需要清楚传达需求,明确轻重缓急,需要的时候还可以将需求差异化为低级和高级两个不同的版本。

我会跟记者同事说:“希望你在采访中能兼顾到数据,数据将用于制作故事里的图表,这对整个报导的可视化非常重要。最好能够按照我给的excel表格结构去获取,如果不能一一对应,就把最相关的信息备注在里面即可。最好可以在采访结束就发给我,不需要等到交稿时一起。”这是我跟同事传达需求的一种习惯。

但是由一个人来控制一个项目是不现实的。项目把关要采取总分式的结构,每个环节都还要有一个专业领域的把关人。

文字记者在采写中带入数据思维

谷雨故事:采访前期做了哪些准备?

罗京运:我们采访的大背景是全国范围内,包括深圳、北京等城市的房产市场政策都做了一些大调整,人们对房产领域的关注度和议论程度都很高。

在这样的大环境下,我们选择了学区房这个小切口,反倒发掘了很多有意思的故事。我们最开始了解这个选题的时候,其实跟很多人一样,带着一种不解或者好奇的心态——为什么这些人会买?

前期我们做了很多案头和资料整理的工作,先是在网上加入一些学区房及教育论坛,和微信群或论坛里的家长聊。很快就发现大家所说的学区房为什么被称为学区房。正如艾华在介绍中提到的,在北京或是其他大城市,学区房代表的是一种优质的教育资源。

当然也不能单一地理解,这背后也有投资的因素。在学区房这个领域里,这一拨人买完,依然有下一拨人会来买。教育资源分配不公的事实没有改变,学区房的投资属性就会显得特别坚固。沿着这样的思路,就能理解人们去买学区房的本质是什么,以及家长们口中盛传的北京不同学区之间的差异到底在哪。

前期,基于数据团队做出的北京学区地图,我们开始有针对性地寻找合适的采访案例,最终找到了项目中呈现的那三个。通过这三个案例把人物买房子的心态或者围绕学区房买卖的一些个人经历展现出来。

三个主人公的个体差异也代表着学区房购买者的不同。有土豪能够一掷千金,有小中产家庭需要把所有资产全部拿出来置换,也有人因为买学区房而经历一段非常不好的经历。最后从结构以及整体的逻辑过渡上来看,这三个故事都是比较成功的。

“置换学区房”的一家四口。“置换学区房”的一家四口。

谷雨故事:项目最初定位为数据新闻,作为文字记者在采访过程中会带入数据思维吗?

罗京运:我是一个文字记者,对数据新闻不太了解,所以就需要和数据团队、熟悉设计的同事聊,去理解数据传播依据什么样的叙事逻辑。在慢慢熟悉的过程中有了稍微清晰一点的认知:数据应该怎样体现在一个报道里,这些信息如何反过来配合这个数据,最终为它所用。

值得一提的是,如果按照以往的采访方式,我只需要从某个角度采访,然后把故事呈现出来就可以了。但因为是数据新闻,最终要求在数据上有所体现,所以我们会有意地在采访过程中发现那些值得用数据化呈现的部分。

例如其中一个故事选择的地点是德胜学区,德胜学区属于北京最顶尖的学区,作品中专门有一部分数据可视化是围绕着这一案例去呈现的,包括它的优质学校分布以及升学率等。

另外一个例子是我们做房山学区房报道的时候,故事主人公提到他当时买房的选择根据是北京地铁六号线。六号线是东西横贯北京从海淀往西城过渡的一条地铁线,恰好也是北京学区房房价隐含的那条逻辑线。海淀西城这两个学区的差异就是北京学区房购买者口中盛传的那条所谓进阶链条——西城是高原,海淀是丘陵,其他的城区是平原或者洼地。

总价600万能买到多大的房子。数据来源/链家总价600万能买到多大的房子。数据来源/链家

按照以往的方式我可能会一笔带过这个线索。但这次因为觉得这背后有数据流,而且从数据上看也似乎是合适的,所以就把它做了一些特殊的处理,很详细地访问每一个站点是怎么看房子的,大概房价是多少,以及对应的学区是什么样的。

可视化也需要叙事

谷雨故事:在制作移动端故事分镜脚本时,你们有什么考虑?

陈羽萱:虽然数据工场在这次学区房项目里只负责设计和开发,但因为我和我的同事嘉川本身都有新闻背景,所以我们在项目最初阶段,也就是文字记者和摄影记者还没定稿之前就加入了讨论,很早就开始想要怎么排版,更好地呈现这个故事。

在所有的东西还没有定稿之前,我们只能先用手画一个脚本,所以看起来有些简陋,但却非常有助于沟通。我们也可以从中看出这个故事大体的面貌,也清楚我们所要做的素材是什么样的。

分镜脚本的好处是能够很好地帮你想清楚,在同一则故事里有多个媒介的时候要怎么安排。

比如押宝学区房这一则故事里包含了非常丰富的媒介,有图片、文字、图表、视频,还有一个交互式地图。那怎么让这么丰富的媒介排列出一个读者可以跟随的阅读节奏呢?我们用分镜脚本就可以清楚地展示每一个媒介的位置在哪里,要传递给读者的讯息是什么。

“押宝学区房”故事中的北京市西城区阳光丽景小区。“押宝学区房”故事中的北京市西城区阳光丽景小区。

更具体点说,押宝学区房讲的是主人公在买房的过程中,身家在七八年间从一百多万到六千万是怎样达成的,原本我们是打算把这部分内容放在故事的中间。但考虑到需要在故事的最开始吸引读者,所以我们就把这个我们认为最精彩的、最有互动效果的故事放在最前面。

另外我们也用分镜脚本来判断:有没有更特殊的排版能够突显故事本身魅力?像缠讼学区房的故事中,主人公用了五年打学区房官司,房子没办法入住,同时房价又在飙升。

“缠讼学区房”故事主人公宋毅。“缠讼学区房”故事主人公宋毅。

我们觉得这是整个故事里面最精彩的部分。但这部分内容不一定有那么强大的数据成分。我们一开始做了一个折线图表现五年内房价飙升,但考虑到这个故事中最重要的部分是买卖双方,所以我们采取了买家卖家左右各列一边的呈现方式,让大家直观看到五年内他们各自经历过什么,各自的说辞又是什么。

“缠讼学区房”五年中房价的涨幅。数据来源/根据房产交易网站同小区历史交易推算“缠讼学区房”五年中房价的涨幅。数据来源/根据房产交易网站同小区历史交易推算

谷雨故事:为什么项目中大部分的可视化和互动以滑动的方式代替其他互动方式?

陈羽萱:这样的设计很大一部分是因为我们认为可视化和文字一样,都需要有一个叙事存在,让读者可以跟着这个叙事了解故事情境。我们想通过滑动这样比较直接的方式触发下一个故事的环节。读者需要做的考虑越少,就越可以接受我们给他安排的故事顺序。

代码不是万能的

谷雨故事:你们是如何抓取某房产交易网站数据的?

吴嘉川:这张地图上的蓝点都是某房产交易网站上面的数据。我们抓取了每个小区四月份的挂牌均价、房屋的年龄、地址、坐标信息等等。

我们是用Python加上MongoDB的方式把抓取下来的数据存在MongoDB中。MongoDB可以帮你处理和导出你所需要的不同数据格式。抓取完这些数据后还要做一些简单的处理,比如清理一些重复的小区,去除一些空值等。

最初存储在MongoDb里的数据。最初存储在MongoDb里的数据。

值得一提的是,因为某房产交易网站上的数据特别多,所以当时抓取时每两万多就要换一个IP地址。因为我现在住在美国,所以我采取的方式是把所有的脚本都放在Amazon Web Services上运行,AWS每次重启都会自动换一下IP。这是一个应对反扒的必要技能。

谷雨故事:如何抓取小区边界?

吴嘉川:小区边界的抓取是项目可视化中最耗时的部分。我们用的是Python里面的splinter,抓取某地图网站里的小区id,获得小区的样子。

我们发现有部分小区的边界是没有被抓取到的。原因可能是某地图网站里并没有这些小区的边界信息,比如北京的很多胡同。所以记录下来之后,我在另一家地图网站上又抓了一遍,尽量保证小区边界是完整的。另外,除了用代码来抓取之外,还需要人工核对,这部分也花了不少时间。

有一个反扒技能可以跟大家分享。如果你非常频繁地抓取,这些网站就会设置一些干扰。比如某地图网站地图会把你的地图搞乱,我就把它放在AWS上不断重启,用美国新加坡的服务器不断换着用。某地图网站地图还需要输入一些验证码或者滑动图片等,这些都是人工完成的。所以代码不是万能的,很多时候还是要通过手工的方法。

splinter模拟人工操作。splinter模拟人工操作。

谷雨故事:能给我们介绍一下QGIS的用法吗?

吴嘉川:当所有的数据都准备好之后,我们用QGIS做了一个静态的学区房地图。但我们发现它们没有和北京行政区地图重合。这才发现很多地图网站地图有自己的火星坐标系。最后,我们用简单的Python把他们都转成通用的格式,才可以重合起来。

在这个项目中,我们大量地使用了QGIS。在主图中,我们用六边形做了这个学区的房价地图。这个部分也是QGIS的MMQGIS插件实现的。这也是我第一次使用,它可以用Python写好的library将一定区域内的数值算个平均值。

整个过程中,我们也一直用QGIS打草稿。京运前面也提到,我们做的是数据驱动的报道,我们先把这张学区房地图以一个不是很美的方式呈现出来,这样就可以在图上找到一些价格高地。再把从教育官网上整理下来的“牛小”的数据放在地图上,这样就可以粗略判断房价很高的地方是不是真的有“牛小”。

另外,我们也花了很多时间验证“牛小”。因为北京的小学有不一样的名字。比如,西城师范学校附属小学也叫西师附小,所以还需要一个人工核实的步骤。除了上网查官网之外就是打电话给门卫,根据地址来找学校的话会更准确一点。

读者提问

Q(陈嘉慧/财新):四部曲的包装方法是怎么想到的?有什么考量因素?

张艾华:最开始我们希望整个报道做成一个长网页的形式,但后来发现四个板块(三个故事,一个可视化)的调性其实不太相符,不太好放在一个作品里。

还有一个技术问题是每个故事板块调用的js库不一样,放在一起的话开发难度就非常大。然后也希望大家在手机上有个轻量的阅读体验,所以不希望做太长。

Q(刘佳昕/财新):在时间安排和分工方面,实际操作与最初计划有何不同?是否有过变动和调整?哪里用时用力最多,难度最大?

张艾华:我们的项目进度确实是在不断调整,故事挖掘上有个很大的困难就是团队成员很年轻,大家身边基本没有哪个人可以成为报道对象。所以挖掘故事花费的时间其实比真正写稿的时间还长。

陈羽萱:技术方面也遇到了一些困难。我们做了一个D3的互动可视化地图。在手机上交互时因为考虑到不同设备屏幕大小不一很难完美呈现,所以做了很多调整和修改。像图解学区房这一块,我们要让东、西、海这三个不规则的区域在手机上面有比较好的表现,就需要花比较多的时间来调整。

Q(王秀丽/西安外国语大学):设计团队中既有腾讯的人又有数据工场的人,你们怎么分工?怎么保证设计的整体感觉保持统一呢?

张艾华:数据工场更多是做UI、交互的设计,视觉设计为了要保持腾讯出品的一致性,会请腾讯新闻产品组的同学来进行一个优化和再次包装。

Q(张萍/重庆大学):项目统筹给文字记者采访时要求要采访到的数据是哪些?这些数据维度是怎么设置或者说构思的?

张艾华:数据维度是产品端、内容端基于故事本身逻辑所梳理出来的一些可视化空间。这些素材都是由两位记者同学在采访时帮我们搜罗出来的。

Q(张萍/重庆大学):文字记者提到要学区房的升学率数据,这个数据怎么来的?是把学校的升学率数据找到吗?学校的升学率可以具体到哪个学区?

吴嘉川:对于学区好坏的判断我们是跟着家长思路走的。买到好的学区房是希望自己孩子最后走进好的大学。从小学到初中、高中、大学,各层级好学校的定义是不同的,升学率、口碑、优质学校、区重点、市重点这些都是判断标准。

所以我们就从这些来着手找官方和媒体报道过的数据,大部分通过人工整理,尤其一本升学率,教育部并不会公开得很详细,但从媒体上还是可以得到一些数据。

另外,虽然我们得不到高中示范校的升学比例,但中招时示范校的招生比例是公开的,那么在模拟家长升学规划的时候,这就可以作为参考。

Q(马金鑫/数据新闻网):腾讯房产作为合作方提供了什么数据?感觉你们大部分的数据好像都是自己爬的?

张艾华:我们的数据有两部分来源。一部分是嘉川用爬虫爬取的,这一部分爬取到的是操作当月的数据。另外一部分我们需要一些历史数据,这些历史数据是通过跟腾讯房产合作得到的。

腾讯房产有些行业内部的资源,比如他们跟云房数据研究中心有合作关系,所以他们提供了很大一部分数据,但因篇幅所限数据也没有完全用尽。

东城、西城、海淀学区内二手房挂牌均价。东城、西城、海淀学区内二手房挂牌均价。

吴嘉川:这个就是关于腾讯房产的数据使用,我们做了三月滑动平均值处理,季节性因素会小一些。腾讯房产做了大量小区和学区匹配。我们过滤掉了一些影响手机端看的交互方式,直接用静态图,这样大家看起来不会卡,也比较清晰。

陈羽萱:腾讯房产的数据也是我们最早拿全的数据,在初期帮助我们拟定数据挖掘方向很有帮助。

Q(蒋林/重庆规划):学区范围能查到吗?就是精确到某条路那种。我看这次似乎没显示出来。

吴嘉川:是的,我们的确尝试去整理学区,但由于体量太大,没有成功细化到门牌号之类的。但我们有做一个小区与学区匹配,就是腾讯房产提供的有历史数据的数据集。

Q(蒋林/重庆规划):不是关于这个项目的,老百姓买学区房怎么确定要买的房在那个学区? 到教育部门现查吗?

吴嘉川:是的,如果要查哪个学校在什么学区,参考教育考试院官网是我们唯一的使用方式。

黄志敏:关于这个问题,其实我们也考虑过可以做个工具帮助大家查找。哪个房子对应哪个学区,其实数据里都有,只是因为时间空间的关系没有完全呈现出来。

讨论

你会买学区房吗?对于学区房,你有什么看法?

欢迎在评论中与我们分享。

谷雨是一个致力于支持中国非虚构(Non-fiction)作品创作与传播的非盈利项目,由腾讯网联合腾讯公益慈善基金会、陈一丹基金会共同发起。寻找优秀的创作者,也寻找优秀的作品。