To use PyDeequ, you must initialize a SparkSession configured with the necessary Deequ Maven coordinates to ensure the underlying Scala/Java libraries are available. Use pydeequ.deequ_maven_coord and pydeequ.f2j_maven_coord for configuration.
from pyspark.sql import SparkSession, Row
import pydeequ
spark = (SparkSession
.builder
.config("spark.jars.packages", pydeequ.deequ_maven_coord)
.config("spark.jars.excludes", pydeequ.f2j_maven_coord)
.getOrCreate())
# Example DataFrame
df = spark.sparkContext.parallelize([
Row(a="foo", b=1, c=5),
Row(a="bar", b=2, c=6),
Row(a="baz", b=3, c=None)]).toDF()