Pular para o conteúdo principal

contagem_se

Retorna o número de valores VERDADEIROS para a coluna.

Sintaxe

Python
from pyspark.sql import functions as sf

sf.count_if(col)

Parâmetros

Parâmetro

Tipo

Descrição

col

pyspark.sql.Column ou nome da coluna

coluna de destino para trabalhar.

Parâmetro

Tipo

Descrição

col

pyspark.sql.Column ou nome da coluna

coluna de destino para trabalhar.

Devoluções

pyspark.sql.Column: o número de valores TRUE para o col.

Exemplos

Exemplo 1 : Contando o número de números pares em uma coluna numérica

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([("a", 1), ("a", 2), ("a", 3), ("b", 8), ("b", 2)], ["c1", "c2"])
df.select(sf.count_if(sf.col('c2') % 2 == 0)).show()
Output
+------------------------+
|count_if(((c2 % 2) = 0))|
+------------------------+
| 3|
+------------------------+

Exemplo 2 : Contando o número de linhas onde uma coluna de strings começa com uma determinada letra.

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame(
[("apple",), ("banana",), ("cherry",), ("apple",), ("banana",)], ["fruit"])
df.select(sf.count_if(sf.col('fruit').startswith('a'))).show()
Output
+------------------------------+
|count_if(startswith(fruit, a))|
+------------------------------+
| 2|
+------------------------------+

Exemplo 3 : Contando o número de linhas em que uma coluna numérica é maior que um determinado valor.

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,), (2,), (3,), (4,), (5,)], ["num"])
df.select(sf.count_if(sf.col('num') > 3)).show()
Output
+-------------------+
|count_if((num > 3))|
+-------------------+
| 2|
+-------------------+

Exemplo 4 : Contando o número de linhas onde uma coluna booleana é verdadeira.

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(True,), (False,), (True,), (False,), (True,)], ["b"])
df.select(sf.count('b'), sf.count_if('b')).show()
Output
+--------+-----------+
|count(b)|count_if(b)|
+--------+-----------+
| 5| 3|
+--------+-----------+