Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Gyűjteményfüggvény: Növekvő sorrendbe rendezi a bemeneti tömböt. A bemeneti tömb elemeinek rendezettnek kell lenniük. A visszaadott tömb végén null értékű elemek lesznek elhelyezve. Támogatja a Spark Connectet.
A megfelelő Databricks SQL-függvényhez lásd a függvénytarray_sort.
Szemantika
from pyspark.databricks.sql import functions as dbf
dbf.array_sort(col=<col>, comparator=<comparator>)
Paraméterek
| Paraméter | Típus | Description |
|---|---|---|
col |
pyspark.sql.Column vagy str |
Oszlop vagy kifejezés neve. |
comparator |
callableszabadon választható |
Olyan bináris függvény, amely negatív egész, 0 vagy pozitív egész számot ad vissza, mivel az első elem kisebb, egyenlő vagy nagyobb, mint a második elem. Ha az összehasonlító függvény null értéket ad vissza, a függvény sikertelen lesz, és hibát jelez. |
Visszatérítések
pyspark.sql.Column: rendezett tömb.
Példák
1. példa: Tömb rendezése alapértelmezett növekvő sorrendben
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([([2, 1, None, 3],),([1],),([],)], ['data'])
df.select(dbf.array_sort(df.data).alias('r')).collect()
[Row(r=[1, 2, 3, None]), Row(r=[1]), Row(r=[])]
2. példa: Tömb rendezése egyéni összehasonlítóval
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(["foo", "foobar", None, "bar"],),(["foo"],),([],)], ['data'])
df.select(dbf.array_sort(
"data",
lambda x, y: dbf.when(x.isNull() | y.isNull(), dbf.lit(0)).otherwise(dbf.length(y) - dbf.length(x))
).alias("r")).collect()
[Row(r=['foobar', 'foo', None, 'bar']), Row(r=['foo']), Row(r=[])]