Jeśli chcemy zwrócić wartości z kolumny DataFrame w PYSPARK, wówczas metoda zawierająca () dostępna w PYSPARK jest używana do zwrócenia wierszy na podstawie wartości określonych w nim.
Może być używany z klauzulą filtra lub w miejscu, w którym klauzula. Zobaczymy je jeden po drugim z różnymi przykładami.
Składnia
DataFrame_Object.filtr (DataFrame_Obj.kolumna.zawiera (wartość/ciąg))
DataFrame_Object.gdzie (dataFrame_Obj.kolumna.zawiera (wartość/ciąg))
Gdzie,
DataFrame_Object to Pyspark DataFrame.
Parametr:
Funkcja zawierająca () przyjmuje jeden parametr.
Może to być wartość lub ciąg, którą funkcja zawierają () sprawdzi, czy określona wartość jest obecna w kolumnie DataFrame, czy nie.
Powrót:
Na podstawie tej wartości kolumny cały wiersz jest zwracany.
Najpierw utworzymy Pyspark DataFrame z 10 wierszy i 5 kolumnami.
Import Pyspark
od Pyspark.SQL Import *
Spark_App = Sparksession.budowniczy.Nazwa aplikacji('_').getorCreate ()
studenci = [(4, „Sravan”, 23, „Php”, „Testowanie”),
(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 ', „testowanie”)
]
DataFrame_Obj = Spark_App.CreatedATAframe (studenci, [„Temat_id”, „nazwa”, „wiek”, „technologia1”, „technologia 2”])
DataFrame_Obj.pokazywać()
Wyjście:
Teraz zastosujmy funkcję Contenains () w Pyspark DataFrame, aby zwrócić wyniki.
Przykład 1
Przedstawiamy ciąg „Sravan” w kolumnie nazwy wewnątrz metody Contein () i zwrócimy wszystkie wiersze pasujące do tego ciągu.
#Sprawdź String- Sravan w kolumnie nazwy i zwróć wiersze z imieniem - Sravan.
Drukuj („-------- Korzystanie z klauzuli Where () --------”)
DataFrame_Obj.gdzie (dataFrame_Obj.nazwa.zawiera („sravan”)).pokazywać()
#Sprawdź String- Sravan In Name Column i zwróć wiersze z nazwą - Sravan.
print („-------- za pomocą klauzuli Filter () --------”)
DataFrame_Obj.filtr (DataFrame_Obj.nazwa.zawiera („sravan”)).pokazywać()
Wyjście:
Wyjaśnienie
Widać, że Sravan znajduje się trzy razy, a rzędy zostały zwrócone.
Przykład 2
Podamy ciąg „PHP” w kolumnie technologii1 w metodzie Contein () i zwrócimy wszystkie wiersze pasujące do tego ciągu.
#Sprawdź string -php w kolumnie technologii1 i powrót rzędów z technologią1 - php.
Drukuj („-------- Korzystanie z klauzuli Where () --------”)
DataFrame_Obj.gdzie (dataFrame_Obj.Technologia 1.zawiera („php”)).pokazywać()
#Sprawdź string -php w kolumnie technologii1 i powrót rzędów z technologią1 - php.
Print („-------- za pomocą klauzuli Filter () --------”)
DataFrame_Obj.filtr (DataFrame_Obj.Technologia 1.zawiera („php”)).pokazywać()
Wyjście:
Wyjaśnienie
Widać, że PHP znajduje się dwa razy w kolumnie technologii1, a rzędy zostały zwrócone.
Przykład 3
Zapewnimy wartość 46 w kolumnie UTATS_ID wewnątrz metody Contein () i zwrócimy wszystkie wiersze pasujące do tej wartości.
#Sprawdź wartość - 46 w kolumnie podmiotu i zwróć wiersze z podmiotem - 46.
Drukuj („-------- Korzystanie z klauzuli Where () --------”)
DataFrame_Obj.gdzie (dataFrame_Obj.temat_id.zawiera (46)).pokazywać()
#Sprawdź wartość - 46 w kolumnie podmiotu i zwróć wiersze z podmiotem - 46.
print („-------- za pomocą klauzuli Filter () --------”)
DataFrame_Obj.filtr (DataFrame_Obj.temat_id.zawiera (46)).pokazywać()
Wyjście:
Wyjaśnienie
Widać, że 46 znajduje się trzy razy w kolumnie podmiotu i wiersze zostały zwrócone.
Przykład 4
Zapewnimy wartość 1000 w kolumnie UTATS_ID wewnątrz metody Contein () i zwrócimy wszystkie wiersze pasujące do tej wartości.
#Sprawdź wartość - 1000 w kolumnie podmiotu i zwróć wiersze z podmiotem_dem - 1000.
Drukuj („-------- Korzystanie z klauzuli Where () --------”)
DataFrame_Obj.gdzie (dataFrame_Obj.temat_id.zawiera (1000)).pokazywać()
#Sprawdź wartość - 1000 w kolumnie podmiotu i zwróć wiersze z podmiotem_dem - 1000.
print („-------- za pomocą klauzuli Filter () --------”)
DataFrame_Obj.filtr (DataFrame_Obj.temat_id.zawiera (1000)).pokazywać()
Wyjście:
Wyjaśnienie
Widać, że 1000 nie znajduje się w kolumnie tematu_id. Więc nie zwrócono żadnych wierszy.
Wniosek
W tym samouczku Pyspark omówiono, że możliwe jest odfiltrowanie wierszy obecnych w ramce danych za pomocą metody Contenains (). Widzieliśmy cztery różne przykłady, aby lepiej zrozumieć tę koncepcję. Możliwe jest użycie tej metody przy użyciu funkcji WHO () i Filter ().