PySpark SQL 函數的 countDistinct(~)
方法返回指定列的不同行數。
參數
1.col
| string
或 Column
計算不同行時要考慮的列。
2. *col
| string
或 Column
| optional
計算不同行時要考慮的附加列。
返回值
PySpark 列 (pyspark.sql.column.Column
)。
例子
考慮以下PySpark DataFrame:
df = spark.createDataFrame([["Alex", 25], ["Bob", 30], ["Alex", 25], ["Alex", 50]], ["name", "age"])
df.show()
+----+---+
|name|age|
+----+---+
|Alex| 25|
| Bob| 30|
|Alex| 25|
|Alex| 50|
+----+---+
計算單個 PySpark 列中不同值的數量
要計算列 name
中不同行的數量:
import pyspark.sql.functions as F
df.select(F.countDistinct("name")).show()
+--------------------+
|count(DISTINCT name)|
+--------------------+
| 2|
+--------------------+
請注意,您可以傳入 Column
對象,而不是傳入列標簽 ( "name"
),如下所示:
# df.select(F.countDistinct(df.name)).show()
df.select(F.countDistinct(F.col("name"))).show()
+--------------------+
|count(DISTINCT name)|
+--------------------+
| 2|
+--------------------+
計算多個 PySpark 列中不同值的數量
在計算重複行時要考慮列 name
和 age
:
df.select(F.countDistinct("name", "age")).show()
+-------------------------+
|count(DISTINCT name, age)|
+-------------------------+
| 3|
+-------------------------+
計算 PySpark DataFrame 中不同行的數量
要在計算重複行時考慮所有列,請傳入 "*"
:
df.select(F.countDistinct("*")).show()
+-------------------------+
|count(DISTINCT name, age)|
+-------------------------+
| 3|
+-------------------------+
相關用法
- Python PySpark SQL Functions count_distinct方法用法及代碼示例
- Python PySpark SQL Functions count方法用法及代碼示例
- Python PySpark SQL Functions concat方法用法及代碼示例
- Python PySpark SQL Functions concat_ws方法用法及代碼示例
- Python PySpark SQL Functions col方法用法及代碼示例
- Python PySpark SQL Functions collect_list方法用法及代碼示例
- Python PySpark SQL Functions collect_set方法用法及代碼示例
- Python PySpark SQL Functions split方法用法及代碼示例
- Python PySpark SQL Functions repeat方法用法及代碼示例
- Python PySpark SQL Functions explode方法用法及代碼示例
- Python PySpark SQL Functions instr方法用法及代碼示例
- Python PySpark SQL Functions dayofmonth方法用法及代碼示例
- Python PySpark SQL Functions date_add方法用法及代碼示例
- Python PySpark SQL Functions array方法用法及代碼示例
- Python PySpark SQL Functions translate方法用法及代碼示例
- Python PySpark SQL Functions dayofweek方法用法及代碼示例
- Python PySpark SQL Functions expr方法用法及代碼示例
- Python PySpark SQL Functions regexp_extract方法用法及代碼示例
- Python PySpark SQL Functions regexp_replace方法用法及代碼示例
- Python PySpark SQL Functions round方法用法及代碼示例
- Python PySpark SQL Functions date_format方法用法及代碼示例
- Python PySpark SQL Functions lit方法用法及代碼示例
- Python PySpark SQL Functions upper方法用法及代碼示例
- Python PySpark SQL Functions length方法用法及代碼示例
- Python PySpark SQL Functions dayofyear方法用法及代碼示例
注:本文由純淨天空篩選整理自Isshin Inada大神的英文原創作品 PySpark SQL Functions | countDistinct method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。