Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Menapis DataFrames PySpark dengan Cekap Menggunakan Klausa IN?

Bagaimana untuk Menapis DataFrames PySpark dengan Cekap Menggunakan Klausa IN?

Patricia Arquette
Lepaskan: 2024-12-28 21:57:11
asal
386 orang telah melayarinya

How to Efficiently Filter PySpark DataFrames Using an IN Clause?

Mengendalikan Penapisan DataFrame Pyspark dengan Klausa IN

Menapis DataFrame Pyspark dengan klausa IN seperti SQL boleh dicapai dengan pemformatan rentetan.

Dalam contoh yang diberikan:

sc = SparkContext()
sqlc = SQLContext(sc)
df = sqlc.sql('SELECT * from my_df WHERE field1 IN a')
Salin selepas log masuk

Rentetan dihantar ke SQLContext dinilai dalam persekitaran SQL dan tidak menangkap penutupan. Untuk menghantar pembolehubah secara eksplisit, gunakan pemformatan rentetan:

df.registerTempTable("df")
sqlContext.sql("SELECT * FROM df WHERE v IN {0}".format(("foo", "bar"))).count()
Salin selepas log masuk

Sebagai alternatif, DataFrame DSL menyediakan pilihan yang lebih baik untuk pertanyaan dinamik:

from pyspark.sql.functions import col

df.where(col("v").isin({"foo", "bar"})).count()
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menapis DataFrames PySpark dengan Cekap Menggunakan Klausa IN?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan