Aller au contenu principal

ntile

Fonction de fenêtre : renvoie l'ID du groupe ntile (de 1 à n inclus) dans une partition de fenêtre ordonnée. Par exemple, si n est 4, le premier quart des lignes obtiendra la valeur 1, le deuxième quart obtiendra 2, le troisième quart obtiendra 3 et le dernier quart obtiendra 4.

Ceci est équivalent à la fonction NTILE en SQL.

Syntaxe

Python
from pyspark.sql import functions as sf

sf.ntile(n)

parameter

parameter

Type

Description

n

int

Un entier spécifiant le nombre de groupes dans lesquels diviser la partition.

parameter

Type

Description

n

int

Un entier spécifiant le nombre de groupes dans lesquels diviser la partition.

Renvoie

pyspark.sql.Column: ID de groupe partitionné.

Exemples

Python
from pyspark.sql import functions as sf
from pyspark.sql import Window
df = spark.createDataFrame(
[("a", 1), ("a", 2), ("a", 3), ("b", 8), ("b", 2)], ["c1", "c2"])
df.show()
Output
+---+---+
| c1| c2|
+---+---+
| a| 1|
| a| 2|
| a| 3|
| b| 8|
| b| 2|
+---+---+
Python
w = Window.partitionBy("c1").orderBy("c2")
df.withColumn("ntile", sf.ntile(2).over(w)).show()
Output
+---+---+-----+
| c1| c2|ntile|
+---+---+-----+
| a| 1| 1|
| a| 2| 1|
| a| 3| 2|
| b| 2| 1|
| b| 8| 2|
+---+---+-----+