PYSPARK - Funkcja Variance_stddev

PYSPARK - Funkcja Variance_stddev
Po partycjonowaniu wierszy w Pyspark DataFrame, możliwe jest zwrócenie wariancji i odchylenia standardowego w każdej partycji. Korzystając z niektórych funkcji łącznych w oknie partycji, możliwe jest zwrócenie wariancji i odchylenia standardowego.

Najpierw zobaczymy, jak podzielić na Pyspark Rrame w Pyspark.

Przegroda

Możliwe jest podział wierszy w ramce danych za pomocą funkcji okna. Jest dostępny w Pyspark.SQL.okno moduł. Istnieją dwa kroki, aby podzielić wiersze w Pyspark DataFrame.

Kroki:

  1. Utwórz Pyspark DataFrame, który ma pewne podobne wartości w co najmniej jednej kolumnie.
  2. Partycjonować dane za pomocą metody paritionby () dostępnej w funkcji okna.

Składnia:

parition = okno.paritionby („kolumna”)

Możemy zamówić partycjonowane dane z partycjonowaną kolumną lub dowolną inną kolumną.

Utwórzmy ramkę danych.

Przykład:

Tutaj tworzymy Pyspark DataFrame, który ma 5 kolumn - [„tematy_id”, „name”, „wiek”, „technologia1”, „technologia2”] z 10 wierszy.

