Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mapValues如何在Scala中转换为并行集合_Scala - Fatal编程技术网

mapValues如何在Scala中转换为并行集合

mapValues如何在Scala中转换为并行集合,scala,Scala,我试图在我分组的集合中进行简单的聚合。像这样: case class Foo(key:String, value:Int) val minPerKey = lotsOfFoos.groupBy(_.key).mapValues(_.minBy(_.value)) 现在我想并行地做同样的事情,但是ParMap没有mapValues函数 为什么会这样,我应该如何做呢?由于在ParMapLike上不存在mapValues,所以剩下两个选项: 只需使用map:.map{case key,value=>

我试图在我分组的集合中进行简单的聚合。像这样:

case class Foo(key:String, value:Int)
val minPerKey = lotsOfFoos.groupBy(_.key).mapValues(_.minBy(_.value))
现在我想并行地做同样的事情,但是ParMap没有mapValues函数


为什么会这样,我应该如何做呢?

由于在ParMapLike上不存在mapValues,所以剩下两个选项:

只需使用map:.map{case key,value=>key->value.minBy\ux.value} 退出并行宇宙:.toMap.mapValues\u0.minBy\u0.value
我不知道为什么mapValues不仅仅在ParMapLike上实现,因为mapValues在ParMapLike上不存在,所以还有两个选项:

只需使用map:.map{case key,value=>key->value.minBy\ux.value} 退出并行宇宙:.toMap.mapValues\u0.minBy\u0.value
我不知道为什么mapValues不仅仅是在ParMapLike上实现的,Scala 2.10为ParMap提供了mapValues


但是将mapValues与ParMap结合使用并没有什么好处。mapValues方法只提供一个新的映射,在读取值时应用函数,实际上不会更改映射中的值。因此,您需要执行一些其他操作,以强制使用映射值创建新映射。

Scala 2.10为ParMap提供了mapValues

但是将mapValues与ParMap结合使用并没有什么好处。mapValues方法只提供一个新的映射,在读取值时应用函数,实际上不会更改映射中的值。因此,您需要执行一些其他操作,强制创建具有映射值的新映射。

我将使用.seq而不是.toMap,因为它具有更好的文档化意图。我将使用.seq而不是.toMap,因为它具有更好的文档化意图。