新書推薦:
《
UE5虚幻引擎必修课(视频教学版)
》
售價:NT$
505.0
《
真需求
》
售價:NT$
505.0
《
阿勒泰的春天
》
售價:NT$
230.0
《
如见你
》
售價:NT$
234.0
《
人格阴影 全新修订版,更正旧版多处问题。国际分析心理学协会(IAAP)主席力作
》
售價:NT$
305.0
《
560种野菜野果鉴别与食用手册
》
售價:NT$
305.0
《
中国官僚政治研究(一部洞悉中国政治制度演变的经典之作)
》
售價:NT$
286.0
《
锂电储能产品设计及案例详解
》
售價:NT$
505.0
編輯推薦:
本书针对对地理计算感兴趣的中高级 R 用户和具有地理数据经验的 R 初学者而设计,适用于基于R语言进行开源软件分析、可视化和建模地理数据的人员。
本书的主题涉及多个领域的交叉,如果您是
?使用地理信息系统 (GIS)软件(如QGIS、ArcGIS、GRASS 或 SAGA)学习空间分析技能的人员;
?来自地理学、遥感、规划、GIS 和地理数据科学等地理数据专业领域的学生和研究人员;
?结合R语言的功能性和灵活性进行地理数据方面(如地质学、区域科学、生物学和生态学、农业科学、考古学、流行病学、运输建模和广义数据科学等领域)工作和研究的人员;
?需要命令行语言(例如 R)的可重复性、速度和灵活性,从事处理城市和交通规划、物流、地理营销等多种空间数据的商用应用程序设计与开发的研究人员和分析师;
本书都是良好的参考读物和入门教程。
內容簡介:
地理计算是一个地理学、计算机科学、统计学等多个学科的交叉领域,在交通运输、生态、市场营销和店铺选中等行业都有丰富的应用需求。在过去的几十年里,地理空间的免费开源软件飞速发展,但随之而来的问题是它的分析结果也很难再复现。本书的主题便是使用R语言打造可重现的地理数据分析工作流程,同时也展示R语言中强大的地理数据分析功能。《地理计算与R语言》从基础到应用娓娓道来,包含基础篇、扩展篇和应用篇三个部分。
《地理计算与R语言》适合作为在交通、生态环境等领域的工作人员为跨学科的入门读物,也适合希望使用开源软件分析、可视化和建模地理数据的人员,以及对地理计算感兴趣的中高级 R 语言用户和具有地理数据经验的 R语言初学者阅读。
關於作者:
罗宾·洛夫莱斯(Robin Lovelace) 博士是英国利兹大学交通运输研究所 (ITS) 和利兹数据分析研究所 (LIDA) 的助理教授和研究员,在地理计算、数据分析和建模方面拥有十多年的经验。作为接受过专业地理信息系统(GIS)培训的地理学家和环境学家,同时又是多年来采用R语言进行学术研究和项目应用的专家,他在运输、GIS和数据分析领域建树颇丰,还为各层次学生讲授了大量的R课程,出版了三本关于统计编程语言 R 的书籍,以及数十篇将新方法应用于政策相关问题的论文。
雅库布·诺沃萨德(Jakub Nowosad) 博士是波兰波兹南密茨凯维奇大学地球生态学和地理信息研究所的助理教授,主要研究重点是开发数据挖掘和基于模式的空间方法并将其应用于大型数据集。他参与了自动全球生态区划、极端降水建模、地形分类、物候预报和土壤特性测定等主题的各种跨学科合作。他的研究兴趣还包括空间分析、统计和编程。他在空间分析、地质统计学、统计学和机器学习领域拥有丰富的教学经验。 同时,诺沃萨德博士也是一名资深的 R 用户,也是 R 社区的活跃成员。
雅纳·蒙乔(Jannes Muenchow)博士是一位开源软件的热心倡导者,他的经验涵盖学术和商业角色。他曾在德国耶拿大学(FSU)进行地理信息学博士后研究以及担任GfK Geomarketing团队负责人,目前在cynkra担任高级数据科学家和DevOps工程师的双重角色。
目錄 :
推荐序 1
推荐序 2
推荐序 3
译者序
原书序
原书前言
第 1 章 简介 1
1.1 什么是地理计算 2
1.2 为什么使用 R 语言进行地理计算 4
1.3 地理计算软件 6
1.4 R 语言中地理计算的软件生态 8
1.5 R 语言地理计算的发展史 10
1.6 练习 13
第一部分 基 础
第 2 章 R 语言中的地理数据 17
2.1 导读 18
2.2 矢量数据 19
2.2.1 简单要素介绍 21
2.2.2 为什么使用简单要素 23
2.2.3 几何类型 24
2.2.4 简单要素几何(sfg) 25
2.2.7 简单要素列(sfc) 28
2.2.8 sf 类 30
2.3 栅格数据 32
2.3.1 栅格数据简介 33
2.3.2 基本地图制作 34
2.3.3 栅格类 35
2.4 坐标参照系 37
2.4.1 地理坐标系 38
2.4.2 投影坐标参照系 38
2.4.3 R 中的 CRS 39
2.5 测量单位 41
2.6 练习 43
第 3 章 属性数据操作 44
3.1 导读 44
3.2 矢量数据的属性操作 45
3.2.1 矢量属性的子集筛选 47
3.2.2 矢量属性的聚合 51
3.2.3 矢量属性连接 53
3.2.4 创建属性和删除空间信息 56
3.3 栅格数据的属性操作 58
3.3.1 栅格子集 60
3.3.2 栅格对象概述 61
3.4 练习 62
第 4 章 空间数据操作 65
4.1 导读 65
4.2 矢量数据的空间操作 66
4.2.1 空间子集筛选 66
4.2.2 拓扑关系 69
4.2.3 空间连接 72
4.2.4 非重叠连接 73
4.2.5 空间数据聚合 75
4.2.6 距离关系 77
4.3 栅格数据的空间操作 79
4.3.1 栅格数据的空间子集筛选 79
4.3.2 地图代数 81
4.3.3 局部操作 82
4.3.4 焦点操作 83
4.3.5 分区操作 84
4.3.6 全局操作和距离 85
4.3.7 合并栅格 86
4.4 练习 86
第 5 章 几何运算 88
5.1 导读 88
5.2 矢量数据的几何运算 89
5.2.1 简化 89
5.2.2 质心 91
5.2.3 缓冲区 92
5.2.4 仿射变换 94
5.2.5 裁剪 95
5.2.6 几何体聚合 98
5.2.7 类型转换 99
5.3 栅格数据的几何运算 103
5.3.1 几何交集 104
5.3.2 范围和原点 104
5.3.3 聚合和解聚 106
5.4 栅格与矢量的交互 108
5.4.1 栅格裁剪 109
5.4.2 栅格提取 110
5.4.3 栅格化 114
5.4.4 空间矢量化 117
5.5 练习 119
第 6 章 重投影地理数据 122
6.1 导读 122
6.2 何时重投影 125
6.3 投影到哪个 CRS 126
6.4 重投影矢量数据 129
6.5 修改地图投影 130
6.6 重投影栅格数据 132
6.7 练习 135
第 7 章 地理数据的读写 136
7.1 导读 136
7.2 检索开放数据 137
7.3 地理数据的软件包 138
7.4 地理数据的网络服务 140
7.5 文件格式 142
7.6 数据读入 144
7.6.1 矢量数据 144
7.6.2 栅格数据 147
7.7 数据写出 148
7.7.1 矢量数据 148
7.7.2 栅格数据 150
7.8 可视化输出 151
7.9 练习 152
第二部分 扩 展
第 8 章 使用 R 语言制作地图 155
8.1 导读 156
8.2 静态地图 156
8.2.1 tmap 基础 157
8.2.2 地图对象 159
8.2.3 美学 161
8.2.4 颜色设置 163
8.2.5 布局 166
8.2.6 分面地图 169
8.2.7 内嵌图 170
8.3 动态地图 173
8.4 交互式地图 174
8.5 地图应用 179
8.6 其他地图制作的软件包 182
8.7 练习 187
第 9 章 与 GIS 软件协作 190
9.1 导读 190
9.2 ( R )QGIS 193
9.3 ( R )SAGA 198
9.4 通过 rgrass 访问 GRASS 201
9.5 技术选型 206
9.6 其他接口 207
9.6.1 GDAL 接口 207
9.6.2 空间数据库接口 209
9.7 练习 212
第 10 章 脚本、算法和函数 214
10.1 导读 214
10.2 脚本 215
10.3 几何算法 217
10.4 函数 222
10.5 编程 224
10.6 练习 225
第 11 章 统计学习 227
11.1 导读 228
11.2 案例研究 :滑坡发生的概率 229
11.3 R 语言中的传统建模方法 231
11.4 (空间)交叉验证简介 234
11.5 使用 mlr 进行空间交叉验证 235
11.5.1 广义线性模型 236
11.5.2 机器学习超参数的空间调整 239
11.6 结论 245
11.7 练习 246
第三部分 应 用
第 12 章 交通 251
12.1 导读 251
12.2 案例研究 :布里斯托尔 253
12.3 交通出行区域 255
12.4 期望路线 259
12.5 路径 261
12.6 节点 263
12.7 路网 266
12.8 基建的优先级划分 268
12.9 未来展望 270
12.10 练习 271
第 13 章 地理营销 272
13.1 导读 272
13.2 案例研究 :德国的自行车商店 273
內容試閱 :
原书前言
本书是为那些想要使用开源软件分析、可视化和建模地理数据的人而写的。它基 于 R 语言,这是一种具有强大的数据处理、可视化和地理空间能力的统计编程语言。 本书涵盖了广泛的主题,将会吸引来自不同背景的人,特别是:
● 那些通过桌面地理信息系统(GIS),如 QGIS 、ArcMap 、GRASS或 SAGA, 学习了空间分析技能, 但希望能够使用一门强大的(地理) 统计和可视化编程语言, 并享受命令行方式( Sherman ,2008)带来的好处的人。
随着“现代”GIS 软件的出现,大多数人都希望通过单击鼠标的方式来完成任务。 这很简单,但是在命令行中等待你的是更强大的灵活性和操作性。
● 专门从事地理数据相关研究的研究生和研究人员,包括地理学、遥感、规划、 GIS 和地理数据科学领域。
● 从事地理数据研究的学者和研究生,涉及地质学、区域科学、生物学和生态学、 农业科学、考古学、流行病学、交通建模和广义数据科学等领域,他们需要 R 语言的 强大和灵活性来进行研究。
● 公共、私营或第三方部门组织中的应用研究人员和分析师,他们需要像 R 语言 这样的命令行语言的可重复性、速度和灵活性,以处理各种空间数据,如城市和交通 规划、物流、地理营销(店铺位置分析) 和应急规划。
本书为对地理计算感兴趣的中高级 R 语言用户和具有地理数据处理经验的 R 语言初学者设计。如果你之前没有使用过 R 语言和地理空间数据分析,请不要气馁,我们提供了指向更多学习材料的链接,并在第 2 章以及后面提供的链接中,从初学者的角 度描述了空间数据的性质。
如何阅读本书
本书分为三个部分:
1)第一部分:基础,旨在让你了解 R 语言中的地理数据。
2)第二部分:扩展,涵盖高级的地理数据处理技术。
3)第三部分:应用,解决实际问题。
每个章节的难度都会逐渐增加,因此我们建议按顺序阅读本书。R 语言中地理分 析的一个主要困难是其陡峭的学习曲线。第一部分的章节旨在通过提供简单数据集上 的可重复代码来解决这个问题,从而简化入门过程。
从教学和学习的角度来看,本书的一个重要方面是章末的练习。完成这些练习可 以锻炼你的技能,加强你解决各种地理空间问题的自信。本书的在线网站 r.geocompx. org/solutions提供了练习的答案和一些扩展示例。
有基础的读者可以直接跳到第 2 章的实际案例中。不过我们建议先阅读第 1 章, 对这本书的背景有更深的了解。如果你是 R 语言的初学者,我们还建议在尝试运行每 个章节提供的代码块之前,先了解更多关于该语言的知识(除非你是为了理解概念而 阅读本书)。幸运的是,R 语言社区提供了大量的资源来帮助 R 语言的初学者。我们特 别推荐三个教程:R for Data Science( Grolemund and Wickham ,2016)和 Efficient R Programming( Gillespie and Lovelace ,2016),特别是第 2 章(关于安装和设置 R/RStudio) 和第 10 章(关于学习如何学习), 以及 An introduction to R( Venables et al. ,2017)。此外, DataCamp 的 Introduction to R是一个很棒的交互式学习教程。
为什么选择 R 语言
虽然 R 语言具有陡峭的学习曲线, 但本书提倡的命令行执行的方式,可以很快 让你意识到这是值得的。你将在后续章节中了解到, R 语言是解决各种地理数据挑战 的有效工具。希望通过练习后, R 语言可以成为你处理地理空间工具的shou选。在许多 情况下,通过命令行键入和执行命令比在桌面 GIS 的图形用户界面( Graphical User Interface ,GUI) 上单击更快。对于某些应用程序,例如空间统计和建模, R 语言可能是wei一实际可行的完成工作的方式。
正如在 1.2 节中所概述的那样,使用 R 语言进行地理计算有许多原因:与其他语 言相比,R 语言的交互式运行与许多地理数据分析的工作流程更适配。R 语言在数据 科学(包括数据整理、统计学习技术和数据可视化) 和大数据(通过与数据库和分布 式计算系统的高效接口) 等快速增长的领域中表现出色。此外,R 语言可以实现可重 复的工作流程,共享分析的脚本将使他人能够在你的工作基础上进行扩展。为了确保 本书的可重复性, 我们已经在 github.com/Robinlovelace/geocompr上提供了其源代码。 你可以在 code/ 文件夹中找到生成图形的脚本文件,当书中未提供生成图形的代码时, 在图形的标题中会提供生成该图的脚本文件的名称(例如,参见图 12.2 的标题)。
其他编程语言,如 Python 、Java 和 C ,也可以用于地理计算,并且有很好的无 须使用 R 语言的学习资源,如 1.3 节所讨论的。但是,这些语言都没有提供 R 语言社 区提供的独特的包生态系统、统计能力、可视化选项和强大的集成开发环境。此外, 通过深入学习一种语言(R) 的使用方法,你会掌握基本的概念并拥有足够的信心, 这在学习用其他语言进行地理计算时也是必需的。
地理计算与 R 语言将为你提供处理各种问题的知识和技能,包括那些涉及科学、 社会和环境等领域的地理数据。如 1.1 节所述,地理计算不仅仅是使用计算机处理地 理数据,它也关乎于现实世界的影响。如果你对本书的更广泛背景和动机