Pyspark inneholder funksjon

Pyspark inneholder funksjon
Hvis vi ønsker å returnere verdiene fra DataFrame -kolonnen i Pyspark, brukes contactions () -metoden tilgjengelig i Pyspark til å returnere radene basert på verdiene som er spesifisert i den.

Det kan brukes med enten filterklausulen eller hvor leddet. Vi vil se dem en etter en med de forskjellige eksemplene.

Syntaks

DataFrame_Object.Filter (DataFrame_OBJ.kolonne.inneholder (verdi/streng))
DataFrame_Object.hvor (dataaframe_obj.kolonne.inneholder (verdi/streng))

Hvor,
DataFrame_Object er Pyspark DataFrame.

Parameter:
ContaCts () -funksjonen tar en parameter.

Det kan være en verdi eller streng som inneholder () -funksjonen vil sjekke om den spesifiserte verdien er til stede i DataFrame -kolonnen eller ikke.

Komme tilbake:
Basert på denne kolonneverdien returneres hele raden.

Først vil vi lage Pyspark DataFrame med 10 rader og 5 kolonner.

Importer pyspark
Fra Pyspark.SQL import *
Spark_app = SparkSession.bygger.AppName ('_').getorCreate ()
Studenter = [(4, 'Sravan', 23, 'PHP', 'Testing'),
(2, 'Sravan', 23, 'Oracle', 'Testing'),
(46, 'Mounika', 22, '.Nett ',' 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, '.Nett ',' testing ')
]
DataFrame_OBJ = Spark_App.CreateTataFrame (Studenter, ['Subject_id', 'Name', 'Age', 'Technology1', 'Technology2'])
DataFrame_obj.forestilling()

Produksjon:

La oss nå bruke funksjonen inneholder () på Pyspark DataFrame for å returnere resultatene.

Eksempel 1
Vi vil gi strengen 'Sravan' i Navn -kolonnen inne i Contelse () -metoden og returnere alle rader som samsvarer med denne strengen.

#Check for String- Sravan i Navnkolonnen og returnerer rader med navn - Sravan.
print ("-------- Bruke hvor () klausul --------")
DataFrame_obj.hvor (dataaframe_obj.Navn.inneholder ('Sravan')).forestilling()
#Check for String- Sravan i navnekolonnen og returnerer rader med navn - Sravan.
print ("-------- Bruke filter () leddet --------")
DataFrame_obj.Filter (DataFrame_OBJ.Navn.inneholder ('Sravan')).forestilling()

Produksjon:

Forklaring
Du kan se at Sravan finnes tre ganger, og rader ble returnert.

Eksempel 2
Vi vil gi strengen 'PHP' i Technology1 -kolonnen i Contitte () -metoden og returnere alle rader som samsvarer med denne strengen.

#Check for String- PHP i Technology1 -kolonnen og returnerte rader med teknologi1 - PHP.
print ("-------- Bruke hvor () klausul --------")
DataFrame_obj.hvor (dataaframe_obj.Teknologi1.inneholder ('PHP')).forestilling()
#Check for String- PHP i Technology1 -kolonnen og returnerte rader med teknologi1 - PHP.
Print ("-------- Bruke filter () leddet --------")
DataFrame_obj.Filter (DataFrame_OBJ.Teknologi1.inneholder ('PHP')).forestilling()

Produksjon:

Forklaring
Du kan se at PHP finnes to ganger i Technology1 -kolonnen og radene ble returnert.

Eksempel 3
Vi vil gi verdien 46 i emnet_id -kolonnen innenfor inneholder () -metoden og returnere alle rader som samsvarer med denne verdien.

#Check for Value - 46 i Subject_id -kolonnen og returnerer rader med emne_id - 46.
print ("-------- Bruke hvor () klausul --------")
DataFrame_obj.hvor (dataaframe_obj.emne_id.inneholder (46)).forestilling()
#Check for Value - 46 i Subject_id -kolonnen og returnerer rader med emne_id - 46.
print ("-------- Bruke filter () leddet --------")
DataFrame_obj.Filter (DataFrame_OBJ.emne_id.inneholder (46)).forestilling()

Produksjon:

Forklaring
Du kan se at 46 finnes tre ganger i emnet_id -kolonnen og radene ble returnert.

Eksempel 4
Vi vil gi verdien 1000 i emnet_id -kolonnen innenfor inneholder () -metoden og returnere alle rader som samsvarer med denne verdien.

#check for verdi - 1000 i subjekt_id kolonne og returnerer rader med emne_id - 1000.
print ("-------- Bruke hvor () klausul --------")
DataFrame_obj.hvor (dataaframe_obj.emne_id.inneholder (1000)).forestilling()
#check for verdi - 1000 i subjekt_id kolonne og returnerer rader med emne_id - 1000.
print ("-------- Bruke filter () leddet --------")
DataFrame_obj.Filter (DataFrame_OBJ.emne_id.inneholder (1000)).forestilling()

Produksjon:

Forklaring
Du kan se at 1000 ikke finnes i emn_id -kolonnen. Så ingen rader ble returnert.

Konklusjon

Denne pyspark -opplæringen diskuterte at det er mulig å filtrere radene som er til stede i DataFrame ved å bruke contacts () -metoden. Vi så fire forskjellige eksempler for å forstå dette konseptet bedre. Det er mulig å bruke denne metoden ved hjelp av hvor () og filter () -funksjonene.