Flink:PageRank类型不匹配错误

拉里

我想PageRank从以下格式的边的CSV文件中进行计算

12,13,1.0
12,14,1.0
12,15,1.0
12,16,1.0
12,17,1.0
...

我的代码:

var filename = "<filename>.csv"

val graph = Graph.fromCsvReader[Long,Double,Double]( 
                   env = env, 
                   pathEdges = filename, 
                   readVertices = false, 
                   hasEdgeValues = true, 
                   vertexValueInitializer = new MapFunction[Long, Double] { 
                           def map(id: Long): Double = 0.0 } )

val ranks = new PageRank[Long](0.85, 20).run(graph)

我从Flink Scala Shell中收到以下错误:

error: type mismatch;
 found   : org.apache.flink.graph.scala.Graph[Long,_23,_24] where type _24 >: Double with _22, type _23 >: Double with _21
 required: org.apache.flink.graph.Graph[Long,Double,Double]
            val ranks = new PageRank[Long](0.85, 20).run(graph)
                                                         ^

我究竟做错了什么?

(并且每个顶点的初始值0.0和每个边缘的1.0正确吗?)

蒂尔·罗尔曼

问题是您要给Scalaorg.apache.flink.graph.scala.Graph提供PageRank.runJava语言org.apache.flink.graph.Graph

为了运行一个GraphAlgorithm用于Scala的Graph对象,你必须调用run斯卡拉的方法GraphGraphAlgorithm

graph.run(new PageRank[Long](0.85, 20))

更新

在使用PageRank算法的情况下,请务必注意,该算法需要type的实例Graph[K, java.lang.Double, java.lang.Double]由于Java的Double类型与Scala的Double类型不同(就类型检查而言),因此必须加以考虑。

对于示例代码,这意味着

val graph = Graph.fromCsvReader[Long,java.lang.Double,java.lang.Double]( 
  env = env, 
  pathEdges = filename, 
  readVertices = false, 
  hasEdgeValues = true, 
  vertexValueInitializer = new MapFunction[Long, java.lang.Double] { 
         def map(id: Long): java.lang.Double = 0.0 } )
  .asInstanceOf[Graph[Long, java.lang.Double, java.lang.Double]]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

错误类型与replaceitemvalue不匹配

来自分类Dev

奇怪的类型不匹配错误

来自分类Dev

VBA错误:类型不匹配

来自分类Dev

奇怪的类型不匹配错误

来自分类Dev

错误类型与replaceitemvalue不匹配

来自分类Dev

类型不匹配错误#13

来自分类Dev

奇怪的类型不匹配错误

来自分类Dev

Scala 错误:类型不匹配

来自分类Dev

flatMap函数中的Apache Flink流类型不匹配

来自分类Dev

Flink Gelly-创建图形时类型不匹配

来自分类Dev

Scala中奇怪的类型不匹配错误

来自分类Dev

绑定不匹配错误:类型无效

来自分类Dev

MS Excel VBA类型不匹配错误

来自分类Dev

使用recover()时,类型不匹配错误

来自分类Dev

使用“ AdvanceFilter”输入类型不匹配错误

来自分类Dev

为什么类型不匹配错误?

来自分类Dev

在vbScript中获取类型不匹配错误

来自分类Dev

F#中的类型不匹配错误

来自分类Dev

VBA Excel 2016:类型不匹配错误

来自分类Dev

错误:参数值与预期类型不匹配

来自分类Dev

递归CTE错误:类型不匹配

来自分类Dev

循环外的Rust不匹配类型错误

来自分类Dev

Presto因类型不匹配错误而失败

来自分类Dev

F#If语句类型不匹配错误

来自分类Dev

Excel VBA中的类型不匹配错误

来自分类Dev

grails中的remoteFunction()类型不匹配错误

来自分类Dev

Android中的错误类型不匹配asynctask

来自分类Dev

在vbScript中获取类型不匹配错误

来自分类Dev

F#中的类型不匹配错误