python/spark中标签数组和数据数组的RDD
我有两个长度相同的python数组。它们是通过读取两个单独的文本文件生成的。一个代表标签;让它被称为“labelArray”。另一个是数据数组数组;让它被称为“dataArray”。我想把它们转换成标签点的RDD对象。我该怎么做 我假设源dataArray和LablerRay是代码中描述的列表。您可以尝试以下方法来创建合并的RDDpython/spark中标签数组和数据数组的RDD,python,apache-spark,pyspark,Python,Apache Spark,Pyspark,我有两个长度相同的python数组。它们是通过读取两个单独的文本文件生成的。一个代表标签;让它被称为“labelArray”。另一个是数据数组数组;让它被称为“dataArray”。我想把它们转换成标签点的RDD对象。我该怎么做 我假设源dataArray和LablerRay是代码中描述的列表。您可以尝试以下方法来创建合并的RDD >>> lableArray=['l1','l2','l3'] >>> dataArray=['d1','d2','d3'] &g
>>> lableArray=['l1','l2','l3']
>>> dataArray=['d1','d2','d3']
>>> rdd2=sc.parallelize(lableArray)
>>> rdd1=sc.parallelize(dataArray)
>>> rdd1.collect()
['d1', 'd2', 'd3']
>>> rdd2.collect()
['l1', 'l2', 'l3']
>>> rdd=rdd2.zipWithIndex().map(lambda x:(x[1],x[0])).join(rdd1.zipWithIndex().map(lambda y:(y[1],y[0]))).map(lambda x:x[1])
>>> rdd.collect()
[('l1', 'd1'), ('l2', 'd2'), ('l3', 'd3')]
这里的“rdd”是通过组合dataArray和LablerRay创建的最终结果。我假设源dataArray和LablerRay是代码中描述的列表。您可以尝试以下操作来创建合并的rdd
>>> lableArray=['l1','l2','l3']
>>> dataArray=['d1','d2','d3']
>>> rdd2=sc.parallelize(lableArray)
>>> rdd1=sc.parallelize(dataArray)
>>> rdd1.collect()
['d1', 'd2', 'd3']
>>> rdd2.collect()
['l1', 'l2', 'l3']
>>> rdd=rdd2.zipWithIndex().map(lambda x:(x[1],x[0])).join(rdd1.zipWithIndex().map(lambda y:(y[1],y[0]))).map(lambda x:x[1])
>>> rdd.collect()
[('l1', 'd1'), ('l2', 'd2'), ('l3', 'd3')]
此处“rdd”是通过组合dataArray和Lablerray创建的最终结果。Spark有一个函数takeSample,可以将两个rdd合并到一个rdd。Spark有一个函数takeSample,可以将两个rdd合并到一个rdd。显示每个数据数组的前几行。然后我们可以帮助编写代码。显示每个数据数组的前几行。然后我们可以帮助编写代码。