Skip to content

mode(col)

Описание

Функция mode() возвращает наиболее часто встречающееся значение в группе. Это агрегатная функция, которая должна использоваться с groupBy().

Параметры

  • col: Column - столбец для поиска моды

Возвращаемое значение

Тип значения из столбца col - наиболее часто встречающееся значение

Пример использования

from pyspark.sql.functions import mode
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("mode_example").getOrCreate()

# Создаем DataFrame
data = [
    ("A", 1),
    ("A", 2),
    ("A", 2),
    ("B", 3),
    ("B", 4),
    ("B", 4),
    ("B", 4),
    ("B", None)
]
df = spark.createDataFrame(data, ["group", "value"])

# Находим моду
result = df.groupBy("group").agg(
    mode("value").alias("mode_value")
).show()

# Результат:
# +-----+----------+
# |group|mode_value|
# +-----+----------+
# |A    |2         |
# |B    |4         |
# +-----+----------+

Примечания

  • NULL значения игнорируются при поиске моды
  • Если есть несколько значений с одинаковой частотой, возвращается одно из них
  • Для вычисления среднего значения используйте avg()
  • Для вычисления медианы используйте median()
  • Для вычисления суммы используйте sum()