Megosztás:


sort_array

A bemeneti tömböt növekvő vagy csökkenő sorrendbe rendezi a tömbelemek természetes sorrendje szerint. A null elemek a visszaadott tömb elején növekvő sorrendben vagy a visszaadott tömb végén csökkenő sorrendben lesznek elhelyezve.

Szemantika

from pyspark.sql import functions as sf

sf.sort_array(col, asc=True)

Paraméterek

Paraméter Típus Description
col pyspark.sql.Column vagy str Az oszlop vagy kifejezés neve.
asc bool, nem kötelező Legyen szó növekvő vagy csökkenő sorrendben történő rendezésről. Ha az asc értéke True (alapértelmezett), akkor a rendezés növekvő sorrendben történik. Ha hamis, akkor csökkenő sorrendben.

Visszatérítések

pyspark.sql.Column: Rendezett tömb.

Példák

1. példa: Tömb rendezése növekvő sorrendben

import pyspark.sql.functions as sf
df = spark.createDataFrame([([2, 1, None, 3],)], ['data'])
df.select(sf.sort_array(df.data)).show()
+----------------------+
|sort_array(data, true)|
+----------------------+
|       [NULL, 1, 2, 3]|
+----------------------+

2. példa: Tömb rendezése csökkenő sorrendben

import pyspark.sql.functions as sf
df = spark.createDataFrame([([2, 1, None, 3],)], ['data'])
df.select(sf.sort_array(df.data, asc=False)).show()
+-----------------------+
|sort_array(data, false)|
+-----------------------+
|        [3, 2, 1, NULL]|
+-----------------------+

3. példa: Tömb rendezése egyetlen elemmel

import pyspark.sql.functions as sf
df = spark.createDataFrame([([1],)], ['data'])
df.select(sf.sort_array(df.data)).show()
+----------------------+
|sort_array(data, true)|
+----------------------+
|                   [1]|
+----------------------+

4. példa: Üres tömb rendezése

from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, StringType, StructField, StructType
schema = StructType([StructField("data", ArrayType(StringType()), True)])
df = spark.createDataFrame([([],)], schema=schema)
df.select(sf.sort_array(df.data)).show()
+----------------------+
|sort_array(data, true)|
+----------------------+
|                    []|
+----------------------+

5. példa: Tömb rendezése null értékekkel

from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, IntegerType, StructType, StructField
schema = StructType([StructField("data", ArrayType(IntegerType()), True)])
df = spark.createDataFrame([([None, None, None],)], schema=schema)
df.select(sf.sort_array(df.data)).show()
+----------------------+
|sort_array(data, true)|
+----------------------+
|    [NULL, NULL, NULL]|
+----------------------+