Поделиться через


theta_intersection

Возвращает пересечение двух двоичных представлений объектов Datasketches ThetaSketch с помощью объекта Пересечения Datasketches.

Синтаксис

from pyspark.sql import functions as sf

sf.theta_intersection(col1, col2)

Параметры

Параметр Тип Description
col1 pyspark.sql.Column или str Первый эскиз Теты.
col2 pyspark.sql.Column или str Второй эскиз Теты.

Возвраты

pyspark.sql.Column: двоичное представление пересекаемого ThetaSketch.

Примеры

Пример 1. Получение пересечения двух эскизов Тета

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()
+-----------------------------------------------------------+
|theta_sketch_estimate(theta_intersection(sketch1, sketch2))|
+-----------------------------------------------------------+
|                                                          3|
+-----------------------------------------------------------+