st_makepoint

Se aplica a:check marcado yes Databricks Runtime 18.2 y versiones posteriores

Important

Esta característica está en versión preliminar pública.

Devuelve un valor geometry de punto con las coordenadas especificadas. La función toma 2, 3 o 4 valores numéricos, que representan las coordenadas (x, y), (x, y, z) o (x, y, z, m) del punto.

Para obtener la función SQL de Databricks correspondiente, consulte st_makepoint function.

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.st_makepoint(*cols)

Parameters

Parámetro Tipo Description
cols pyspark.sql.Column o flotante Valores de coordenadas. Debe ser 2 (x, y), 3 (x, y, z) o 4 argumentos (x, y, z, m).

Devoluciones

pyspark.sql.Column: valor geometry , que representa un punto con las coordenadas especificadas.

El valor SRID de la geometría devuelta siempre 0es .

El número de coordenadas de entrada determina la dimensión del punto devuelto: 2D si proporciona solo x y y, 3DZ si también proporciona z, o 4D si proporciona las cuatro coordenadas (x, y, zy m).

La función devuelve None si alguna de las entradas es None.

Ejemplos

Crea un punto 2D con coordenadas (10, 34).

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result='POINT(10 34)')]

Crea un punto 3DZ con coordenadas (1, 2, 3).

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1.0, 2.0, 3.0)], ['x', 'y', 'z'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y', 'z')).alias('result')).collect()
[Row(result='POINT Z (1 2 3)')]

Crea un punto 4D con coordenadas (1, 2, 3, 4).

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1.0, 2.0, 3.0, 4.0)], ['x', 'y', 'z', 'm'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y', 'z', 'm')).alias('result')).collect()
[Row(result='POINT ZM (1 2 3 4)')]

El SRID de la geometría devuelta siempre es 0.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.st_srid(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result=0)]

El tipo de la geometría devuelta siempre es geometry(0).

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, 34.0)], ['x', 'y'])
df.select(dbf.typeof(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result='geometry(0)')]

La función devuelve None si alguna de las entradas es None.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(10.0, None)], ['x', 'y'])
df.select(dbf.st_astext(dbf.st_makepoint('x', 'y')).alias('result')).collect()
[Row(result=None)]