sum_distinct
Fonction d'agrégation : renvoie la somme des valeurs distinctes dans l'expression.
Syntaxe
Python
from pyspark.sql import functions as sf
sf.sum_distinct(col)
parameter
parameter | Type | Description |
|---|---|---|
|
| Colonne cible sur laquelle effectuer le calcul. |
Renvoie
pyspark.sql.Column: la colonne pour les résultats calculés.
Exemples
**Exemple 1** : Utilisation de la fonction sum_distinct sur une colonne avec toutes les valeurs distinctes
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,), (2,), (3,), (4,)], ["numbers"])
df.select(sf.sum_distinct('numbers')).show()
Output
+---------------------+
|sum(DISTINCT numbers)|
+---------------------+
| 10|
+---------------------+
Exemple 2 : utilisation de la fonction sum_distinct sur une colonne sans valeurs distinctes
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,), (1,), (1,), (1,)], ["numbers"])
df.select(sf.sum_distinct('numbers')).show()
Output
+---------------------+
|sum(DISTINCT numbers)|
+---------------------+
| 1|
+---------------------+
Exemple 3 : Utilisation de la fonction sum_distinct sur une colonne avec des valeurs nulles et en double
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(None,), (1,), (1,), (2,)], ["numbers"])
df.select(sf.sum_distinct('numbers')).show()
Output
+---------------------+
|sum(DISTINCT numbers)|
+---------------------+
| 3|
+---------------------+