Fonctions pyspark et ilike

Fonctions pyspark et ilike
Si nous voulons renvoyer les valeurs de la colonne DataFrame basée sur la correspondance de chaîne dans Pyspark, alors les méthodes similaires () et ilike () disponibles dans Pyspark sont utilisées pour renvoyer les lignes en fonction des valeurs spécifiées à l'intérieur.

Ils peuvent être utilisés avec la clause de filtre ou la clause. Nous les verrons un par un avec différents exemples.

Fonction comme ()

La fonction similaire () dans Pyspark est utilisée pour vérifier si une chaîne ou un modèle existe dans une colonne de Pyspark DataFrame. S'il existe, les lignes appariées seront retournées. Sinon, une dataframe vide est renvoyée. C'est sensible à la casse.

Syntaxe

dataframe_object.filtre (dataframe_obj.colonne.comme (motif / chaîne))
dataframe_object.où (dataframe_obj.colonne.comme (motif / chaîne))

Où,
dataframe_object est le pyspark dataframe.

Paramètre:
Le comme() La fonction a un paramètre.

Il peut s'agir d'un modèle ou d'une chaîne telle que la fonction similaire () vérifiera si la valeur spécifiée est présente dans la colonne DataFrame ou non.

Retour:
En fonction de cette valeur de colonne, la ligne entière est renvoyée.

Tout d'abord, nous créerons le Pyspark DataFrame avec 10 lignes et 5 colonnes.

Importer Pyspark
de Pyspark.Importation SQL *
Spark_App = Sparkcession.constructeur.nom de l'application('_').getorCreate ()
étudiants = [(4, «sravan», 23, «php», «test»),
(2, «Sravan», 23, «Oracle», «Testing»),
(46, «Mounika», 22, '.Net ',' html '),
(12, «Deepika», 21, «Oracle», «html»),
(46, «Mounika», 22, «Oracle», «Testing»),
(12, «Chandrika», 23, «Hadoop», «C #»),
(12, «Chandrika», 22, «Oracle», «Testing»),
(45, «Sravan», 23, «Oracle», «C #»),
(4, «Deepika», 21, «Php», «C #»),
(46, «Mounika», 22, '.Net ',' test ')
]]
dataframe_obj = spark_app.CreatedataFrame (étudiants, [«sujet_id», «nom», «âge», «technologie1», «technologie2»])
dataframe_obj.montrer()

Sortir:

Maintenant, appliquons la fonction similaire () sur le pyspark dataframe pour renvoyer les résultats.

Exemple 1
Nous fournirons la chaîne, «sravan», dans la colonne de nom à l'intérieur de la méthode like () et renvoie toutes les lignes correspondant à cette chaîne.

#Check pour String- sravan dans la colonne du nom et retourne les lignes avec le nom - Sravan.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.nom.comme ('sravan')).montrer()
#Check pour String- sravan dans la colonne du nom et retourne les lignes avec le nom - Sravan.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.nom.comme ('sravan')).montrer()

Sortir:

Vous pouvez voir que Sravan est trouvé trois fois et que des rangées ont été retournées.

Exemple 2
Nous fournirons la chaîne, «Php», dans la colonne Technology1 à l'intérieur de la méthode Like () et renvoyer toutes les lignes correspondant à cette chaîne.

#Check pour la chaîne- php dans la colonne Technology1 et retourne les lignes avec Technology1 - PHP.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.Technologie1.comme ('php')).montrer()
#Check pour la chaîne- php dans la colonne Technology1 et retourne les lignes avec Technology1 - PHP.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.Technologie1.comme ('php')).montrer()

Sortir:

Vous pouvez voir que PHP ne se trouve pas dans la colonne Technology1. Par conséquent, 0 rangée a été retournée.

fonction ilike ()

La fonction ilike () dans Pyspark est utilisée pour vérifier si une chaîne ou un modèle existe dans une colonne de Pyspark DataFrame. S'il existe, les lignes appariées seront retournées. Sinon, le framage de données vide est renvoyé. C'est insensible à la cas.

Syntaxe

dataframe_object.filtre (dataframe_obj.colonne.ilike (motif / chaîne))
dataframe_object.où (dataframe_obj.colonne.ilike (motif / chaîne))

Où,
dataframe_object est le pyspark dataframe.

Paramètre:
La fonction ilike () a un paramètre.

Il peut s'agir d'un modèle ou d'une chaîne telle que la fonction ilike () vérifiera si la valeur spécifiée est présente dans la colonne DataFrame ou non.

Retour:
En fonction de cette valeur de colonne, la ligne entière est renvoyée.

Exemple 1
Nous fournirons la chaîne, «sravan», dans la colonne de nom à l'intérieur de la méthode ilike () et renvoie toutes les lignes correspondant à cette chaîne.

#Check pour String- sravan dans la colonne du nom et retourne les lignes avec le nom - Sravan.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.nom.ilike ('sravan')).montrer()
#Check pour String- sravan dans la colonne du nom et retourne les lignes avec le nom - Sravan.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.nom.ilike ('sravan')).montrer()

Sortir:

Explication
Vous pouvez voir que Sravan est trouvé trois fois et que des rangées ont été retournées.

Exemple 2
Nous fournirons la chaîne, «Php», dans la colonne Technology1 à l'intérieur de la méthode Like () et renvoyer toutes les lignes correspondant à cette chaîne.

#Check pour String- Php dans la colonne Technology1 et retourne les lignes avec Technology1 - PHP.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.Technologie1.ilike ('php')).montrer()
#Check pour String- Php dans la colonne Technology1 et retourne les lignes avec Technology1 - PHP.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.Technologie1.ilike ('php')).montrer()

Sortir:

Explication
Vous pouvez voir que PHP ne se trouve pas dans la colonne Technology1. Mais ilike () est insensible à la casse. Donc, cela prend PHP et PHP comme le même. Ainsi, les rangées ont été retournées.

Conclusion

Dans ce didacticiel Pyspark, nous avons vu deux fonctions qui renvoient des valeurs basées sur la chaîne correspondant à la colonne Pyspark DataFrame. Les fonctions similaires () et ilike () sont utilisées pour vérifier si une chaîne ou un modèle existe dans une colonne de Pyspark DataFrame. La différence est comme () est sensible à la casse et ilike () est insensible à la casse.