Vanliga ordsekvenser

Introduktion till Spark SQL i Python

Mark Plutowski

Data Scientist

Träning

Introduktion till Spark SQL i Python

Prediktion

Introduktion till Spark SQL i Python

Prediktion av slutord

Introduktion till Spark SQL i Python

Sekvens

Introduktion till Spark SQL i Python

Sekvensens sista element

Introduktion till Spark SQL i Python

The quick brown fox

Introduktion till Spark SQL i Python

Meningsparentes

Introduktion till Spark SQL i Python

En annan typ av aggregering

Introduktion till Spark SQL i Python

Videor

Introduktion till Spark SQL i Python

Kategorisk data

Introduktion till Spark SQL i Python

Kategorisk vs ordinal

  • Kategorisk: he, hi, she, that, they
  • Ordinal: 1, 2, 3, 4, 5
Introduktion till Spark SQL i Python

Sekvensanalys

Introduktion till Spark SQL i Python

Ord före och efter

Introduktion till Spark SQL i Python

3-tupler

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
""" 
Introduktion till Spark SQL i Python

En fönsterfunktion i SQL som underfråga

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()
Introduktion till Spark SQL i Python

En fönsterfunktion i SQL som underfråga – utdata

+-----+-----+-----+-----+
|   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|
|.....|.....|.....|.....|
Introduktion till Spark SQL i Python

Vanligaste 3-tuplerna

+-----+-----+-----+-----+
|   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|
| that|    i| have|   35|
|there|  was|    a|   34|
|    i|   do|  not|   34|
| that|   it|   is|   33|
| that|   he|  was|   30|
| that|   he|  had|   30|
| that|    i|  was|   28|
+-----+-----+-----+-----+
Introduktion till Spark SQL i Python

En annan typ av aggregering

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)
Introduktion till Spark SQL i Python

En annan typ av aggregering

+-------------------+-------------------+---------------+------+
|                 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|
+-------------------+-------------------+---------------+------+
Introduktion till Spark SQL i Python

Nu kör vi en övning!

Introduktion till Spark SQL i Python

Preparing Video For Download...