Skip to main content

theta_intersection

Returns the intersection of two binary representations of Datasketches Theta Sketch objects, using a Datasketches Intersection object.

Syntax

Python
from pyspark.sql import functions as sf

sf.theta_intersection(col1, col2)

Parameters

Parameter

Type

Description

col1

pyspark.sql.Column or str

The first Theta sketch.

col2

pyspark.sql.Column or str

The second Theta sketch.

Parameter

Type

Description

col1

pyspark.sql.Column or str

The first Theta sketch.

col2

pyspark.sql.Column or str

The second Theta sketch.

Returns

pyspark.sql.Column: The binary representation of the intersected Theta Sketch.

Examples

Example 1: Get intersection of two Theta sketches

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(1,1),(2,2),(3,2),(3,3)], "struct<v1:int,v2:int>")
df = df.agg(
sf.theta_sketch_agg("v1").alias("sketch1"),
sf.theta_sketch_agg("v2").alias("sketch2")
)
df.select(sf.theta_sketch_estimate(sf.theta_intersection(df.sketch1, "sketch2"))).show()
Output
+-----------------------------------------------------------+
|theta_sketch_estimate(theta_intersection(sketch1, sketch2))|
+-----------------------------------------------------------+
| 3|
+-----------------------------------------------------------+