PYSPARK - średnia

PYSPARK - średnia
W Python PYSPARK to moduł Spark używany do zapewnienia podobnego rodzaju przetwarzania, takiego jak Spark za pomocą DataFrame. Mean () w PYSPARK zwraca średnią wartość z określonej kolumny w ramce danych. Możemy uzyskać średnią na trzy sposoby.
  1. Metoda 1: metodą Select ()
  2. Metoda 2: Za pomocą metody AGG ()
  3. Metoda 3: Za pomocą metody GroupBy ()

Wcześniej musimy stworzyć PYSPARK DATAFRAME do demonstracji.

Przykład:

Utworzymy ramkę danych z 5 wierszami i 6 kolumnami i wyświetlimy ją za pomocą metody show ().

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#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 DataFrame
df.pokazywać()

Wyjście:

Metoda 1: metodą Select ()

Możemy uzyskać średnią wartość z kolumny w ramce danych za pomocą metody select (). Za pomocą metody średniej () możemy uzyskać średnią wartość z kolumny. Aby użyć tej metody, musimy ją zaimportować z Pyspark.SQL.Moduł funkcji, a na koniec możemy użyć metody kolekcji (), aby uzyskać średnią z kolumny

Składnia:

df.Wybierz (Mean ('kolumn_name')))

Gdzie,

  1. DF to wejście PYSPARK DATAFRAME
  2. Kolumna_nazwa to kolumna, aby uzyskać średnią wartość

Jeśli chcemy zwrócić średnią wartość z wielu kolumn, musimy użyć metody średniej () w metodzie Select (), określając nazwę kolumny oddzieloną przecinkiem.

Składnia:

df.Wybierz (Mean ('kolumn_name'), Mean ('kolumn_name'),… ., Mean ('kolumn_name')))

Gdzie,

  1. DF to wejście PYSPARK DATAFRAME
  2. Kolumna_nazwa to kolumna, aby uzyskać średnią wartość

Przykład 1: Pojedyncza kolumna

Ten przykład otrzyma średnią wartość z kolumny wysokości w Pyspark DataFrame.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#Wportu na czynność środka
od Pyspark.SQL.Funkcje importowane
#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)
#Zamrzyj średnią z kolumny wysokości
df.Wybierz (Mean („wysokość”)).zbierać()

Wyjście:

[Row (AVG (wysokość) = 4.33)]

W powyższym przykładzie zwracana jest średnia wartość z kolumny wysokości.

Przykład 2: Wiele kolumn

Ten przykład otrzyma średnią wartość z kolumn wysokości, wieku i wagi w Pyspark DataFrame.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#Wprowadź średnią funkcję
od Pyspark.SQL.Funkcje importowane
#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)
#zwróć średnią z kolumn wysokości, wieku i wagi
df.Wybierz (Mean („wysokość”), Mean („wiek”), Mean („waga”)).zbierać()

Wyjście:

[Row (AVG (wysokość) = 4.33, AVG (wiek) = 18.4, AVG (waga) = 40.0)]

W powyższym przykładzie zwracana jest średnia wartość z kolumn wysokości, wieku i wagi.

Metoda 2: Za pomocą metody AGG ()

Możemy uzyskać średnią wartość z kolumny w ramce danych za pomocą metody agg (). Ta metoda jest znana jako agregacja, która grupuje wartości w kolumnie. Wystąpi słownik jako parametr w tym kluczu, nazwa kolumny, a wartość jest funkcją agregowanej, i.mi., mieć na myśli. Za pomocą metody średniej () możemy uzyskać średnią wartość z kolumny, a na koniec możemy użyć metody Collect (), aby uzyskać średnią z kolumny.

Składnia:

df.AGG ('kolumn_name': Mean)

Gdzie,

  1. DF to wejście PYSPARK DATAFRAME
  2. Kolumna_nazwa to kolumna, aby uzyskać średnią wartość
  3. Średnia jest funkcją agregacji stosowaną do zwrotu średniej

Jeśli chcemy zwrócić średnią wartość z wielu kolumn, musimy określić nazwę kolumny ze średnią funkcją oddzieloną przecinkiem.

