我有一个表格
的RDDRDD[(String, String, String)]
我应用了一个从第三个元素中提取数据并创建表格的RDD的函数
RDD[(String, String, List[String])]
我希望生成一个最终的RDD,其中List的每个元素都映射到前两个元素。像,
RDD[(String, String, String)] = RDD[(String, String, List[String])].map(case(x, y, z) => (x, y, z._1), (x, y, z._2), ....))
有一种简单的方法吗?
答案 0 :(得分:2)
我相信这应该做你正在寻找的事情
[MaxItems(5)]
public virtual ICollection<OtherPart> OtherParts { get; set; }
答案 1 :(得分:-1)
您似乎在寻找flatMap或flatMapValues(取决于您的转换):
def flatMap[U](f: (T) ⇒ TraversableOnce[U])(implicit arg0: ClassTag[U]): RDD[U]
flatMap:首先将一个函数应用于此RDD的所有元素,然后展平结果,从而返回一个新的RDD。
def flatMapValues[U](f: (V) ⇒ TraversableOnce[U]): RDD[(K, U)]
flatMapValues:通过flatMap函数传递键值对RDD中的每个值,而不更改键;这也保留了原始RDD的分区。