séquence
Générez une séquence d'entiers de start à fin, en incrémentant par pas. Si le pas n'est pas défini, la fonction s'incrémente de 1 si le start est inférieur ou égal à la fin, sinon elle se décrémente de 1.
Syntaxe
from pyspark.sql import functions as sf
sf.sequence(start, stop, step=None)
parameter
parameter | Type | Description |
|---|---|---|
|
| La valeur de départ (incluse) de la séquence. |
|
| La dernière valeur (incluse) de la séquence. |
|
| La valeur à ajouter à l'élément actuel pour obtenir l'élément suivant dans la séquence. La valeur par default est 1 si start est inférieur ou égal à stop, sinon -1. |
Renvoie
pyspark.sql.Column: Une nouvelle colonne qui contient un tableau de valeurs de séquence.
Exemples
Exemple 1 : Génération d'une séquence avec une étape default.
import pyspark.sql.functions as sf
df = spark.createDataFrame([(-2, 2)], ['start', 'stop'])
df.select(sf.sequence(df.start, df.stop)).show()
+---------------------+
|sequence(start, stop)|
+---------------------+
| [-2, -1, 0, 1, 2]|
+---------------------+
Exemple 2 : Génération d'une séquence avec une étape personnalisée
import pyspark.sql.functions as sf
df = spark.createDataFrame([(4, -4, -2)], ['start', 'stop', 'step'])
df.select(sf.sequence(df.start, df.stop, df.step)).show()
+---------------------------+
|sequence(start, stop, step)|
+---------------------------+
| [4, 2, 0, -2, -4]|
+---------------------------+
Exemple 3 : Génération d'une séquence avec une étape négative
import pyspark.sql.functions as sf
df = spark.createDataFrame([(5, 1, -1)], ['start', 'stop', 'step'])
df.select(sf.sequence(df.start, df.stop, df.step)).show()
+---------------------------+
|sequence(start, stop, step)|
+---------------------------+
| [5, 4, 3, 2, 1]|
+---------------------------+