scala - Scala 和 Spark 中的“zip”方法是什么?
问题描述
在 Scala、Spark 和许多其他“大数据”类型的框架、语言、库中,我看到名为“ zip*
”的方法。例如,在 Scala 中,List
类型有一个固有的zipWithIndex
方法,你可以像这样使用:
val listOfNames : List[String] = getSomehow()
for((name,i) <- listOfNames.zipWithIndex) {
println(s"Names #${i+1}: ${name}")
}
同样,Spark 也有类似,等的RDD
方法。zip
zipPartitions
但是方法名称“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
当您向下移动数据集时,我放置了额外的间距只会产生拉链错觉:)
推荐阅读
- python-3.x - 如何获取网页抓取的链接
- azure-devops - Azure DevOps Pipeline 的另一个说明:-d--- 和 -a--- 模式
- asp.net - 程序集使用 'System.Runtime' 版本 = 4.2.2.0,它的版本高于引用的程序集 'System.Runtime' 版本 = 4.1.2.0
- azure - 错误 CS0122:“TimelineEditor.window”由于其保护级别而无法访问
- java - 如何在 Java 中将多个网格从文本文件读取到二维数组?
- r - R中线性回归的MH算法的实现
- r - 能否获得 R 的 TidyModel 框架中随机森林模型的袋外误差?
- python - 在python中查找局域网上另一台计算机的IP地址
- http - PlayFramework 在长时间运行的请求中导致 502 Bad gateway
- makefile - jamfile:将文件复制到不同的目录