2016-01-02 39 views
-2

我是新來的Spark和StackOverFlow社區的編程人員。嘗試在Cloudera QuickStart VM中使用Spark獲取數據的子集。在所附的快照,你會看到20條記錄使用代碼的輸出:在Spark中設置數據

channel_views.take(20) 

這裏,channel_views是一個包含幾百個記錄的RDD。我試圖只包含那些包含單詞'XYZ'的特定記錄和相應的數值。我如何實現這一目標?

在此先感謝。

enter image description here

回答

1

RDD.filter

channel_views.filter(lambda x: "XYZ" == x[1]) # Exact matches 

channel_views.filter(lambda x: "XYZ" in x[1]) # XYZ in the value 
+0

zero323:謝謝您的答覆。我嘗試在Spark命令行中使用第一條命令,但它沒有提供包含確切單詞「XYZ」的記錄列表。相反,輸出結果顯示「PythonRDD.scala:RDRD處的PythonRDD [44]」。不知道這是什麼意思。 – dataZ

+0

http://spark.apache.org/docs/latest/quick-start.html#basics – zero323

+0

謝謝,zero323!您的解決方案和資源幫助!原諒我對這個問題的無知 - 我是新的(1周大)到Spark領域,以及stackoverflow社區。 – dataZ