借助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 学习
每个人一生中都会遇到一件事情,在事情出现之前不会关心,但是事情一旦来临就发现它极其重要,并且需要在很短的时间内做出重大决定,那就是给自己的新生宝宝起个名字. 因为要在孩子出生后两周内起个名字(需要办理 ...
随机推荐
- F-NAScan:一款网络资产扫描工具
此脚本的大概流程为: ICMP存活探测-->端口开放探测-->端口指纹服务识别-->提取快照(若为WEB)-->生成结果报表 用法 python NAScan.py -h 10 ...
- hdu1258 dfs 给一个指定的target数和一个数列,要求不重复选择其中的数使得和为target并打印,结果不可重复。
#include<bits/stdc++.h> using namespace std; typedef unsigned int ui; typedef long long ll; ty ...
- ElasticSearch 32766 的限制
插入一个稍大的数据到elasticsearch的时候,突然报错“ 400 - elastic: Error 400 (Bad Request): Document contains at least ...
- PHP Curl进行Post时指定 multipart/form-data 或 application/x-www-form-urlencoded 的方法
PHP Curl进行Post时指定 multipart/form-data 或 application/x-www-form-urlencoded 的方法 先看一段典型的CURL POST的代码: $ ...
- dapp 是什么?dapp 和 app 有什么区别?一文明白 dapp。
DApp 是 decentralized application 中文分布式 APP 的缩写. 一个 DApp 有后台代码运行在分布式点对点网络中.传统的 APP 的后台代码是运行在中心化的服务器. ...
- 编译原理:非确定的自动机NFA确定化为DFA
1.设有 NFA M=( {0,1,2,3}, {a,b},f,0,{3} ),其中 f(0,a)={0,1} f(0,b)={0} f(1,b)={2} f(2,b)={3} 画出状态转换矩阵 ...
- Reface.AppStarter 框架初探
Reface.AppStarter 是一种基于 .NetFramework 的应用程序启动模式,使用该启动模式,你可以轻松的得到以下功能 : IOC / DI 自动注册与装配 简化配置 垂直模块化你的 ...
- 字符串中的count()方法
描述 Python count() 方法用于统计字符串里某个字符出现的次数.可选参数为在字符串搜索的开始与结束位置. 语法 count()方法语法: str.count(sub, start= 0,e ...
- CSS盒子模型(boeder)+浮动(float)+定位(position)
盒子的上下层:margin--background-color--background-image--padding--content--border(最外层) 计算一个盒子宽 = 内容的宽(wid ...
- .Net微服务实践(二):Ocelot介绍和快速开始
目录 介绍 基本原理 集成方式 快速开始 创建订单服务 创建产品服务 创建网关 运行验证 最后 上篇.Net微服务实践(一):微服务框架选型 我们对微服务框架整体做了介绍,接下来我们从网关Ocelot ...