gpt4 book ai didi

apache-spark - Apache Spark 中的 map 与过滤器

转载 作者:行者123 更新时间:2023-12-05 08:41:43 24 4
gpt4 key购买 nike

来自 Apache Spark 的官方文档:

http://spark.apache.org/docs/latest/rdd-programming-guide.html

map(func):Return a new distributed dataset formed by passing each element of the source through a function func.

filter(func) Return a new dataset formed by selecting those elements of the source on which func returns true.

粗体字,区别很大吗?真的有区别吗?

最佳答案

它们有不同的用途。如果我们查看 map 的(简化的)方法定义:

def map[U](func: (T) ⇒ U): Dataset[U]

期望给定一个 T 类型的元素,你产生一个 U 类型的元素,对于所有 T,产生一个 数据集[U]。换句话说,一种将类型 T 的元素转换为类型 U 的方法。

另一方面,过滤器:

def filter(func: (T) ⇒ Boolean): Dataset[T]

期望给定一个 T 类型的元素,您提供一个 Boolean 值,它表示是否应该在结果 Dataset[T 中返回给定元素] 或不是(通常称为 Predicate )。

map 的一个具体例子可以是:

val someDataSet: DataSet[String] = ???
val transformedDataSet: DataSet[Int] = someDataSet.map(str => str.toInt)

对于过滤器:

val someDataSet: DataSet[String] = ???
val transformedDataSet: DataSet[String] = someDataSet.filter(str => str.length > 5)

关于apache-spark - Apache Spark 中的 map 与过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48129981/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com