Składnia:

df.AGG ('kolumn_name': Mean, 'kolumn_name': Mean,…, 'kolumn_name': Mean)

Gdzie,

  1. DF to wejście PYSPARK DATAFRAME
  2. Kolumna_nazwa to kolumna, aby uzyskać średnią wartość
  3. Średnia jest funkcją agregacji stosowaną do zwrotu średniej

Przykład 1: Pojedyncza kolumna

Ten przykład otrzyma średnią wartość z kolumny wysokości w Pyspark DataFrame.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#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)
#Zamrzyj średnią z kolumny wysokości
df.AGG („Height”: 'Mean').zbierać()

Wyjście:

[Row (AVG (wysokość) = 4.33)]

W powyższym przykładzie zwracana jest średnia wartość z kolumny wysokości.

Przykład 2: Wiele kolumn

Ten przykład otrzyma średnią wartość z kolumn wysokości, wieku i wagi w Pyspark DataFrame.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#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)
#zwróć średnią z kolumn wysokości, wieku i wagi
df.AGG („Height”: „Mean”, „Age”: „Mean”, „waga”: „Mean”).zbierać()

Wyjście:

[Row (AVG (waga) = 40.0, AVG (wiek) = 18.4, AVG (wysokość) = 4.33)]

W powyższym przykładzie zwracana jest średnia wartość z kolumn wysokości, wieku i wagi.

Metoda 3: Za pomocą metody GroupBy ()

Możemy uzyskać średnią wartość z kolumny w ramce danych za pomocą metody grupy (). Ta metoda zwróci średnią wartość, grupując podobne wartości w kolumnie. Musimy użyć funkcji średniej () po wykonaniu funkcji grupy ()

Składnia:

df.Groupby (grupa_kolumn). Mean („kolumn_nazwa”)

Gdzie,

  1. DF to wejście PYSPARK DATAFRAME
  2. Group_Column to kolumna, w której wartości są pogrupowane na podstawie tej kolumny
  3. Kolumna_nazwa to kolumna, aby uzyskać średnią wartość
  4. Średnia jest funkcją agregacji stosowaną do zwrotu średniej

Przykład 1:

W tym przykładzie zgrupujemy kolumnę adresu z kolumną wysokości, aby zwrócić średnią wartość na podstawie tej kolumny adresu.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#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)
#return Średnia z grupy kolumny wysokości z kolumną adresu
df.Groupby („Adres”).Mean („wysokość”).zbierać()

Wyjście:

Istnieją trzy unikalne wartości w polu adresu - Hyd, Guntur i Patna. Tak więc średnia zostanie utworzona przez grupowanie wartości między wartościami adresu.

[Wiersz (adres = „hyd”, avg (wysokość) = 4.35666666666666665),
Wiersz (adres = „guntur”, avg (wysokość) = 5.79),
Wiersz (adres = „patna”, avg (wysokość) = 2.79)]

Przykład 2:

W tym przykładzie zgrupujemy kolumnę adresową z kolumną wagi, aby zwrócić średnią wartość na podstawie tej kolumny adresu.

#Wportu na moduł PYSPARK
Import Pyspark
#Import Sparksession do tworzenia sesji
od Pyspark.SQL Import Sparksession
#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)
#return Średnia z grupy kolumny wagowej z kolumną adresu
df.Groupby („Adres”).średnia („waga”).zbierać()

Wyjście:

Istnieją trzy unikalne wartości w polu adresu - Hyd, Guntur i Patna. Tak więc średnia zostanie utworzona przez grupowanie wartości między wartościami adresu.

[Wiersz (adres = „hyd”, AVG (waga) = 38.666666666666664),
Wiersz (adres = „guntur”, avg (waga) = 67.0),
Row (Adres = „Patna”, AVG (waga) = 17.0)]

Wniosek:

Omówiliśmy, jak uzyskać średnią wartość z Pyspark DataFrame za pomocą metod wybierania () i agg (). Aby uzyskać średnią wartość poprzez grupowanie z innymi kolumnami, użyliśmy grupy wraz z funkcją Mean ().