【发布时间】:2022-01-15 06:15:49
【问题描述】:
我有一个带有多边形的数据框,并且想循环创建一个新列,以检查特定点是否在一个或多个多边形内(因为它们不是排他的)。我尝试按照 geopandas 教程进行操作,但这似乎不起作用,因为所有列都返回“False”。可以请指出我做错了什么吗? 非常感谢。 以防万一,文件“quartier_paris.geojson”是一个经典的geojson文件,读取它没有问题(形状出现,我可以去所有quartiers.explore(),例如,查看地图上的所有多边形,我是100%肯定该点在这些多边形内。文件的大小太大而无法加载,这是它的链接以防万一https://parisdata.opendatasoft.com/explore/dataset/quartier_paris/download/?format=geojson&timezone=Europe/Berlin&lang=fr)
import pandas as pd
import geopandas
import os
import shapely
from shapely.geometry import Polygon, LineString, Point
quartiers = geopandas.read_file("quartier_paris.geojson")
p1 = Point(48.823, 2.30)
quartiers["Match"] =quartiers["geometry"].apply(lambda x: p1.within(x))
【问题讨论】:
标签: python pandas geopandas shapely