2
カラム内の値を小文字に変換したい。現在、lower()
メソッドを使用している場合は、列オブジェクトが呼び出し可能ではないというエラーが発生します。 SQLにlower()
という関数があるので、UDFを含まない、または実際のSQLを書くネイティブのSparkソリューションがあると仮定します。手動lower
をインポートする必要がPyspark:カラムを小文字に変換する
カラム内の値を小文字に変換したい。現在、lower()
メソッドを使用している場合は、列オブジェクトが呼び出し可能ではないというエラーが発生します。 SQLにlower()
という関数があるので、UDFを含まない、または実際のSQLを書くネイティブのSparkソリューションがあると仮定します。手動lower
をインポートする必要がPyspark:カラムを小文字に変換する
、あなたがcol
をインポートする必要がほとんど同じ方法:
from pyspark.sql.functions import lower, col
lower(col("bla"))
を使用してそれらを一緒に結合します。完全なクエリで:UDFのがある(パイソンを呼び出す必要があるため、このアプローチは、UDFを使用するよりも優れている、
SELECT bla FROM bla WHERE lower(bla) = "bla"
言うまでもなくするSQLクエリに相当し
spark.table('bla').where(lower(col('bla')) == 'bla')
遅い操作、そしてPython自体は遅い)、それをSQLで書くよりもエレガントです。
このコードは質問に答えるかもしれませんが、このコードが質問に答える理由と理由についての追加の文脈を提供すると、長期的な価値が向上します。 – Isma
@Isma編集を参照してください。 – ogogmad
@Isma最後の段落を参照してください。そうでなければ、あなたはそれが欠けていると思うかどうか分からない。 – ogogmad