Import Pyspark
od Pyspark.SQL Import Sparksession
od Pyspark.SQL.Funkcje importu *
Spark_App = Sparksession.budowniczy.Nazwa aplikacji('_').getorCreate ()
studenci = [(4, „Sravan”, 23, „Php”, „Testowanie”),
(4, „Sravan”, 23, „php”, „testowanie”),
(46, „Mounika”, 22, '.Net ', „html”),
(4, „Deepika”, 21, „Oracle”, „html”),
(46, „Mounika”, 22, „Oracle”, „Testing”),
(12, „Chandrika”, 22, „Hadoop”, „C#”),
(12, „Chandrika”, 22, „Oracle”, „Testing”),
(4, „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”])
Drukuj („---------- Rzeczywista ramka danych ----------”)
DataFrame_Obj.pokazywać()

Wyjście:

Funkcja okna PYSPARK Variance ()

Wariancja () w funkcji okna służy do zwrócenia wariancji w każdej partycji. Może być możliwe zwrócenie wariancji po partycjonowaniu ramki danych.

Składnia:

DataFrame_Obj.withColumn („wariancja”, wariancja (col („kolumna”)).Over (partycja))

Parametr:

wariancja (col („kolumna”))

Tutaj funkcja Variance () bierze nazwę kolumny jako parametr. Zwraca wariancję w tej kolumnie w każdej partycji.

Dodajemy wynik do kolumny o nazwie wariancji za pomocą funkcji withColumn ().

Przykład 1:

Teraz mamy ramkę danych (utworzoną wcześniej). Podzielmy go na podstawie kolumny Technology1 i uzyskaj wariancję w kolumnie Temat_id w każdej partycji.

# Zaimportuj funkcję okna
od Pyspark.SQL.okno importowe
#Wportu na wariancję i Col z Pyspark.SQL.Funkcje
od Pyspark.SQL.Funkcje Import wariancji, col
#Partiction The DataFrame na podstawie kolumny Wartości w technologii1
parition = okno.Partitionby („Technology1”)
Drukuj („---------- PARTITIONED DATEFRAME ----------”)
#zwróć wariancję w kolumnie podmiotu dla każdej partycji
DataFrame_Obj.withColumn („wariancja”, wariancja (col („tematy_id”)).Over (partycja)).pokazywać()

Wyjście:

Wyjaśnienie:

Całkowita liczba partycji wynosi 4.

Partycja 1:

.Net wystąpiła dwa razy w pierwszej partycji. Wariancja kolumny tematycznej to 0.0.

Partict 2:

Hadoop miał miejsce raz w drugim partycji. Tak więc wariancja jest zerowa.

Partycja 3:

Oracle wystąpiła cztery razy w trzeciej partycji.

Wariancja kolumny tematycznej wynosi 401.0.

Partycja 4:

PHP wystąpił trzy razy w czwartej partycji.

Wariancja kolumny tematycznej to 0.0.

Przykład 2:

Teraz mamy ramkę danych (utworzoną wcześniej). Podzielmy go na podstawie kolumny technologii1 i uzyskaj wariancję w kolumnie wiekowej w każdej partycji.

# Zaimportuj funkcję okna
od Pyspark.SQL.okno importowe
#Wportu na wariancję i Col z Pyspark.SQL.Funkcje
od Pyspark.SQL.Funkcje Import wariancji, col
#Partiction The DataFrame na podstawie kolumny Wartości w technologii1
parition = okno.Partitionby („Technology1”)
Drukuj („---------- PARTITIONED DATEFRAME ----------”)
#zwróć wariancję kolumny wiekowej dla każdej partycji
DataFrame_Obj.withColumn („wariancja”, wariancja (col („wiek”)).Over (partycja)).pokazywać()

Wyjście:

Wyjaśnienie:

Całkowita liczba partycji wynosi 4.

Partycja 1:

.Net wystąpiła dwa razy w pierwszej partycji. Wariancja kolumny wiekowej wynosi 0.0.

Partict 2:

Hadoop miał miejsce raz w drugim partycji. Tak więc wariancja jest zerowa.

Partycja 3:

Oracle wystąpiła cztery razy w trzeciej partycji.

Wariancja kolumny wiekowej wynosi 0.666.

Partycja 4:

PHP wystąpił trzy razy w czwartej partycji.

Wariancja kolumny wiekowej wynosi 1.333.

Funkcja okna PYSPARK stddev ()

StdDev () w funkcji okna służy do zwrócenia odchylenia standardowego w każdej partycji. Możliwe może być zwrócenie odchylenia standardowego po partycjonowaniu ramki danych.

Składnia:

DataFrame_Obj.withColumn („Odchylenie standardowe”, stddev (col („kolumna”)).Over (partycja))

Parametr:

stddev (col („kolumna”))

Tutaj stddev () bierze nazwę kolumny jako parametr. Zwraca odchylenie standardowe w tej kolumnie w każdej partycji.

Dodajemy wynik do kolumny o nazwie odchylenie standardowe za pomocą funkcji withColumn ().

Przykład 1:

Teraz mamy ramkę danych (utworzoną wcześniej). Podzielmy go na podstawie kolumny technologii.

# Zaimportuj funkcję okna
od Pyspark.SQL.okno importowe
#Wportu na Stddev i Col z Pyspark.SQL.Funkcje
od Pyspark.SQL.Funkcje importują stddev, col
#Partiction The DataFrame na podstawie kolumny Wartości w technologii1
parition = okno.Partitionby („Technology1”)
Drukuj („---------- PARTITIONED DATEFRAME ----------”)
#zwróć odchylenie satndard w kolumnie podmiotu dla każdej partycji
DataFrame_Obj.withColumn („standardowe odchylenie”, stddev (col („tematy_id”)).Over (partycja)).pokazywać()

Wyjście:

Wyjaśnienie:

Całkowita liczba partycji wynosi 4.

Partycja 1:

.Net wystąpiła dwa razy w pierwszej partycji. Odchylenie standardowe kolumny tematycznej wynosi 0.0.

Partict 2:

Hadoop miał miejsce raz w drugim partycji. Tak więc odchylenie standardowe jest zerowe.

Partycja 3:

Oracle wystąpiła cztery razy w trzeciej partycji.

Odchylenie standardowe kolumny TETS_ID wynosi 20.024984.

Partycja 4:

PHP wystąpił trzy razy w czwartej partycji.

Odchylenie standardowe kolumny tematycznej wynosi 0.0.

Przykład 2:

Teraz mamy ramkę danych (utworzoną wcześniej). Podzielmy go na podstawie kolumny Technology1 i uzyskaj odchylenie standardowe w kolumnie wiekowej w każdej partycji.

# Zaimportuj funkcję okna
od Pyspark.SQL.okno importowe
#Wportu na Stddev i Col z Pyspark.SQL.Funkcje
od Pyspark.SQL.Funkcje importują stddev, col
#Partiction The DataFrame na podstawie kolumny Wartości w technologii1
parition = okno.Partitionby („Technology1”)
Drukuj („---------- PARTITIONED DATEFRAME ----------”)
#zwróć kolumnę Satndard odchylenie w wieku dla każdej partycji
DataFrame_Obj.z kolumn („Odchylenie standardowe”, stddev (col („wiek”)).Over (partycja)).pokazywać()

Wyjście:

Wyjaśnienie:

Całkowita liczba partycji wynosi 4.

Partycja 1:

.Net wystąpiła dwa razy w pierwszej partycji. Odchylenie standardowe kolumny wiekowej wynosi 0.0.

Partict 2:

Hadoop miał miejsce raz w drugim partycji. Tak więc odchylenie standardowe jest zerowe.

Partycja 3:

Oracle wystąpiła cztery razy w trzeciej partycji.

Odchylenie standardowe kolumny wiekowej wynosi 0.8164.

Partycja 4:

PHP wystąpił trzy razy w czwartej partycji.

Standardowe odchylenie kolumny wiekowej wynosi 1.1547.

Wniosek

W tym samouczku partycjonowania PYSPARK nauczyliśmy się zwrócić wariancję w każdym partycjonowanym oknie za pomocą funkcji Variance () i odchylenia standardowego w każdym partycjonowanym oknie za pomocą funkcji stddev (). Dodaliśmy wynik do istniejącej ramki danych jako nowej kolumny. Upewnij się, że importujesz wariancję i stddev z Pyspark.SQL.Moduł funkcji.