sort_array

Seřadí vstupní pole vzestupně nebo sestupně podle přirozeného pořadí prvků pole. Prvky null budou umístěny na začátku vráceného pole ve vzestupném pořadí nebo na konci vrácené matice v sestupném pořadí.

Syntaxe

from pyspark.sql import functions as sf

sf.sort_array(col, asc=True)

Parametry

Parameter Typ Description
col pyspark.sql.Column nebo str Název sloupce nebo výrazu
asc bool, volitelné Určuje, jestli se má seřadit vzestupně nebo sestupně. Pokud je asc true (výchozí), je řazení ve vzestupném pořadí. Pokud je false, pak v sestupném pořadí.

Návraty

pyspark.sql.Column: Seřazené pole.

Examples

Příklad 1: Řazení pole ve vzestupném pořadí

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]|
+----------------------+

Příklad 2: Řazení pole v sestupném pořadí

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]|
+-----------------------+

Příklad 3: Řazení pole s jedním prvkem

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

Příklad 4: Řazení prázdného pole

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)|
+----------------------+
|                    []|
+----------------------+

Příklad 5: Řazení pole s hodnotami null

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]|
+----------------------+