Spark 的 RDD 中的两个groupBy方法声明为:
def groupBy[K](f: T => K)(implicit kt: ClassTag[K]): RDD[(K, Iterable[T])]
def groupBy[K](f: T => K, numPartitions: Int)(implicit kt: ClassTag[K]): RDD[(K, Iterable[T])]
我将函数 f 定义为:
def f(x: Int): Int = x % 2
我可以直接传给f第一个groupByas rdd.groupBy(f)。
为什么我不能直接传到f第二个groupByas rdd.groupBy(f, 10)?我必须使用rdd.groupBy(f(_), 10)or rdd.groupBy(x => f(x), 10)。