91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PageRank如何使用

發布時間:2021-12-16 16:53:06 來源:億速云 閱讀:108 作者:iii 欄目:云計算

這篇文章主要介紹“PageRank如何使用”,在日常操作中,相信很多人在PageRank如何使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PageRank如何使用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

package week7
import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkContext, SparkConf}
import org.apache.spark.graphx._
import org.apache.spark.rdd.RDD

object PageRank {
  def main(args: Array[String]) {
    //屏蔽日志
    Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
    Logger.getLogger("org.eclipse.jetty.server").setLevel(Level.OFF)

    //設置運行環境
    val conf = new SparkConf().setAppName("PageRank").setMaster("local")
    val sc = new SparkContext(conf)

    //讀入數據文件
    val articles: RDD[String] = sc.textFile("/home/mmicky/IdeaProjects/data/graphx/graphx-wiki-vertices.txt")
    val links: RDD[String] = sc.textFile("/home/mmicky/IdeaProjects/data/graphx/graphx-wiki-edges.txt")

    //裝載頂點和邊
    val vertices = articles.map { line =>
      val fields = line.split('\t')
      (fields(0).toLong, fields(1))
    }

    val edges = links.map { line =>
      val fields = line.split('\t')
      Edge(fields(0).toLong, fields(1).toLong, 0)
    }

    //cache操作
    //val graph = Graph(vertices, edges, "").persist(StorageLevel.MEMORY_ONLY_SER)
    val graph = Graph(vertices, edges, "").persist()
    //graph.unpersistVertices(false)

    //測試
    println("**********************************************************")
    println("獲取5個triplet信息")
    println("**********************************************************")
    graph.triplets.take(5).foreach(println(_))

    //pageRank算法里面的時候使用了cache(),故前面persist的時候只能使用MEMORY_ONLY
    println("**********************************************************")
    println("PageRank計算,獲取最有價值的數據")
    println("**********************************************************")
    val prGraph = graph.pageRank(0.001).cache()

    val titleAndPrGraph = graph.outerJoinVertices(prGraph.vertices) {
      (v, title, rank) => (rank.getOrElse(0.0), title)
    }

    titleAndPrGraph.vertices.top(10) {
      Ordering.by((entry: (VertexId, (Double, String))) => entry._2._1)
    }.foreach(t => println(t._2._2 + ": " + t._2._1))

    sc.stop()
  }
}

到此,關于“PageRank如何使用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

镇赉县| 台前县| 左权县| 揭西县| 日喀则市| 米林县| 大同县| 基隆市| 彰化县| 吐鲁番市| 金平| 庄浪县| 桐梓县| 铜山县| 雷波县| 寿阳县| 永春县| 长垣县| 林芝县| 和硕县| 昌黎县| 合肥市| 安义县| 调兵山市| 泗阳县| 虎林市| 扶余县| 灌云县| 阿瓦提县| 东方市| 定远县| 察隅县| 寿宁县| 广德县| 祥云县| 公主岭市| 延安市| 辽中县| 石渠县| 崇文区| 黎川县|