我有一些对cw(整数i,字符串词)与i在文本文件中出现词的次数对。
我只想为每对具有1个固定数字的新对c1(整数i,1)。
看起来确实很琐碎,但我还不了解map / mapToPair函数的实际工作方式。
JavaPairRDD<Integer, Integer> c1 = cw.map(??? -> new Tuple2<Integer, Integer>(??, 1));
我正在使用Java-8。
如果我对您的理解正确,那么您在JavaPairRDD之下。
JavaPairRDD<Integer, String> cw = ...;
现在,您要在JavaPairRDD下面创建第二个值为1的值。
JavaPairRDD<Integer, Integer> c1;
为了做到这一点,首先您必须从cw
JavaPairRDD中提取JavaRDD,为此,您必须调用map
如下函数。我们将从配对中提取第一个值。
JavaRDD<Integer> cw1 = cw.map(tuple -> tuple._1());
现在,您将使用mapToPair
以下函数从JavaRDD创建新的JavaPairRDD 。
JavaPairRDD<Integer, Integer> c1 = cw1.mapToPair(i -> new Tuple2<Integer, Integer>(i, 1));
在单行中,您可以像这样写
JavaPairRDD<Integer, Integer> c1 = cw.map(tuple -> tuple._1()).mapToPair(i -> new Tuple2<Integer, Integer>(i, 1));
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句