Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Crea un WindowSpec oggetto con i limiti dei fotogrammi definiti, da start (inclusivo) a end (inclusivo).
Entrambi start e end sono relativi dalla riga corrente. Ad esempio, 0 significa "riga corrente", -1 significa una prima della riga corrente e 5 significa cinque dopo la riga corrente.
Un limite basato su intervallo si basa sul valore effettivo delle ORDER BY espressioni. Un offset modifica il valore dell'espressione ORDER BY , ad esempio se il valore corrente ORDER BY è 10 e l'offset del limite inferiore è -3, il limite inferiore risultante è 7. Per questo motivo, i fotogrammi basati su intervalli richiedono esattamente un'espressione ORDER BY con un tipo di dati numerico, a meno che l'offset non sia associato.
Sintassi
Window.rangeBetween(start, end)
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
start |
int | Inizio limite, inclusivo. Il frame non è associato se è Window.unboundedPrecedingo qualsiasi valore minore o uguale a max(-sys.maxsize, -9223372036854775808). |
end |
int | Fine limite, inclusivo. Il frame non è associato se è Window.unboundedFollowingo qualsiasi valore maggiore o uguale a min(sys.maxsize, 9223372036854775807). |
Restituzioni
WindowSpec
Note
Usare Window.unboundedPreceding, Window.unboundedFollowinge Window.currentRow per specificare valori limite speciali anziché usare direttamente i valori integrali.
Examples
from pyspark.sql import Window, functions as sf
df = spark.createDataFrame(
[(1, "a"), (1, "a"), (2, "a"), (1, "b"), (2, "b"), (3, "b")], ["id", "category"])
# Calculate the sum of id where the id value falls within [current id, current id + 1]
# in each category partition.
window = Window.partitionBy("category").orderBy("id").rangeBetween(Window.currentRow, 1)
df.withColumn("sum", sf.sum("id").over(window)).sort("id", "category").show()
# +---+--------+---+
# | id|category|sum|
# +---+--------+---+
# | 1| a| 4|
# | 1| a| 4|
# | 1| b| 3|
# | 2| a| 2|
# | 2| b| 5|
# | 3| b| 3|
# +---+--------+---+