2016-09-02 21 views
0

私は複数の列の結合を行っている2つのデータフレームを持っています。最初の列のペアは等価比較を行い、2番目のペアは等しくない比較です。コードは次のようになりますApache Spark Dataframe - 非等価結合の設定に関する問題

val arule_1w = itemLHS 
     .join(itemRHS, itemLHS("CUST_ID") === itemRHS("CUST_ID") && itemLHS("LHS") != itemRHS("RHS") 

得られたデータは、まだそれが、等しくないと参加するべきではないitemLHS(「LHS」)= itemRHS(「RHS」)を含有する行を有します。多分ユーザーエラーかもしれませんが、私の研究ではフォーマットが正しいと私に伝えています。すべてのデータ型は文字列値です。

ありがとうございました!

答えて

1

正しい方法は=!=ではなく、!=です。 !syntaxt itemLHS( "LHS")以下で使用

+0

私はそれを試してみたのだが、次のエラーがスローされます:「解決することはできません((CUST_ID = CUST_ID)&& LHS) '((CUST_ID = CUST_ID)&& LHS)'(ブール値と文字列)のデータ型が異なるために発生します。それは何かを理解していないようなものです!==はです。 –

+0

これは優先順位の問題です。 '=!='を試してみてください。 –

-1

== itemRHS( "RHS")

関連する問題