2017-08-09 49 views
-1

我是一個初學者與斯卡拉和我試圖過濾表rowsvalue列。斯卡拉火花 - 過濾出一列表上的列基於列

我有一個dataframe火花):

+---+-----+ 
|id |value| 
+---+-----+ 
|3 |0 | 
|3 |1 | 
|3 |0 | 
|4 |1 | 
|4 |0 | 
|4 |0 | 
+---+-----+ 

我想創建一個新的dataframe刪除所有rowsvalue!=0

+---+-----+ 
|id |value| 
+---+-----+ 
|3 |0 | 
|3 |0 | 
|4 |0 | 
|4 |0 | 
+---+-----+ 

我想通語法應該是這樣的但不能正確:

val newDataFrame = OldDataFrame.filter($"value"==0) 

回答

0

正確的方法如下。你剛纔忘了加上一個等號(=)

val newDataFrame = OldDataFrame.filter($"value" === 0) 
0

他們是通過它可以做過濾各種方式。

  1. VAL newDataFrame = OldDataFrame.filter($ 「值」 === 0)

  2. VAL newDataFrame = OldDataFrame.filter(OldDataFrame( 「值」)=== 0)

  3. VAL newDataFrame = OldDataFrame.filter( 「值=== 0」)

可以使用其中的功能,以及代替濾波器。

希望這會有所幫助。

問候,

Neeraj