Pyspark contient une fonction

Pyspark contient une fonction
Si nous voulons renvoyer les valeurs de la colonne DataFrame dans Pyspark, alors la méthode contient () disponible dans Pyspark est utilisée pour renvoyer les lignes en fonction des valeurs spécifiées à l'intérieur.

Il peut être utilisé avec la clause de filtre ou la clause où. Nous les verrons un par un avec les différents exemples.

Syntaxe

dataframe_object.filtre (dataframe_obj.colonne.contient (valeur / chaîne))
dataframe_object.où (dataframe_obj.colonne.contient (valeur / chaîne))

Où,
dataframe_object est le pyspark dataframe.

Paramètre:
La fonction contient () prend un paramètre.

Il peut s'agir d'une valeur ou d'une chaîne que la fonction contient () 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 contient () 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 contenu () et renvoie toutes les lignes correspondant à cette chaîne.

#Check pour String- sravan dans la colonne du nom et retourne les lignes avec nom - sravan.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.nom.contient ('sravan'))).montrer()
#Check pour String- sravan dans la colonne du nom et retour des lignes avec nom - sravan.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.nom.contient ('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 CONTAINS () 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.contient ('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.contient ('php')).montrer()

Sortir:

Explication
Vous pouvez voir que PHP est trouvé deux fois dans la colonne Technology1 et que les lignes ont été retournées.

Exemple 3
Nous fournirons la valeur 46 dans la colonne Subject_ID à l'intérieur de la méthode CONTAINS () et renvoyer toutes les lignes correspondant à cette valeur.

#Check pour la valeur - 46 dans la colonne Subject_id et retourne les lignes avec sujette_id - 46.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.Subject_id.contient (46)).montrer()
#Check pour la valeur - 46 dans la colonne Subject_id et retourne les lignes avec sujette_id - 46.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.Subject_id.contient (46)).montrer()

Sortir:

Explication
Vous pouvez voir que 46 se trouve trois fois dans la colonne Subject_id et que les lignes ont été retournées.

Exemple 4
Nous fournirons la valeur 1000 dans la colonne Subject_ID à l'intérieur de la méthode CONTAINS () et renvoyer toutes les lignes correspondant à cette valeur.

#Check pour la valeur - 1000 dans la colonne Subject_id et retourne les lignes avec sujette_id - 1000.
Imprimer ("-------- en utilisant la clause où () --------")
dataframe_obj.où (dataframe_obj.Subject_id.contient (1000)).montrer()
#Check pour la valeur - 1000 dans la colonne Subject_id et retourne les lignes avec sujette_id - 1000.
Imprimer ("-------- Utilisation de la clause filtre () --------")
dataframe_obj.filtre (dataframe_obj.Subject_id.contient (1000)).montrer()

Sortir:

Explication
Vous pouvez voir que 1000 ne se trouve pas dans la colonne Subject_ID. Donc, aucune rangée n'a été retournée.

Conclusion

Ce didacticiel Pyspark a discuté qu'il est possible de filtrer les lignes présentes dans le dataframe à l'aide de la méthode CONTAINS (). Nous avons vu quatre exemples différents pour mieux comprendre ce concept. Il est possible d'utiliser cette méthode en utilisant les fonctions where () et filter ().