適用対象:はい Databricks Runtime 18.2 以降と![]()
指定した座標を持つ点 Geometry 値を返します。 この関数は 2、3、または 4 の数値を受け取り、ポイントの (x、y)、(x、y、z)、または (x、y、z、m) 座標を表します。
対応する Databricks SQL 関数については、 st_makepoint 関数を参照してください。
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.st_makepoint(*cols)
Parameters
| パラメーター | タイプ | Description |
|---|---|---|
cols |
pyspark.sql.Column またはフロート |
座標値。 2 (x、y)、3 (x、y、z)、または 4 (x、y、z、m) の引数を指定する必要があります。 |
返品
pyspark.sql.Column: 指定した座標を持つ点を表す Geometry 値。
返されるジオメトリの SRID 値は常に 0。
入力座標の数によって、返されるポイントの寸法が決まります。 x と yのみを指定する場合は 2D、 zも指定した場合は 3DZ、4 つの座標 (x、 y、 z、 m) をすべて指定した場合は 4D。
いずれかの入力がNoneされている場合、関数はNoneを返します。
例示
座標 (10,34) を持つ 2D ポイントを作成します。
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)')]
座標 (1、2、3) を持つ 3DZ ポイントを作成します。
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)')]
座標 (1、2、3、4) を持つ 4D ポイントを作成します。
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)')]
返されるジオメトリの SRID は常に 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)]
返されるジオメトリの型は常に 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)')]
いずれかの入力がNoneされている場合、関数は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)]