回傳所有距離原始 H3 cell ID 不超過 k 格點的 H3 cell ID(以長整數或字串表示),以及它們與原始 H3 cell ID 的距離。 更精確地說,結果是一個結構體陣列,每個結構包含一個 H3 cell ID(以長整數或字串表示)及其與原 H3 cell ID 的距離。 輸出中 H3 cell ID 的型別與輸入 H3 格元 ID 的型別相同(表達式的第一個參數)。 支援 Spark Connect。
關於對應的 Databricks SQL 函式,請參見 h3_kringdistances 函數。
語法
from pyspark.databricks.sql import functions as dbf
dbf.h3_kringdistances(col1=<col1>, col2=<col2>)
參數
| 參數 | 類型 | Description |
|---|---|---|
col1 |
pyspark.sql.Column 或 str |
H3 cell ID,以 欄位 或字串表示。 |
col2 |
pyspark.sql.Column、 str或 int |
H3 單元 ID 的最大格點距離(第一個參數)。 |
範例
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(599686042433355775, '85283473fffffff', 1,),],['h3l', 'h3s', 'res'])
df.select(dbf.h3_kringdistances('h3l', 'res').alias('result')).collect()
[Row(result=[Row(cellid=599686042433355775, distance=0), Row(cellid=599686030622195711, distance=1), Row(cellid=599686044580839423, distance=1), Row(cellid=599686038138388479, distance=1), Row(cellid=599686043507097599, distance=1), Row(cellid=599686015589810175, distance=1), Row(cellid=599686014516068351, distance=1)])]
df.select(dbf.h3_kringdistances('h3s', 'res').alias('result')).collect()
[Row(result=[Row(cellid='85283473fffffff', distance=0), Row(cellid='85283447fffffff', distance=1), Row(cellid='8528347bfffffff', distance=1), Row(cellid='85283463fffffff', distance=1), Row(cellid='85283477fffffff', distance=1), Row(cellid='8528340ffffffff', distance=1), Row(cellid='8528340bfffffff', distance=1)])]