Filtrar una fila en PySpark DataFrame según los valores coincidentes de una lista

En este artículo, vamos a filtrar las filas en el marco de datos según los valores coincidentes en la lista usando isin en el marco de datos de Pyspark.

isin(): esto se usa para encontrar los elementos contenidos en un marco de datos dado, tomará los elementos y hará que los elementos coincidan con los datos

Sintaxis: isin([elemento1,elemento2,.,elemento n])

Crear marco de datos para demostración:

Python3

# importing module
import pyspark
  
# importing sparksession
from pyspark.sql import SparkSession
  
# creating sparksession
# and giving an app name
spark = SparkSession.builder.appName('sparkdf').getOrCreate()
  
# list  of students  data  with null values
# we can define null values with none
data = [[1, "sravan", "vignan"],
        [2, "ramya", "vvit"],
        [3, "rohith", "klu"],
        [4, "sridevi", "vignan"],
        [5, "gnanesh", "iit"]]
  
# specify column names
columns = ['ID', 'NAME', 'college']
  
# creating a dataframe from the lists of data
dataframe = spark.createDataFrame(data, columns)
  
dataframe.show()

Producción:

Método 1: Usar el método filter()

Se usa para verificar la condición y dar los resultados, ambos son similares

Sintaxis: dataframe.filter(condición)

Donde condition es la condición del marco de datos.

Aquí usaremos todos los métodos discutidos.

Sintaxis: dataframe.filter((dataframe.column_name).isin([list_of_elements])).show()

dónde,

  • column_name es la columna
  • elementos son los valores que están presentes en la columna
  • show() se usa para mostrar el marco de datos resultante

Ejemplo 1: Obtenga los ID particulares con la cláusula filter().

Python3

# get the ID : 1,2,3 from dataframe
dataframe.filter((dataframe.ID).isin([1,2,3])).show()

Producción:

Ejemplo 2: Obtener ID no presentes en 1 y 3

Python3

# get the ID : not in 1 and 3 from dataframe
dataframe.filter(~(dataframe.ID).isin([1, 3])).show()

Producción:

Ejemplo 3: obtener nombres del marco de datos.

Python3

# get name as sravan
dataframe.filter((
  dataframe.NAME).isin(['sravan'])).show()

Producción:

Método 2: Usar el método where()

where() se usa para verificar la condición y dar los resultados

Sintaxis: dataframe.where(condición)

donde, condición es la condición del marco de datos

Sintaxis general con cláusula where:

dataframe.where((dataframe.column_name).isin([elementos])).show()

dónde,

  • column_name es la columna
  • elementos son los valores que están presentes en la columna
  • show() se usa para mostrar el marco de datos resultante

Ejemplo: Obtenga las universidades particulares con la cláusula where()

Python3

# get college as vignan
dataframe.where((
  dataframe.college).isin(['vignan'])).show()

Producción:

Publicación traducida automáticamente

Artículo escrito por sravankumar8128 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *