Funciones de Pyspark Like and Ilike

Funciones de Pyspark Like and Ilike
Si queremos devolver los valores de la columna DataFrame en función de la coincidencia de cadenas en Pyspark, entonces los métodos me gusta () e ilike () disponibles en Pyspark se utilizan para devolver las filas en función de los valores especificados dentro de él.

Se pueden usar con la cláusula de filtro o donde la cláusula. Los veremos uno por uno con diferentes ejemplos.

Función como ()

La función Me gusta () en Pyspark se usa para verificar si existe una cadena o un patrón en una columna de Pyspark DataFrame. Si existe, las filas emparejadas serán devueltas. De lo contrario, se devuelve un marco de datos vacío. Es sensible a la caja.

Sintaxis

dataFrame_Object.Filtro (DataFrame_obj.columna.como (patrón/cadena)))
dataFrame_Object.donde (dataframe_obj.columna.como (patrón/cadena)))

Dónde,
dataFrame_Object es el Pyspark DataFrame.

Parámetro:
El como() la función tiene un parámetro.

Puede ser un patrón o una cadena de tal manera que la función me gusta () verificará si el valor especificado está presente en la columna DataFrame o no.

Devolver:
Basado en esta columna, se devuelve toda la fila.

Primero, crearemos el marco de datos de Pyspark con 10 filas y 5 columnas.

importar pyspark
de Pyspark.Importación SQL *
Spark_app = Sparksession.constructor.nombre de la aplicación('_').getorcreate ()
Estudiantes = [(4, 'Sravan', 23, 'Php', 'Pruebas'),
(2, 'Sravan', 23, 'Oracle', 'Prueba'),
(46, 'Mounika', 22, '.Net ',' html '),
(12, 'Deepika', 21, 'Oracle', 'html'),
(46, 'Mounika', 22, 'Oracle', 'Prueba'),
(12, 'Chandrika', 23, 'Hadoop', 'C#'),
(12, 'Chandrika', 22, 'Oracle', 'Prueba'),
(45, 'Sravan', 23, 'Oracle', 'C#'),
(4, 'Deepika', 21, 'Php', 'C#'),
(46, 'Mounika', 22, '.Net ',' prueba ')
]
dataFrame_OBJ = Spark_App.creatataFrame (estudiantes, ['temas_id', 'nombre', 'edad', 'tecnología1', 'tecnología2'])
dataframe_obj.espectáculo()

Producción:

Ahora, apliquemos la función me gusta () en el PySpark DataFrame para devolver los resultados.

Ejemplo 1
Proporcionaremos la cadena, 'sravan', en la columna de nombre dentro del método me gusta () y devolveremos todas las filas que coinciden con esta cadena.

#Check para string- sravan en la columna de nombre y returación filas con el nombre - sravan.
imprimir ("-------- usando where () cláusula --------")
dataframe_obj.donde (dataframe_obj.nombre.como ('sravan')).espectáculo()
#Check para string- sravan en la columna de nombre y returación filas con el nombre - sravan.
imprime ("-------- usando la cláusula filtre () --------")
dataframe_obj.Filtro (DataFrame_obj.nombre.como ('sravan')).espectáculo()

Producción:

Puedes ver que Sravan se encuentra tres veces, y las filas fueron devueltas.

Ejemplo 2
Proporcionaremos la cadena, 'PHP', en la columna Technology1 dentro del método me gusta () y devolveremos todas las filas que coinciden con esta cadena.

#Check para String- PHP en la columna Technology1 y retorno filas con tecnología1 - PHP.
imprimir ("-------- usando where () cláusula --------")
dataframe_obj.donde (dataframe_obj.Tecnología1.como ('php')).espectáculo()
#Check para String- PHP en la columna Technology1 y retorno filas con tecnología1 - PHP.
imprime ("-------- usando la cláusula filtre () --------")
dataframe_obj.Filtro (DataFrame_obj.Tecnología1.como ('php')).espectáculo()

Producción:

Puede ver que PHP no se encuentra en la columna Technology1. Por lo tanto, 0 filas fueron devueltas.

función ilike ()

La función ilike () en Pyspark se usa para verificar si existe una cadena o un patrón en una columna de Pyspark DataFrame. Si existe, las filas emparejadas serán devueltas. De lo contrario, se devuelve el marco de datos vacío. Es insensible.

Sintaxis

dataFrame_Object.Filtro (DataFrame_obj.columna.ilike (patrón/cadena))
dataFrame_Object.donde (dataframe_obj.columna.ilike (patrón/cadena))

Dónde,
dataFrame_Object es el Pyspark DataFrame.

Parámetro:
La función ilike () tiene un parámetro.

Puede ser un patrón o una cadena de tal manera que la función ilike () verifique si el valor especificado está presente en la columna DataFrame o no.

Devolver:
Basado en esta columna, se devuelve toda la fila.

Ejemplo 1
Proporcionaremos la cadena, 'sravan', en la columna de nombre dentro del método ilike () y devolveremos todas las filas que coinciden con esta cadena.

#Check para string- sravan en la columna de nombre y returación filas con el nombre - sravan.
imprimir ("-------- usando where () cláusula --------")
dataframe_obj.donde (dataframe_obj.nombre.ilike ('sravan')).espectáculo()
#Check para string- sravan en la columna de nombre y returación filas con el nombre - sravan.
imprime ("-------- usando la cláusula filtre () --------")
dataframe_obj.Filtro (DataFrame_obj.nombre.ilike ('sravan')).espectáculo()

Producción:

Explicación
Puedes ver que Sravan se encuentra tres veces y las filas fueron devueltas.

Ejemplo 2
Proporcionaremos la cadena, 'PHP', en la columna Technology1 dentro del método me gusta () y devolveremos todas las filas que coinciden con esta cadena.

#Check para String- Php en la columna Technology1 y retorno filas con tecnología1 - PHP.
imprimir ("-------- usando where () cláusula --------")
dataframe_obj.donde (dataframe_obj.Tecnología1.ilike ('php')).espectáculo()
#Check para String- Php en la columna Technology1 y retorno filas con tecnología1 - PHP.
imprime ("-------- usando la cláusula filtre () --------")
dataframe_obj.Filtro (DataFrame_obj.Tecnología1.ilike ('php')).espectáculo()

Producción:

Explicación
Puede ver que PHP no se encuentra en la columna Technology1. Pero ilike () es insensible a los casos. Entonces, se necesitan PHP y PHP como lo mismo. Entonces, las filas fueron devueltas.

Conclusión

En este tutorial de Pyspark, vimos dos funciones que devuelven valores basados ​​en la coincidencia de cadenas en la columna Pyspark DataFrame. Las funciones Me gusta () e ilike () se utilizan para verificar si existe una cadena o un patrón en una columna de Pyspark DataFrame. La diferencia es como () es sensible a los casos y ilike () es insensible a los casos.