W Pythonie PySpark jest modułem iskry używanym do zapewnienia podobnego rodzaju przetwarzania, takiego jak Spark.
RDD oznacza odporne rozproszone zestawy danych. Możemy nazwać RDD podstawową strukturą danych w Apache Spark.
Składnia:
1 | Spark_App.SparkContext.równoległość (dane) |
Możemy wyświetlać dane w formacie tabelarycznym. Zastosowana struktura danych to DataFrame.Format tabelaryczny oznacza, że przechowuje dane w rzędach i kolumnach.
Składnia:
W PYSPARK możemy utworzyć ramkę danych z aplikacji Spark z metodą CreatedATAframe ().
Składnia:
1 | Spark_App.CreatedATAframe (input_data, kolumny) |
Gdzie input_data może być słownikiem lub listą do utworzenia ramki danych z tych danych, a jeśli input_data jest listą słowników, kolumny nie są potrzebne. Jeśli jest to zagnieżdżona lista, musimy podać nazwy kolumn.
Omówmy teraz, jak sprawdzić podane dane w Pyspark RDD lub DataFrame.
Tworzenie Pyspark RDD:
W tym przykładzie utworzymy RDD o nazwie Studenci i wyświetlacz za pomocą akcji zbiorów ().
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
# Importuj RDD z Pyspark.RDD
od Pyspark.RDD Import RDD
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = Spark_App.SparkContext.równoległość ([
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „hyd”])
#Display RDD za pomocą collect ()
Drukuj (uczniowie.zbierać())
Wyjście:
[„Rollno”: „001”, „nazwa”: „sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „Hyd”]
Tworzenie Pyspark DataFrame:
W tym przykładzie utworzymy ramkę danych o nazwie DF z danych uczniów i wyświetlimy ją za pomocą metody show ().
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#Wportu na funkcję col
od Pyspark.SQL.Funkcje importuj col
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = [
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „Hyd”]
# Utwórz ramkę danych
df = Spark_App.CreatedataFrame (studenci)
#Display the DataFrame
df.pokazywać()
Wyjście:
Metoda 1: isinstance ()
W Python metoda isinstance () służy do porównania podanego obiektu (danych) z typem (RDD/DataFrame)
Składnia:
1 | isInstance (obiekt, rdd/dataframe) |
Wymaga dwóch parametrów:
Parametry:
Zwróci wartości logiczne (true/false).
Załóżmy, że dane są RDD, a typ RDD, wówczas zwróci prawdziwie, w przeciwnym razie zwróci false.
Podobnie, jeśli dane są DataFrame, a Type to także DataFrame, wówczas zwróci true, w przeciwnym razie zwróci false.
Przykład 1:
Sprawdź obiekt RDD
W tym przykładzie zastosujemy isinstance () dla obiektu RDD.
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession i DataFrame do tworzenia sesji
od Pyspark.SQL Import Sparksession, DataFrame
# Importuj RDD z Pyspark.RDD
od Pyspark.RDD Import RDD
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = Spark_App.SparkContext.równoległość ([
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „hyd”])
#Sprawdź, czy obiekt uczniów jest RDD
Print (IsInstance (studenci, RDD))
#Sprawdź, czy obiekt uczniów jest DataFrame
print (isInstance (studenci, dataframe))
Wyjście:
1 2 3 | PRAWDA |
Po pierwsze, porównaliśmy studentów z RDD; Zwrócił prawdziwe, ponieważ jest to RDD; A potem porównaliśmy uczniów z DataFrame, zwrócił false, ponieważ jest to RDD (nie jest toframe).
Przykład 2:
Sprawdź obiekt DataFrame
W tym przykładzie zastosujemy isinstance () dla obiektu DataFrame.
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession, DataFrame do tworzenia sesji
od Pyspark.SQL Import Sparksession, DataFrame
#Wportu na funkcję col
od Pyspark.SQL.Funkcje importuj col
# Importuj RDD z Pyspark.RDD
od Pyspark.RDD Import RDD
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = [
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „Hyd”]
# Utwórz ramkę danych
df = Spark_App.CreatedataFrame (studenci)
#Sprawdź, czy DF jest RDD
print (isinstance (DF, RDD))
#Sprawdź, czy DF jest DataFrame
print (isInstance (DF, DataFrame))
Wyjście:
1 2 3 | FAŁSZ |
Najpierw porównaliśmy DF z RDD; Zwrócił false, ponieważ jest to ramka danych, a następnie porównaliśmy DF z DataFrame; Zwrócił prawdziwe, ponieważ jest to ramka danych (nie RDD).
Metoda 2: typ ()
W Python metoda type () zwraca klasę określonego obiektu. Zajmuje obiekt jako parametr.
Składnia:
1 | Typ (obiekt) |
Przykład 1:
Sprawdź obiekt RDD.
Zastosujemy typ () do obiektu RDD.
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
# Importuj RDD z Pyspark.RDD
od Pyspark.RDD Import RDD
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = Spark_App.SparkContext.równoległość ([
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „hyd”])
#Sprawdź typ uczniów
Drukuj (typ (studenci))
Wyjście:
1 |
Widzimy, że klasa RDD jest zwracana.
Przykład 2:
Sprawdź obiekt DataFrame.
Zastosujemy typ () na obiekcie DataFrame.
#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#Wportu na funkcję col
od Pyspark.SQL.Funkcje importuj col
#Utworz aplikację o nazwie Linuxhint
Spark_App = Sparksession.budowniczy.AppName („Linuxhint”).getorCreate ()
# Utwórz dane ucznia z 5 wierszy i 6 atrybutów
studenci = [
„Rollno”: „001”, „nazwa”: „Sravan”, „wiek”: 23, „wysokość”: 5.79, „waga”: 67, „Adres”: „Guntur”,
„Rollno”: „002”, „nazwa”: „Ojaswi”, „wiek”: 16, „wysokość”: 3.79, „waga”: 34, „Adres”: „Hyd”,
„Rollno”: „003”, „nazwa”: „Gnanesh Chowdary”, „wiek”: 7, „wysokość”: 2.79, „waga”: 17, „Adres”: „Patna”,
„Rollno”: „004”, „Nazwa”: „Rohith”, „wiek”: 9, „wysokość”: 3.69, „waga”: 28, „Adres”: „hyd”,
„Rollno”: „005”, „nazwa”: „Sridevi”, „wiek”: 37, „wysokość”: 5.59, „waga”: 54, „Adres”: „Hyd”]
# Utwórz ramkę danych
df = Spark_App.CreatedataFrame (studenci)
#Sprawdź typ DF
print (typ (df))
Wyjście:
1 |
Widzimy, że klasa DataFrame jest zwracana.
Wniosek
W powyższym artykule widzieliśmy dwa sposoby sprawdzenia, czy podane dane lub obiekt to RDD lub DataFrame przy użyciu isinstance () i type (). Musisz zauważyć, że isinstance () wynika z wartości logicznych na podstawie danego obiektu - jeśli typ obiektu jest taki sam, to zwróci prawdziwie, w przeciwnym razie false. I typ () służy do zwrócenia klasy podanych danych lub obiektu.