【问题标题】:Geo Spatial Analysis in Pyspark ( Point in a Polygon)Pyspark 中的地理空间分析(多边形中的点)
【发布时间】:2020-07-12 00:08:34
【问题描述】:

我有一个用例,我给定了 4 个地理空间点集,代表 4 个矩形。我有一个表,它有一个点(这只是一个纬度和经度)。我的任务是检查表格中的点是否位于四个矩形中的任何一个内。

这应该在 Pyspark 中完成。我尝试使用 udf 进行此操作,但由于主表包含很多行,因此需要很长时间。任何人都可以帮助我如何在 Pyspark 中有效地解决这个问题。

现在我已经使用 Shapely 来帮助我创建点和多边形

【问题讨论】:

    标签: pyspark geospatial


    【解决方案1】:

    我们可以将矩形视为以(min_latitude, max_latitude)(min_longitude, max_longitude) 为界的空间。假设您的兴趣点是x = (lat, lon)。现在,对于每个矩形,您需要检查是否有min_latitude <=x <= max_latitudemin_longitude <= y <= max_longitude。这些可以使用本机 spark 函数完成,不需要 udf。此外,在执行这些操作之前,您可以从原始数据框中仅选择所需的列 (dataframe.select(cols...)) 以丢弃冗余信息。

    【讨论】:

      猜你喜欢
      • 2018-09-08
      • 2017-02-18
      • 2016-06-11
      • 1970-01-01
      • 2012-07-10
      • 2012-06-19
      • 1970-01-01
      • 2015-02-25
      • 2013-09-30
      相关资源
      最近更新 更多