En este artículo, vamos a contar el valor de las columnas del marco de datos de Pyspark por condición.
Creando Dataframe para demostración:
Python3
# importing module import pyspark # importing sparksession from # pyspark.sql module from pyspark.sql import SparkSession # creating sparksession and giving an app name spark = SparkSession.builder.appName('sparkdf').getOrCreate() # list of employee data with 10 row values data = [["1", "sravan", "IT", 45000], ["2", "ojaswi", "IT", 30000], ["3", "bobby", "business", 45000], ["4", "rohith", "IT", 45000], ["5", "gnanesh", "business", 120000], ["6", "siva nagulu", "sales", 23000], ["7", "bhanu", "sales", 34000], ["8", "sireesha", "business", 456798], ["9", "ravi", "IT", 230000], ["10", "devi", "business", 100000], ] # specify column names columns = ['ID', 'NAME', 'sector', 'salary'] # creating a dataframe from the lists of data dataframe = spark.createDataFrame(data, columns) # display dataframe dataframe.show()
Producción:
Método 1: Usando select(), where(), count()
where(): where se usa para devolver el marco de datos en función de la condición dada seleccionando las filas en el marco de datos o extrayendo las filas o columnas particulares del marco de datos. Puede tomar una condición y devuelve el marco de datos.
Sintaxis: where(dataframe.column condition)
Dónde,
- Aquí el marco de datos es el marco de datos de entrada
- columna es el nombre de la columna donde tenemos que plantear una condición
count(): esta función se usa para devolver la cantidad de valores / filas en un marco de datos
Sintaxis: dataframe.count()
Ejemplo 1: Programa de Python para contar valores en la columna NOMBRE donde ID mayor que 5
Python3
# count values in NAME column # where ID greater than 5 dataframe.select('NAME').where(dataframe.ID>5).count()
Producción:
5
Ejemplo 2: programa de Python para contar valores en todas las columnas donde ID mayor que 3 y sector = TI
Python3
# count values in all column count # where ID greater than 3 and sector = IT dataframe.select().where((dataframe.ID>3) & (dataframe.sector=='IT')).count()
Producción:
2
Método 2: Usando filter(), count()
filter(): se utiliza para devolver el marco de datos en función de la condición dada al eliminar las filas en el marco de datos o al extraer las filas o columnas particulares del marco de datos. Puede tomar una condición y devuelve el marco de datos.
Sintaxis: filter(dataframe.column condition)
Dónde,
- Aquí el marco de datos es el marco de datos de entrada
- columna es el nombre de la columna donde tenemos que plantear una condición
Ejemplo 1: programa de Python para contar la columna ID donde ID = 4
Python3
# count ID column where ID =4 dataframe.select('ID').where(dataframe.ID == 4).count()
Producción:
1
Ejemplo 2: Programa de Python para contar la columna de ID donde ID > 4 y el sector es ventas o TI
Python3
# count ID column where ID > 4 # and sector is sales or IT dataframe.select('ID').where((dataframe.ID>4) & ((dataframe.sector=='sales')| (dataframe.sector=='IT'))).count()
Producción:
3
Publicación traducida automáticamente
Artículo escrito por gottumukkalabobby y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA