st_estimatesrid

Gilt für:mit Häkchen markiert ja Databricks Runtime 18.1 und höher

Gibt den am besten projizierten Räumlichen Referenzbezeichner (SRID) für die Mitte des Umgebenden Felds des Eingabegeometriewerts zurück. Der zurückgegebene SRID-Wert stellt entweder ein projiziertes Universelles Transverse Mercator (UTM) -Koordinatensystem oder ein projiziertes Universal Polar Stereographic (UPS) -Koordinatensystem dar.

Wenn die Geometrie leer ist, gibt die Funktion zurück None.

Die entsprechende Databricks SQL-Funktion finden Sie unter st_estimatesrid Funktion.

Syntax

from pyspark.databricks.sql import functions as dbf

dbf.st_estimatesrid(col=<col>)

Parameter

Parameter Typ Beschreibung
col pyspark.sql.Column oder str Ein Geometriewert mit Koordinaten in Grad im Bereich [-180, 180] für Längengrade und [-90, 90] für Breitengrade.

Beispiele

Gibt die UTM Zone 10N SRID für einen Punkt in San Francisco zurück.

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('POINT(-122.419 37.775)',)], ['wkt'])
df.select(dbf.st_estimatesrid(dbf.st_geomfromtext('wkt')).alias('result')).collect()
[Row(result=32610)]

Geben Sie UTM Zone 31N SRID für ein Polygon in der Nähe des Nullmeridians zurück.

df = spark.createDataFrame([('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))',)], ['wkt'])
df.select(dbf.st_estimatesrid(dbf.st_geomfromtext('wkt')).alias('result')).collect()
[Row(result=32631)]

Gibt UPS North SRID für einen Linienzug in der Nähe des Nordpols zurück:

df = spark.createDataFrame([('LINESTRING(-180 89, 180 89)',)], ['wkt'])
df.select(dbf.st_estimatesrid(dbf.st_geomfromtext('wkt')).alias('result')).collect()
[Row(result=32661)]

Geben None für einen leeren Datenpunkt zurück:

df = spark.createDataFrame([('POINT EMPTY',)], ['wkt'])
df.select(dbf.st_estimatesrid(dbf.st_geomfromtext('wkt')).alias('result')).collect()
[Row(result=None)]