Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Возвращает наиболее частое значение в группе.
Синтаксис
from pyspark.sql import functions as sf
sf.mode(col, deterministic=False)
Параметры
| Параметр | Тип | Description |
|---|---|---|
col |
pyspark.sql.Column или имя столбца |
Целевой столбец для вычисления. |
deterministic |
bool, необязательный | Если имеется несколько одинаковых результатов, возвращается наименьшее значение (по умолчанию — false). |
Возвраты
pyspark.sql.Column: наиболее частое значение в группе.
Примеры
from pyspark.sql import functions as sf
df = spark.createDataFrame([
("Java", 2012, 20000), ("dotNET", 2012, 5000),
("Java", 2012, 20000), ("dotNET", 2012, 5000),
("dotNET", 2013, 48000), ("Java", 2013, 30000)],
schema=("course", "year", "earnings"))
df.groupby("course").agg(sf.mode("year")).sort("course").show()
+------+----------+
|course|mode(year)|
+------+----------+
| Java| 2012|
|dotNET| 2012|
+------+----------+
Если несколько значений имеют одну и ту же максимальную частоту, то возвращается любой из значений, если детерминированный имеет значение false или не определен, или наименьшее значение возвращается, если детерминированное значение имеет значение true.
from pyspark.sql import functions as sf
df = spark.createDataFrame([(-10,), (0,), (10,)], ["col"])
df.select(sf.mode("col", True)).show()
+---------------------------------------+
|mode() WITHIN GROUP (ORDER BY col DESC)|
+---------------------------------------+
| -10|
+---------------------------------------+