Python空间分析——geopandas安装与基本使用
一、geopandas安装
二、geopandas数据读取与存储
导入包
从geopandas自带的数据库中读取数据
从本地读取shp数据
显示geopandas表格数据
从本地读取geojson数据
文件保存
空间分析是经济、管理、地理多学科方向重点使用的研究方法,在分析区域的集疏、空间的联系及其响应过程中应用广泛,是空间格局、响应和过程集成的重要方法依托。但从技术的基本层面来讲,空间分析通常只是回答What(是什么)、Where(在哪里)和How(怎么样)的问题,而对于Why(为什么)的回答能力较弱,这也是空间分析值得挖掘的重要方向。
空间分析需要复杂的数学工具,其中最主要的是空间统计学、图论、拓扑学、计算几何等,其主要任务是对空间结构进行描述和分析,从而辅助理解和解释空间格局、响应和过程。
实际上,空间分析的软件已经很多,包括专门的地理信息软件ArcGIS、QGIS等,还包括了Python、Matlab和R等综合性的数据分析语言,它们因为编程语言的灵活性而具有更高效率和更为广阔的拓展空间,也因此发展出较为热门的开源GIS的领域。东北地理所卜坤老师新书《Python与开源GIS》是一本很好地参考教材,本系列推文将围绕开源GIS学习,将相关学习心得整理成学习笔记。
首先总结一下学习geopandas的一些心得。
一、geopandas安装
Python数据分析三大件之一pandas,是数据分析利器,很多人都接触过。geopandas是用来处理地理空间数据的python第三方库,它是在pandas的基础上建立的,完美地融合了pandas的数据类型,并且提供了操作地理空间数据的高级接口,使得在python中进行GIS操作变成可能。
geopandas好处虽然多,但是安装有点费劲,依赖包通过pip直接安装很容易报错,因此需要自己找到二进制的文件进行本地安装。
我这里搜罗了GDAL、Fiona、pyproj、shapely和retree,有需要的关注微信公众号回复geopandas即可下载,python环境是3.7
安装时大致顺序为:首先要安装GDAL,其次是Fiona、shapely、pyproj,如果不先安装GDAL,会报错。
在安装前可以到下面这个网站下载Shapely, GDAL, Fiona,Rtree这四个模块的.whl文件,要与自己安装的python版本对应。除了这里介绍的,其他很多包也可以下载,https://www.lfd.uci.edu/~gohlke/pythonlibs/
用QQ浏览器打不开上面这个网站,谷歌、火狐和360都可以。
将所需要的二进制包存放路径复制下来,在命令行中输入 pip install **.whl (你的whl文件所在路径 \ xxx.whl),即可进行本地安装。
把上面那四个模块一一安装完之后pip install geopandas,可以使用geopandas了
二、geopandas数据读取与存储
导入包
import pandas as pd
import geopandas as gpd
import matplotlib.pyplot as plt
%matplotlib inline
从geopandas自带的数据库中读取数据
world = gpd.read_file(geopandas.datasets.get_path('naturalearth_lowres'))
world.plot()
plt.show()
从本地读取shp数据
regions = gpd.GeoDataFrame.from_file(r'C:\Users\dell\Desktop\中国19城市群\中国19城市群.shp', encoding='utf-8')
regions.plot()
plt.show()
显示geopandas表格数据
regions = gpd.read_file(r'C:\Users\dell\Desktop\中国19城市群\中国19城市群.shp', encoding='utf-8')
regions
从本地读取geojson数据
regions = gpd.read_file(r'C:\Users\dell\Desktop\geopython-master\data\berlin-neighbourhoods.geojson', encoding='utf-8')
regions.plot()
plt.show()
文件保存
regions.to_file(r"C:\Users\dell\Desktop\geopython-master\data\berlin-neighbourhoods.shp")
这样就轻松实现了geojson数据向shp数据的转换
近期文章Python入门:
Python安装与环境配置
Python基础用法 |《Python与开源GIS》
Python读取excel的两种方法
Python读取json数据
Python基本库——解析库XPath
Python基本库—正则表达式(regex)
第一个Python爬虫
空间分析:
开工了开工了!空间计量模型系列教程一
空间计量模型系列教程二
情人节特辑之带有惊喜的空间计量模型系列教程三
空间计量模型系列教程四
空间计量模型系列教程五(完结啦)
空间计量||空间权重矩阵
空间计量——用GeoDa和stata生成空间权重矩阵的方法
空间计量|| matlab实现空间计量模型SAR、SEM、SDM
如果觉得有用就点一下“在看”吧