2
Sparkプログラミングの初心者で、入力に値のセットが表示されたときに値を割り当てるシナリオがあります。以下は私の仕事を達成するために使用する伝統的なSQLコードです。スパークで同じことをする必要があります。ケースがPysparkのIN句を含むステートメント
SQLコード:
SELECT CASE WHEN c.Number IN ('1121231', '31242323') THEN 1
ELSE 2 END AS Test
FROM Input c
私はただ一つの条件とスパークにwhen
を使用しての認識しています。
Input.select(when(Input.Number==1121231,1).otherwise(2).alias("Test")).show()
感謝をあなたの応答を。出来た。 sparkデータフレームにwhen関数を直接使用して値のリストを与える方法はありますか? – Sid
私は自分がしたいことを見つけたと思う。 df.when(df.char.isin( 'H'、 'O'、 'M')、1).other(0) – Sid
@ user3258274これも機能します。 DataFrameをrddに変換し、次のように収集することで、列から値のリストを抽出することもできます: 'rdd = df.rdd; rdd.map(ラムダx:x.transform).collect() ' –