通过


计数

返回组中的项数。

Syntax

from pyspark.sql import functions as sf

sf.count(col)

参数

参数 类型 Description
col pyspark.sql.Column 或列名 要计算的目标列。

退货

pyspark.sql.Column:计算结果的列。

例子

示例 1:对数据帧中的所有行进行计数

from pyspark.sql import functions as sf
df = spark.createDataFrame([(None,), ("a",), ("b",), ("c",)], schema=["alphabets"])
df.select(sf.count(sf.expr("*"))).show()
+--------+
|count(1)|
+--------+
|       4|
+--------+

示例 2:对特定列中的非 null 值进行计数

from pyspark.sql import functions as sf
df.select(sf.count(df.alphabets)).show()
+----------------+
|count(alphabets)|
+----------------+
|               3|
+----------------+

示例 3:对包含多个列的数据帧中的所有行进行计数

from pyspark.sql import functions as sf
df = spark.createDataFrame(
    [(1, "apple"), (2, "banana"), (3, None)], schema=["id", "fruit"])
df.select(sf.count(sf.expr("*"))).show()
+--------+
|count(1)|
+--------+
|       3|
+--------+

示例 4:对多列中的非 null 值进行计数

from pyspark.sql import functions as sf
df.select(sf.count(df.id), sf.count(df.fruit)).show()
+---------+------------+
|count(id)|count(fruit)|
+---------+------------+
|        3|           2|
+---------+------------+