借助Python来实现的定量城市研究
一、数据处理基础
(一)数据分析的概念
城市数据分析,可以从数据分析的广义和狭义两个角度来看:
狭义的数据分析是指根据分析目的,采用对比分析、分组分析、交叉分析和回归分析等分析方法,对相关城市数据(包括统计数据和爬取的网络开放数据)进行处理与分析,提取有价值的信息,发挥数据的作用,得到一个特征统计量结果过程。可以用来进行城市的空间特征的计量分析、网络分析等。
更进一步,深层次的数据分析可以参照数据挖掘来认识,即是从大量的、不完全的、有噪声的、模糊的、随机的城市数据中,通过应用聚类、分类、回归和关联规则等技术,挖掘潜在价值的过程。可以用来实现智慧城市的更深层次应用,包括识别、预测等。
(二)数据分析的流程
- 需求分析:城市数据分析中的需求分析也是分析环节的第一步和最重要的步骤之一,决定了后续分析的方向、方法。
- 数据获取:数据是城市数据分析工作的基础,是指根据需求分析的结果提取,收集数据。
- 数据预处理:数据预处理是指对城市相关数据进行合并,数据清洗,数据变换和数据标准化,数据变换后使得整体数据变为干净整齐,可以直接用于分析建模这一过程的总称。
- 分析与建模:分析与建模是指通过对比分析、分组分析、交叉分析、回归分析等分析方法和聚类、分类、关联规则、智能推荐等模型与算法发现数据中的有价值信息,并得出结论的过程。
- 模型评价与优化:模型评价是指对已经建立的一个或多个模型,根据其模型的类别,使用不用的指标评价其性能优劣的过程。
- 部署:部署是指将通过正式应用数据分析结果与结论应用至实际生产系统的过程,
(三)数据分析的典型应用
根据很多学术研究和实践应用可以看出数据分析可以实现了用户行为研究、社交媒体分析、交通物流分析等,如果这些数据多了一个poi的位置属性,就能够作为城市研究和区域研究的基础:
- Linna等通过Twitter和Flickr数字足迹数据对不同职业用户的社交媒体关系进行了研究,揭示了不同职业对社交媒体的偏爱程度。
- 陈宏飞等通过新浪微博平台提供的API接口,抓取了西安市居民百万条微博数据,并利用热点分析工具对居民夜间活动进行分析,研究表明西安市居民夜间活动分布呈现出个别区域有较为明显的时空聚集效应。
- 冉斌以天津和上海两地为例,利用长时间手机信令数据,获取了大量个体的出行特征和城市整体的交通格局,进而分析出重点区域客流集散特征、关键断面交通流量、轨道交通客流特征等重要指标,为城市交通体系规划提供支撑。
- 王开泳等提出一种新的基于微博数据判别城市之间空间联系强度的方法,并以河南省部分具有地理标记的微博数据作为数据源,通过微博使用推发地与注册地的差异,来描述人口的城际流动情况,从而表征两两城市之间的城际联系强度。
- 赵映慧等利用东北三省34个城市两两之间的百度指数,采用Net Draw、优势流分析法以及C-Value、D-Value层级分析法,对东北三省城市网络联系格局进行了分析,同时又基于腾讯QQ群视角,查找联系两个城市的QQ群,利用社会网络分析法研究东北地区城市网络联系特征和层级结构,发现沈阳为大区中心城市,是东北地区的中心,七台河等4个城市为地方边缘城市,其他城市层级介于之间,分属另外5个层级。
- 董超等以各地间固定电话通话时长为原始数据,采用主成分分析法、C-Value和D-Value层级分析法、优势流分析法、最小生成树法对吉林省流空间格局进行了分析。
- 许泽宁和高晓路基于POI与城市空间结构和城市要素空间分布的关联性,提出了一种新的通过POI密度分布来判别城市建成区边界的技术方法,并基于2008年百度地图的POI数据,对全国所有城市的建成区边界进行识别分析。
总结来看,数据分析是定量城市研究的获得information乃至knowledge的重要工具,可以用来做:(1)居民时空研究;(2)城市交通网络研究;(3)城市功能分区研究;(4)区域联系和城市等级研究;(5)城市生态环境治理研究等。
(四)数据分析的常用工具
目前主流的数据分析语言有R、Python、Matlab三种程序语言,以及stata、spss、sas等统计分析工具,这里考虑到与Python的可比性,对R、Python、Matlab做对比分析。
Python语言具有语法简单精炼、可依赖库很多,同时Python程序能够以多种方式轻易地与其他语言的组件“粘接”在一起,拓展性很高,此外,Python在GIS中的应用非常之广,例如:(1)引用最为广泛的GIS桌面应用ArcGIS,从版本10开始不再支持原来的VBA,而改用python;(2)QGIS本身大部分的代码特别是插件部分可以采用python进行开发。这也是定量城市研究选用Python这一工具的重要理由。
基于Python的数据分析,是进行定量城市研究的一个重要方法,Python的简易、便捷和可开拓性,可以为我们更好实现城市经济与地理研究提供支撑。Python与定量城市研究有关的包如下:
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun
如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。获取方式,私信小编 “ 资料 ”,即可免费获取哦!
020年最新Python教程:
如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的吗?
说不定你学了可能是两年前人家就学过的内容,在这小编分享一波2020最新的Python教程。
以上这些教程小编已经为大家打包准备好了,希望对正在学习的你有所帮助!
获取方式,私信小编 “ 资料 ”,即可免费获取哦!
借助Python来实现的定量城市研究的更多相关文章
- Python字符串的encode与decode研究心得——解决乱码问题
转~Python字符串的encode与decode研究心得——解决乱码问题 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“/xe4/xb8/xad/xe6/x96/x8 ...
- 借助python工具从word文件中抽取相关表的定义,最后组装建表语句-非常好
借助python工具从word文件中抽取表的定义,最后组装建表语句-非常好 --如有转载请以超链接的方式注明原文章出处,谢谢大家.请尊重每一位乐于分享的原创者 1.python脚本 ## -*- co ...
- 孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数
孤荷凌寒自学python第四十九天继续研究跨不同类型数据库的通用数据表操作函数 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天继续建构自感觉用起来顺手些的自定义模块和类的代码. 不同类型 ...
- python爬虫实践--求职Top10城市
前言 从智联招聘爬取相关信息后,我们关心的是如何对内容进行分析,获取用用的信息.本次以上篇文章“5分钟掌握智联招聘网站爬取并保存到MongoDB数据库”中爬取的数据为基础,分析关键词为“python” ...
- Python进阶(十四)----空间角度研究类,类与类之间的关系
Python进阶(十四)----空间角度研究类,类与类之间的关系 一丶从空间角度研究类 对象操作对象属性 class A(): address = '沙河' def __init__(self, na ...
- Python字符串的encode与decode研究心得乱码问题解决方法
为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“\xe4\xb8\xad\xe6\x96\x87”的形式? 为什么会报错“UnicodeEncodeError: 'asc ...
- Python字符串的encode与decode研究心得 乱码问题解决方法
以下摘自:http://www.jb51.net/article/17560.htm 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“\xe4\xb8\xad\xe6\x ...
- 给统计人讲python(1)模拟城市_数据分析
为让学校统计学社的同学了解python在数据处理方面的功能,将手游模拟城市的工厂生产进行建模,让同学在建模与处理非结构数据的过程中学习和了解python.将准备的内容放在此让更多需要的人特别是统计人( ...
- 怎样借助Python爬虫给宝宝起个好名字--python 学习
每个人一生中都会遇到一件事情,在事情出现之前不会关心,但是事情一旦来临就发现它极其重要,并且需要在很短的时间内做出重大决定,那就是给自己的新生宝宝起个名字. 因为要在孩子出生后两周内起个名字(需要办理 ...
随机推荐
- Python字符串及基本操作(入门必看)
基础入门的知识一直没有更新完,今天小张接着给大家带来入门级的字符串的常用操作.本文适合刚入门的小白,大佬们请绕过. 一.定义 字符串的意思就是“一串字符”,比如“Hello,Charlie”是一个字符 ...
- 【总结】办公&编程&学习你可能需要这些小利器!
偶然想到自己从最开始的编程小白,什么都不懂,看啥啥新鲜的时期,到现在颇有"蓦然回首,那人却在灯火阑珊处"的感觉,遂想整理一下这一路学习我个人发现的在办公.编程或者学新知识等方面针对 ...
- 一文上手Tensorflow2.0之tf.keras(三)
系列文章目录: Tensorflow2.0 介绍 Tensorflow 常见基本概念 从1.x 到2.0 的变化 Tensorflow2.0 的架构 Tensorflow2.0 的安装(CPU和GPU ...
- SVM多核学习方法简介
作者:Walker SVM是机器学习有监督学习的一种方法,常用于解决分类问题,其基本原理是:在特征空间里寻找一个超平面,以最小的错分率把正负样本分开.因为SVM既能达到工业界的要求,机器学习研究者又能 ...
- Jmeter接口测试之参数传递(十三)
在接口自动化测试中,经常会遇到的一种场景就是参数的场景,比如在用户列表中获取所有的用户列表,然后获取到某一个用户的ID,查看该用户的详细信息.首先在这里理清思路,它的流程是,首先获取到数据,然后在Jm ...
- coding++:Arrays.asList() - java.lang.UnsupportedOperationException异常处理
这个异常遇到了才知道坑这么大,坑爹的方法. private String[] otherUserFromArray = new String[]{“3”, “4”, “发放”}; List<St ...
- 爬虫scrapy框架的使用
第一步 下载scrapy模块: pip install scrapy 第二步 创建项目 在终端/cmd进入创建项目的目录:scrapy startproject douban(项目名) 导入pycha ...
- 【WPF学习】第六十四章 构建基本的用户控件
创建一个简单用户控件是开始自定义控件的好方法.本章主要介绍创建一个基本的颜色拾取器.接下来分析如何将这个控件分解成功能更强大的基于模板的控件. 创建基本的颜色拾取器很容易.然而,创建自定义颜色拾取器仍 ...
- C++STL(二)——vector容器
STL--vector容器 vector对象的概念 vector基本操作 vector对象的初始化.赋值 vector查找.替换(已在上一片 string类 博客总结过了,不再总结) vector添加 ...
- python函数的传参模式
python里的变量更像是一个名字.标签.而Python中一切又皆为对象. 当函数传参时,函数参数作为一个标签,指向某个对象,因此更贴切的说是"call by object". 但 ...