count_distinct

Vrátí nový sloupec pro počítání jedinečných hodnot ve sloupci nebo sloupcích.

Syntaxe

from pyspark.sql import functions as sf

sf.count_distinct(col, *cols)

Parametry

Parameter Typ Description
col pyspark.sql.Column nebo název sloupce První sloupec, který se má vypočítat.
cols pyspark.sql.Column nebo název sloupce Další sloupce, na kterých se mají vypočítat.

Návraty

pyspark.sql.Column: jedinečné hodnoty těchto dvou hodnot sloupců.

Examples

Příklad 1: Počítání jedinečných hodnot jednoho sloupce

from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,), (1,), (3,)], ["value"])
df.select(sf.count_distinct(df.value)).show()
+---------------------+
|count(DISTINCT value)|
+---------------------+
|                    2|
+---------------------+

Příklad 2: Počítání jedinečných hodnot více sloupců

from pyspark.sql import functions as sf
df = spark.createDataFrame([(1, 1), (1, 2)], ["value1", "value2"])
df.select(sf.count_distinct(df.value1, df.value2)).show()
+------------------------------+
|count(DISTINCT value1, value2)|
+------------------------------+
|                             2|
+------------------------------+

Příklad 3: Počítání jedinečných hodnot s názvy sloupců jako řetězce

from pyspark.sql import functions as sf
df = spark.createDataFrame([(1, 1), (1, 2)], ["value1", "value2"])
df.select(sf.count_distinct("value1", "value2")).show()
+------------------------------+
|count(DISTINCT value1, value2)|
+------------------------------+
|                             2|
+------------------------------+