也许今年大家留意到了一些新闻。这些新闻或许对你来说远了点,还没有实际的对你的工作与学习产生影响。但我接下来要讲的或许能真正能触动到你。
作为学生、城市研究者,你是否有做研究、发表学术论文的需求?我想你写论文,导师会说:支撑不足、深度不够、没量化,你这里要加个表、那里要加个图等等。而这些需要什么呢?需要的是数据,以及对数据的分析。作为从事规划编制的规划师,为了实现创新性,你是否需要在你的成果中加入一定的新技术、新方法?我想你在规划设计的时候,领导会说:要有创新,观点支撑不足,技术分析不够,技术亮点缺乏。
所以,无论你在学生阶段做毕业论文,还是工作阶段进行规划编制,由于城市的复杂性,你都需要进行城市研究,也往往会遇到这样的问题。做研究,无数据;有数据,难分析;能分析,很低效;资历浅,难学术。你需要一个高效的工具,这个工具要很强大,要能应对城市研究、规划编制全面过程的需求。
那怎么办呢?
这个时候,我给大家推荐Python。不是说Python能解决所有问题,但Python至少能解决你绝大多数问题。最开始,我学习Python的时候,也和大家一样有一个顾虑。这个顾虑就是,我是不是跑偏了?就如同前段时间知乎话题里所讲到的,“埋头钻进一些特别专、极其狭窄的技能培训中去,成为一名熟练的高级蓝领工人”?随着后来对Python认识的加深,以及用Python做了很多对实际工作有帮助、能极大提高工作效率的事后,我的顾虑完全打消了。这些事都更加坚定了我在Python的道路上继续走下去的决心,也促使我想让让更多的小伙伴来学习Python。
那么,为什么是Python呢?我想从3个方面展开讲。
首先是城市空间研究全过程需要Python。我来看一下城市空间研究的过程。首先我们要获得数据,早些年,数据不开放,数据源也不多,做研究、做规划所使用的数据往往拿的是一个城市的统计年鉴,用excel简单图形化就OK了。但现在,我们不能忽视多源数据的存在。看看你的领导、你到导师、甚至是你的甲方,在平时中对多源数据的态度,就能知道获得数据的能力是你非常重要的竞争力之一。获取数据之后,我们还要对这个数据进行清洗。为什么在分析之前要清洗呢?这是因为,获得的数据往往很粗糙,不能直接使用,这跟淘金很相似,最后沉淀下来的才是真金。比如,体验课中的出租车数据,OD点数据才是有用数据,才有价值。近2000万条出租车数据,也只有几十万条数据有用。如何筛选出有用数据非常关键?数据清洗完后,还要高效进行可视化。这四个阶段,是我们研究全过程需要面对的。而Python它可以做到四个阶段的全过程支持,也就是说“Python可以一语走天下”。体验课,以及正式课程中的几个专题,我们“从无到有,从有到择,从择到视,从视到示”。我们可以发下一个事实,就是Python能非常高效的辅助我们的全过程研究。一篇论文从构思到成稿,往往需要很长的时间。所以我一直在谈的,时间是非常宝贵的,城市研究的核心在于研究,技术与分析是辅助于我们研究的。所以我们要集中火力、将宝贵的时间用在理清思路、理顺逻辑、文献综述等工作内容上。
为什么要学习Python的第二点是,ArcGIS需要Python来开发分析工具。目前对ArcGIS的运用变得越来越频繁,ArcGIS也越来越重要。如果使用过ArcGIS的小伙伴应该发现了ArcGIS的工具集中不同的图标方法。小铁锤工具一般是用C++编写的,是工具集中最基础的工具,而像笔记本的这些工具,都是用Python编写的工具。所以,当我们进行研究创新的时候,我们的分析及研究往往可以转化为一个或N个模型,也就是一个工具或N个工具,比如空间自相关的莫兰指数等等。这些创新性的模型,就是一篇非常好的学术论文。
最后,我想谈,Python足够简单与高效。学东西就是这样的,简单而强大,才具有竞争力,才能触动我们去学习。不可否认在数据分析里有R,有matlab,但从简单性讲,个人认为都不如Python。比如编写爬取天气后报网站的pm2.5数据,代码就非常简答,阅读性非常高。最最关键的是代码仅仅20多行,全国所有城市1000多个监测站点的所有空气质量数据就被下载下来了。还是那句老话,城市研究的核心在于研究,技术知识辅助,在技术方法实践上花的时间不要多,而Python可以做到这一点。
目前,网上关于Python的课程非常非常多,但大部分都是计算机专业背景的老师讲的。《城市空间研究专题(Python)》这门课程的特点有什么呢?
首先,实战。也就是以能最终发表产生研究学术论文为出发点与落脚点。也有小伙伴会说,我只做规划设计,不写论文。其实不矛盾,你的规划设计最终也需要一定的研究支撑。
其次,是专业。这里指的是专业背景,我本人从事城市规划行业超过10年,我们的课程顾问,很多人也是城市规划的专业背景,真正术业有专攻。目前,网上的Python课程非常非常多,很多老师讲的都非常好。但听下来,总觉得难以理解、无法运用。我觉得是由于老师是计算机行业的,无法从规划的视角来看待Python,无法理解城市规划的逻辑。并且,他们的课程也不会涉及城市研究相关内容。
再次,是系统。也就是按照城市研究的逻辑来讲,从数据采集讲起,涉及城市研究的全过程,最终撰写学术论文。体验课程、正式课程所列出来的专题,最终都有相对应的学术论文,几篇还来自于《城市规划》这个权威期刊。我想,目前国内还没有一个课程按照这个逻辑来讲。这深度贴合了我们学这门课的最终目的。
最后,是简明。课程讲解力求能让每一个小白听懂。只要你知道一点点Python的基础就可以学习。每一段代码,我都尽量介绍为什么这么写,这段代码的含义是什么?并且,大部分代码都在Jupyter Notebook中编写,写好markdown,逻辑清晰,使学习者易读易懂。
本次课程一共6章。第二章及以后为正式的专题课程。第二章的题目是《近10年我国城乡规划重要学术论文的总体特征》。这个专题,我们从知网、万方两个数据库,下载了2006-2015年,《城市规划》、《城市规划学刊》的2500多篇论文,重点从作者与机构两个方面展开分析。分析完成后,写了一篇论文,发表在了2017年的中国城市规划年后论文集中。这个专题会要学会初步使用scrapy,重点学习pandas与networkx。
第三章为专题二,论文的题目是《基于高铁余票的客流行为特征及其效应分析》。选自2015年7月发表于《城市规划》的论文。这个专题,将使用requests库爬取12306网站余票数据。并且介绍如何让代码24小时运行,下载实时余票数据。
第四章为专题三,论文的题目是《基于上市公司数据的中国城市网络空间结构》。选自2017年6月发表于《城市规划》的论文。这个专题,我们去下载了3000多家上市公司,以及这3000多家上市公司的约5万多条子公司数据,按照论文作者的数量进行了全过程的实践。第五六章后期将结合学员的体验进行相应优化后更新。
“工欲善其事,必先利其器”,高效定量城市空间研究,你准备好了吗?如果准备好了,就跟随我一起来学习python吧。