Python 检查点是否位于多边形内(加速)

Python 检查点是否位于多边形内(加速),python,pandas,numpy,geopandas,Python,Pandas,Numpy,Geopandas,我有两个数据帧。1) 数据-长点和横向点2)边界=城市的形状文件 我需要检查哪些点在shapefile中并保存它们。下面是我的代码: 数据 边境 最终检查 图书馆 你的问题很简单。数据在哪里? city = pd.read_csv("D:...path.../data.csv") crs = {'init':'epsg:4326'} geometry = [Point(xy) for xy in zip(city.longitude,city.latitude)] city_point

我有两个数据帧。1) 数据-长点和横向点2)边界=城市的形状文件


我需要检查哪些点在shapefile中并保存它们。下面是我的代码:

数据
边境
最终检查
图书馆
你的问题很简单。数据在哪里?
city = pd.read_csv("D:...path.../data.csv")
crs = {'init':'epsg:4326'}
geometry = [Point(xy) for xy in zip(city.longitude,city.latitude)]
city_point = gpd.GeoDataFrame(city,crs=crs,geometry=geometry)
border = gpd.read_file("C:...path.../border.shp")
border_gdf = gpd.GeoDataFrame(border, geometry='geometry')
city_point['inside'] = city_point['geometry'].apply(border_gdf.contains)
city_point = city_point[city_point.inside != True]
import numpy as np
import pandas as pd
import geopandas as gpd
from shapely.geometry import Point, Polygon
city_point[city_point.geometry.within(border_gdf.iloc[0].geometry)]