Datavisualisatie in PySpark met DataFrames

Big Data Fundamentals met PySpark

Upendra Devisetty

Science Analyst, CyVerse

Wat is datavisualisatie?

  • Datavisualisatie zet je data om in grafieken of diagrammen

  • Open-source plottools voor visualisatie in Python:

    • Matplotlib, Seaborn, Bokeh, enz.
  • Grafieken maken met PySpark DataFrames kan op drie manieren

    • pyspark_dist_explore-library

    • toPandas()

    • HandySpark-library

Big Data Fundamentals met PySpark

Datavisualisatie met Pyspark_dist_explore

  • De Pyspark_dist_explore-library geeft snel inzicht in DataFrames

  • Momenteel drie functies: hist(), distplot() en pandas_histogram()

test_df = spark.read.csv("test.csv", header=True, inferSchema=True)
test_df_age = test_df.select('Age')
hist(test_df_age, bins=20, color="red")
Big Data Fundamentals met PySpark

Pandas gebruiken voor het plotten van DataFrames

  • Het is makkelijk om grafieken te maken van pandas-DataFrames
test_df = spark.read.csv("test.csv", header=True, inferSchema=True)
test_df_sample_pandas = test_df.toPandas()
test_df_sample_pandas.hist('Age')
  • Let op: bij grote datasets is toPandas() niet aan te raden
Big Data Fundamentals met PySpark

Pandas DataFrame vs. PySpark DataFrame

  • Pandas-DataFrames staan in het geheugen op één server; PySpark-operaties draaien parallel

  • In Pandas krijg je direct resultaat; PySpark DataFrame gebruikt lazy evaluation

  • Pandas DataFrame is mutable; PySpark DataFrames zijn immutable

  • De Pandas-API biedt meer operaties dan de PySpark DataFrame-API

Big Data Fundamentals met PySpark

Visualiseren met HandySpark

  • HandySpark is een package dat de PySpark-gebruikerservaring verbetert
    • Makkelijk data ophalen
    • Gedistribueerde berekening blijft behouden
test_df = spark.read.csv('test.csv', header=True, inferSchema=True)
hdf = test_df.toHandy()
hdf.cols["Age"].hist()
Big Data Fundamentals met PySpark

Laten we DataFrames visualiseren

Big Data Fundamentals met PySpark

Preparing Video For Download...