Error: Value min is not a member of (Int, Int)
Error: Value min is not a member of (Int, Int)
我正在尝试生成包含元组数组的 RDD,元组数组以国家名称作为第一个元素,元组的最小整数作为第二个元素。
我这里有这段代码。
val test = sc.parallelize(Array(("US", (4,2)), ("France", (1,2)), ("Italy", (2,3))))
我想将变量存储为如下所示的值:
Array( ("US", 2), ("France", 1), ("Italy", 2) )
我尝试使用此代码,但它产生了 'Value min is not a member of (Int, Int)' 错误。
val test1 = test.map(x => (x._1, x._2.min))
如何获得 Tuple2[Int, Int]
的最小值?
要计算元组 (x, y)
中数字元素的最小值,您可以使用 x min y
:
val test = sc.parallelize(Array(("US", (4,2)), ("France", (1,2)), ("Italy", (2,3))))
test.map(t => (t._1, t._2._1 min t._2._2)).collect
// res1: Array[(String, Int)] = Array((US,2), (France,1), (Italy,2))
为了可读性,另一种方法是使用case
偏函数,如下:
test.map{ case (country, (t1, t2)) => (country, t1 min t2) }
我正在尝试生成包含元组数组的 RDD,元组数组以国家名称作为第一个元素,元组的最小整数作为第二个元素。
我这里有这段代码。
val test = sc.parallelize(Array(("US", (4,2)), ("France", (1,2)), ("Italy", (2,3))))
我想将变量存储为如下所示的值:
Array( ("US", 2), ("France", 1), ("Italy", 2) )
我尝试使用此代码,但它产生了 'Value min is not a member of (Int, Int)' 错误。
val test1 = test.map(x => (x._1, x._2.min))
如何获得 Tuple2[Int, Int]
的最小值?
要计算元组 (x, y)
中数字元素的最小值,您可以使用 x min y
:
val test = sc.parallelize(Array(("US", (4,2)), ("France", (1,2)), ("Italy", (2,3))))
test.map(t => (t._1, t._2._1 min t._2._2)).collect
// res1: Array[(String, Int)] = Array((US,2), (France,1), (Italy,2))
为了可读性,另一种方法是使用case
偏函数,如下:
test.map{ case (country, (t1, t2)) => (country, t1 min t2) }