Pular para o conteúdo principal

ponto_de_ajuste

info

Visualização

Este recurso está em Pré-visualização Pública.

Define o n-ésimo ponto na cadeia de linha de entrada Geografia ou Geometria.

Para a função Databricks SQL correspondente, consulte a funçãost_setpoint.

Sintaxe

Python
from pyspark.databricks.sql import functions as dbf

dbf.st_setpoint(col1=<col1>, col2=<col2>, col3=<col3>)

Parâmetros

Parâmetro

Tipo

Descrição

col1

pyspark.sql.Column ou str

Um valor de Geografia ou Geometria que representa uma linha.

col2

pyspark.sql.Column ou int

Uma posição na linha, com base 1, onde o novo ponto deve ser adicionado.

col3

pyspark.sql.Column ou str

Um valor geográfico ou geométrico que representa um ponto.

Exemplos

Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('LINESTRING(1 2,3 4)','POINT(7 8)',)], ['wkt1', 'wkt2'])
df.select(dbf.st_astext(dbf.st_setpoint(dbf.st_geomfromtext('wkt1'), 1, dbf.st_geomfromtext('wkt2'))).alias('result')).collect()
Output
[Row(result='LINESTRING(7 8,3 4)')]
Python
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('LINESTRING ZM (1 2 3 4,5 6 7 8)','POINT M (0 9 99)',)], ['wkt1', 'wkt2'])
df.select(dbf.st_asewkt(dbf.st_setpoint(dbf.st_geogfromtext('wkt1'), -1, dbf.st_geogfromtext('wkt2'))).alias('result')).collect()
Output
[Row(result='SRID=4326;LINESTRING ZM (1 2 3 4,0 9 0 99)')]