一.給定一組鍵值對(「spark」,2),(「hadoop」,6),(「hadoop」,4),(「spark」,6)鍵值對的key表示圖書名稱,value表示每天圖書銷量,請計算出每個鍵對應的平均值,也就是每種圖書每天的平均銷量。
1.**如下:
val book = array(("spark",2),("hadoop",6),("hadoop",4),("spark",6))
val rdd = sc.parallelize(book)
rdd.mapvalues(x=>(x,1)).reducebykey
((x,y)=>(x._1+y._1,x._2+y._2)).
mapvalues
(x=>(x._1/x._2)).collect
()
x=>(x,1)是為了後面累加出項數而準備,所以湊出(_,1)的樣式
(x,y)=>(x._1+y._1,x._2+y._2) 還是對values進行的操作【這個才是關鍵】,將values中的鍵值分別對應相加
x=>(x._1/x._2) 求出平均值
spark 簡單實戰 Spark線性回歸簡單例子
這個課程以乙個專案來講解spark中怎麼使用線性回歸 邏輯回歸以及svm等演算法模型。專案主要是 航班的延遲時間,專案是按照如下的流程來講解 在模型訓練地方,詳細講解了交叉驗證的功能 老湯人工智慧 機器學習課程體系分為三部分 機器學習一之數學基礎 從微積分和線性代數兩個方面講解機器學習需要的數學知識...
Spark解析Json案例
最近常常和json打交道,記錄一下spark解析json案例,資料有點長 roadinters formatted address 浙江省杭州市江乾區白楊街道浙江育英職業技術學院繼續教育分院浙江育英職業技術學院 addresscomponent country 中國 township 白楊街道 bu...
Python selenium案例實戰
最近專案有乙個需求 測試人員考勤資料分析結果,歷史的手工測試方式是手動將每一種測試資料依次補加進考勤系統內,這種方式在很大程度上降低了測試的效率,以及資料補加的不準確性,所以,趁此機會,寫了selenium指令碼來替代手工測試。實現功能如下 迴圈補加考勤資料,分別是簽到裝置 簽到時間,簽退裝置 簽退...