Veelvoorkomende woordreeksen

Introductie tot Spark SQL in Python

Mark Plutowski

Data Scientist

Training

Introductie tot Spark SQL in Python

Voorspellen

Introductie tot Spark SQL in Python

Eindwoordvoorspelling

Introductie tot Spark SQL in Python

Reeks

Introductie tot Spark SQL in Python

Laatste in reeks

Introductie tot Spark SQL in Python

De snelle bruine vos

Introductie tot Spark SQL in Python

Zinsbeugel

Introductie tot Spark SQL in Python

Een ander type aggregatie

Introductie tot Spark SQL in Python

Video's

Introductie tot Spark SQL in Python

Categorische data

Introductie tot Spark SQL in Python

Categorisch vs. ordinaal

  • Categorisch: he, hi, she, that, they
  • Ordinaal: 1, 2, 3, 4, 5
Introductie tot Spark SQL in Python

Reeksanalyse

Introductie tot Spark SQL in Python

Vorig en volgend woord

Introductie tot Spark SQL in Python

3-tuplets

query3 = """
   SELECT 
   id,
   word AS w1,
   LEAD(word,1) OVER(PARTITION BY part ORDER BY id ) AS w2,
   LEAD(word,2) OVER(PARTITION BY part ORDER BY id ) AS w3
   FROM df
""" 
Introductie tot Spark SQL in Python

Een windowfunctie-SQL als subquery

query3agg = """
SELECT w1, w2, w3, COUNT(*) as count FROM (
   SELECT 
   word AS w1,
   LEAD(word,1) OVER(PARTITION BY part ORDER BY id ) AS w2,
   LEAD(word,2) OVER(PARTITION BY part ORDER BY id ) AS w3
   FROM df
)
GROUP BY w1, w2, w3 
ORDER BY count DESC
""" 

spark.sql(query3agg).show()
Introductie tot Spark SQL in Python

Een windowfunctie-SQL als subquery – output

+-----+-----+-----+-----+
|   w1|   w2|   w3|count|
+-----+-----+-----+-----+
|  one|   of|  the|   49|
|    i|think| that|   46|
|   it|   is|    a|   46|
|   it|  was|    a|   45|
| that|   it|  was|   38|
|  out|   of|  the|   35|
|.....|.....|.....|.....|
Introductie tot Spark SQL in Python

Meest voorkomende 3-tuplets

+-----+-----+-----+-----+
|   w1|   w2|   w3|count|
+-----+-----+-----+-----+
|  one|   of|  the|   49|
|    i|   do|  not|   34|
|   it|   is|    a|   46|
|   it|  was|    a|   45|
| that|   it|  was|   38|
|  out|   of|  the|   35|
| that|    i| have|   35|
|there|  was|    a|   34|
|    i|think| that|   46|
| that|   it|   is|   33|
| that|   he|  was|   30|
| that|   he|  had|   30|
| that|    i|  was|   28|
+-----+-----+-----+-----+
Introductie tot Spark SQL in Python

Een ander type aggregatie

query3agg = """
SELECT w1, w2, w3, length(w1)+length(w2)+length(w3) as length FROM (
   SELECT 
   word AS w1,
   LEAD(word,1) OVER(PARTITION BY part ORDER BY id ) AS w2,
   LEAD(word,2) OVER(PARTITION BY part ORDER BY id ) AS w3
   FROM df
   WHERE part <> 0 and part <> 13
)
GROUP BY w1, w2, w3 
ORDER BY length DESC
""" 

spark.sql(query3agg).show(truncate=False)
Introductie tot Spark SQL in Python

Een ander type aggregatie

+-------------------+-------------------+---------------+------+
|                 w1|                 w2|             w3|length|
+-------------------+-------------------+---------------+------+
|comfortable-looking|           building|    two-storied|    38|
|         widespread|comfortable-looking|       building|    37|
|      extraordinary|      circumstances|      connected|    35|
|      simple-minded|      nonconformist|      clergyman|    35|
|       particularly|          malignant|  boot-slitting|    34|
|       unsystematic|        sensational|     literature|    33|
|       oppressively|        respectable|     frock-coat|    33|
|         relentless|        keen-witted|   ready-handed|    33|
|   travelling-cloak|                and|  close-fitting|    32|
|        ruddy-faced|      white-aproned|       landlord|    32|
|  fellow-countryman|            colonel|       lysander|    32|
+-------------------+-------------------+---------------+------+
Introductie tot Spark SQL in Python

Laten we oefenen!

Introductie tot Spark SQL in Python

Preparing Video For Download...