Pyspark lignende og ilike funksjoner

Pyspark lignende og ilike funksjoner
Hvis vi ønsker å returnere verdiene fra DataFrame -kolonnen basert på strengkampen i Pyspark, brukes lignende () og ilike () metoder som er tilgjengelige i Pyspark for å returnere radene basert på verdiene som er spesifisert i den.

De kan brukes med enten filterklausulen eller hvor leddet. Vi vil se dem en etter en med forskjellige eksempler.

som () funksjon

Lignende () -funksjonen i Pyspark brukes til å sjekke om en streng eller et mønster eksisterer i en kolonne med Pyspark DataFrame. Hvis det eksisterer, vil de matchede radene bli returnert. Ellers returneres en tom dataaframe. Det er saksfølsom.

Syntaks

DataFrame_Object.Filter (DataFrame_OBJ.kolonne.som (mønster/streng))
DataFrame_Object.hvor (dataaframe_obj.kolonne.som (mønster/streng))

Hvor,
DataFrame_Object er Pyspark DataFrame.

Parameter:
De som() Funksjonen har en parameter.

Det kan være et mønster eller en streng slik at lignende () -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 lignende () -funksjonen på Pyspark DataFrame for å returnere resultatene.

Eksempel 1
Vi vil gi strengen, 'Sravan', i navnekolonnen i lignende () -metoden og returnere alle rader som samsvarer med denne strengen.

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

Produksjon:

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

Eksempel 2
Vi vil gi strengen, 'php', i Technology1 -kolonnen i lignende () -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.som ('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.som ('php')).forestilling()

Produksjon:

Du kan se at PHP ikke finnes i Technology1 -kolonnen. Derfor ble 0 rader returnert.

ilike () -funksjon

Ilike () -funksjonen i Pyspark brukes til å sjekke om en streng eller et mønster eksisterer i en kolonne med Pyspark DataFrame. Hvis det eksisterer, vil de matchede radene bli returnert. Ellers returneres den tomme Dataframe. Det er case-ufølsom.

Syntaks

DataFrame_Object.Filter (DataFrame_OBJ.kolonne.ilike (mønster/streng))
DataFrame_Object.hvor (dataaframe_obj.kolonne.ilike (mønster/streng))

Hvor,
DataFrame_Object er Pyspark DataFrame.

Parameter:
Ilike () -funksjonen har en parameter.

Det kan være et mønster eller en streng slik at Ilike () -funksjonen vil sjekke om den spesifiserte verdien er til stede i DataFrame -kolonnen eller ikke.

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

Eksempel 1
Vi vil gi strengen, 'Sravan', i navnekolonnen inne i Ilike () -metoden og returnere alle rader som samsvarer med denne strengen.

#Check for String- Sravan i Navnkolonnen og returnerer rader med navnet - Sravan.
print ("-------- Bruke hvor () klausul --------")
DataFrame_obj.hvor (dataaframe_obj.Navn.ilike ('sravan')).forestilling()
#Check for String- Sravan i Navnkolonnen og returnerer rader med navnet - Sravan.
print ("-------- Bruke filter () leddet --------")
DataFrame_obj.Filter (DataFrame_OBJ.Navn.ilike ('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 lignende () -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.ilike ('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.ilike ('php')).forestilling()

Produksjon:

Forklaring
Du kan se at PHP ikke finnes i Technology1 -kolonnen. Men ilike () er case-ufølsom. Så det tar PHP og PHP som det samme. Så radene ble returnert.

Konklusjon

I denne pyspark -opplæringen så vi to funksjoner som returnerer verdier basert på strengkampen i Pyspark DataFrame -kolonnen. Lignende () og ilike () -funksjoner brukes til å sjekke om en streng eller et mønster eksisterer i en kolonne med Pyspark DataFrame. Forskjellen er som () er case-sensitiv og ilike () er case-ufølsom.