Heim > Datenbank > MySQL-Tutorial > Wie filtere ich PySpark-DataFrames mithilfe einer IN-Klausel effizient?

Wie filtere ich PySpark-DataFrames mithilfe einer IN-Klausel effizient?

Patricia Arquette
Freigeben: 2024-12-28 21:57:11
Original
349 Leute haben es durchsucht

How to Efficiently Filter PySpark DataFrames Using an IN Clause?

Umgang mit der Pyspark-DataFrame-Filterung mit einer IN-Klausel

Das Filtern eines Pyspark-DataFrames mit einer SQL-ähnlichen IN-Klausel kann mit String-Formatierung erreicht werden.

Im gegebenen Beispiel:

sc = SparkContext()
sqlc = SQLContext(sc)
df = sqlc.sql('SELECT * from my_df WHERE field1 IN a')
Nach dem Login kopieren

An SQLContext übergebene Zeichenfolgen werden in der SQL-Umgebung ausgewertet und erfassen keine Schließungen. Um Variablen explizit zu übergeben, verwenden Sie die Zeichenfolgenformatierung:

df.registerTempTable("df")
sqlContext.sql("SELECT * FROM df WHERE v IN {0}".format(("foo", "bar"))).count()
Nach dem Login kopieren

Alternativ bietet der DataFrame DSL eine bessere Option für dynamische Abfragen:

from pyspark.sql.functions import col

df.where(col("v").isin({"foo", "bar"})).count()
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie filtere ich PySpark-DataFrames mithilfe einer IN-Klausel effizient?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage