count(col)
Описание
Функция count()
возвращает количество элементов в группе. Это агрегатная функция, которая должна использоваться с groupBy()
.
Параметры
col
: Column - столбец для подсчета элементов
Возвращаемое значение
Long - количество элементов в группе
Пример использования
from pyspark.sql.functions import count
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("count_example").getOrCreate()
# Создаем DataFrame
data = [
("A", 1),
("A", 2),
("A", 3),
("B", 4),
("B", 5),
("B", 6),
("B", None)
]
df = spark.createDataFrame(data, ["group", "value"])
# Используем count для подсчета элементов
result = df.groupBy("group").agg(
count("value").alias("count"),
count("*").alias("count_all")
).show()
# Результат:
# +-----+-----+---------+
# |group|count|count_all|
# +-----+-----+---------+
# |A |3 |3 |
# |B |3 |4 |
# +-----+-----+---------+
Примечания
count(col)
не учитывает NULL значенияcount(*)
илиcount(1)
учитывает все строки, включая NULL- Для подсчета уникальных значений используйте
countDistinct()
- Для подсчета истинных значений используйте
count_if()
- Для приблизительного подсчета уникальных значений используйте
approxCountDistinct()