如何查询 GeoDataFrame?
How do I query the GeoDataFrame?
我有一个关于 Geopandas 的问题。
我有一个国家/地区的形状文件,我正在将其加载到 geopandas 中。形状文件具有国家/地区所有州的形状。
我需要提取单个状态。我曾尝试探索文档和 Whosebug,但无法围绕如何使用 query()
方法检索单个状态来改变我的想法。
import geopandas as gpd
import os
# get current directory path
cur_dir = os.path.dirname(os.path.realpath(__file__))
gdf_shp_state = gpd.read_file(cur_dir + '/data/StateBoundary/StateBoundary.shp')
print(type(gdf_shp_state))
print(gdf_shp_state)
输出:
<class 'geopandas.geodataframe.GeoDataFrame'>
state geometry
0 ANDAMAN & NICOBAR (POLYGON ((10341718.474 1449533.160500001, 103...
1 CHANDIGARH POLYGON ((8546255.616099998 3606050.813100003,...
2 DADAR & NAGAR HAVELI (POLYGON ((8137193.4859 2315664.964499999, 813...
3 DAMAN & DIU (POLYGON ((8111624.4714 2328002.898499999, 811...
4 DELHI POLYGON ((8583390.569699999 3359116.190099999,...
5 HARYANA POLYGON ((8524318.5392 3516490.864500001, 8524...
6 JHARKHAND POLYGON ((9762288.284699999 2772949.712499999,...
问题是:如何查询 GeoDataFrame?
有一个名为 gdf_shp_state.query()
的方法,它希望我将查询作为 string
。有人可以帮我提供一个示例查询字符串,我需要使用它来获取单一状态的 GeoDataFrame 吗?
geodataframes 的工作方式与常规 dataframes 相同,因此此处的查询可以是
gdf_shp_state.query("state=='ANDAMAN & NICOBAR'")
至 select 状态等于 'ANDAMAN & NICOBAR'
的行
以上等同于:
gdf_shp_state[gdf_shp_state.state == 'ANDAMAN & NICOBAR']
我有一个关于 Geopandas 的问题。
我有一个国家/地区的形状文件,我正在将其加载到 geopandas 中。形状文件具有国家/地区所有州的形状。
我需要提取单个状态。我曾尝试探索文档和 Whosebug,但无法围绕如何使用 query()
方法检索单个状态来改变我的想法。
import geopandas as gpd
import os
# get current directory path
cur_dir = os.path.dirname(os.path.realpath(__file__))
gdf_shp_state = gpd.read_file(cur_dir + '/data/StateBoundary/StateBoundary.shp')
print(type(gdf_shp_state))
print(gdf_shp_state)
输出:
<class 'geopandas.geodataframe.GeoDataFrame'>
state geometry
0 ANDAMAN & NICOBAR (POLYGON ((10341718.474 1449533.160500001, 103...
1 CHANDIGARH POLYGON ((8546255.616099998 3606050.813100003,...
2 DADAR & NAGAR HAVELI (POLYGON ((8137193.4859 2315664.964499999, 813...
3 DAMAN & DIU (POLYGON ((8111624.4714 2328002.898499999, 811...
4 DELHI POLYGON ((8583390.569699999 3359116.190099999,...
5 HARYANA POLYGON ((8524318.5392 3516490.864500001, 8524...
6 JHARKHAND POLYGON ((9762288.284699999 2772949.712499999,...
问题是:如何查询 GeoDataFrame?
有一个名为 gdf_shp_state.query()
的方法,它希望我将查询作为 string
。有人可以帮我提供一个示例查询字符串,我需要使用它来获取单一状态的 GeoDataFrame 吗?
geodataframes 的工作方式与常规 dataframes 相同,因此此处的查询可以是
gdf_shp_state.query("state=='ANDAMAN & NICOBAR'")
至 select 状态等于 'ANDAMAN & NICOBAR'
以上等同于:
gdf_shp_state[gdf_shp_state.state == 'ANDAMAN & NICOBAR']