簡體   English   中英

Scala和Spark中的“ zip”方法是什么?

[英]What are “zip” methods in Scala and Spark?

在Scala,Spark和許多其他“大數據”類型的框架,語言,庫中,我看到的方法名為“ zip* ”。 例如,在Scala中, List類型具有固有的zipWithIndex方法,您可以像這樣使用:

val listOfNames : List[String] = getSomehow()
for((name,i) <- listOfNames.zipWithIndex) {
  println(s"Names #${i+1}: ${name}")
}

同樣,Spark具有RDD方法,例如zipzipPartitions等。

但是方法名稱“ zip”完全讓我失望。 這是計算還是離散數學的概念? 所有這些名稱中帶有“ zip ”的方法的動機是什么?

它們之所以稱為zip,是因為您要像拉鏈一樣壓縮兩個數據集。

要對其進行可視化,請獲取兩個數據集:

x = [1,2,3,4,5,6]
y = [a,b,c,d,e,f]

然后將它們拉在一起

   1 a
   2 b
   3 c
  4   d
 5     e
6       f

當您向下移動數據集時,我把額外的間距只是給了拉鏈幻覺:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM