Поделиться через


h3_try_polyfillash3string

Возвращает массив идентификаторов ячеек H3, представленных в виде строк и соответствующих шестиугольникам или пятиугольникам указанного разрешения, которые содержатся в заданной области географии. Сдерживание определяется центроидами ячеек: ячейка считается покрытием географической области, если центроид ячейки находится в пределах географического региона. Значение выражения равно None, если география не является площадной (многоугольником или многополигоном), или если обнаружена ошибка при анализе входного представления географии.

Допустимые входные представления: WKT, GeoJSON и WKB. В первых двух случаях входные данные должны быть типа строка, в то время как в последнем случае они должны быть типа BINARY. Поддерживает Spark Connect.

Для соответствующей функции Databricks SQL смотрите функцию h3_try_polyfillash3string.

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.h3_try_polyfillash3string(col1=<col1>, col2=<col2>)

Параметры

Параметр Тип Description
col1 pyspark.sql.Column или str Строка, представляющая географию в эталонной системе координат WGS84 в формате WKT или GeoJSON, или двоичный объект, представляющий географию в системе ссылок на координаты WGS84 в формате WKB.
col2 pyspark.sql.Column, str или int Разрешение идентификаторов ячеек H3, охватывающих данную географическую область.

Примеры

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POLYGON((-122.4194 37.7749,-118.2437 34.0522,-74.0060 40.7128,-122.4194 37.7749))', 2),],['wkt', 'res'])
df.select(dbf.h3_try_polyfillash3string('wkt', 'res').alias('result')).collect()
[Row(result=['82268ffffffffff', '82269ffffffffff', '822987fffffffff', '8226e7fffffffff',     '822997fffffffff', '8226f7fffffffff', '822657fffffffff', '8229affffffffff'])]