Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何使用Pyspark将一个rdd映射到另一个rdd?_Apache Spark_Pyspark_Rdd - Fatal编程技术网

Apache spark 如何使用Pyspark将一个rdd映射到另一个rdd?

Apache spark 如何使用Pyspark将一个rdd映射到另一个rdd?,apache-spark,pyspark,rdd,Apache Spark,Pyspark,Rdd,我有rdd1,其中有标签(0,1,4),还有另一个rdd2,其中有文本。我想将rdd1映射为rdd2,这样rdd1的row1映射为rdd2的row1,依此类推 我试过: rdd2.join(rdd1.map(lambda x: (x[0], x[0:]))) 这给了我一个错误: RDD is empty. 有人能带我到这里吗? 示例输出:rdd1-标签和rdd2文本 如果您有rdd1as val rdd1 = sc.parallelize(List(0,0,4,1,4,1)) val rd

我有
rdd1
,其中有
标签(0,1,4)
,还有另一个
rdd2
,其中有文本。我想将
rdd1
映射为
rdd2
,这样
rdd1
row1
映射为
rdd2
row1
,依此类推

我试过:

rdd2.join(rdd1.map(lambda x: (x[0], x[0:])))
这给了我一个错误:

RDD is empty.
有人能带我到这里吗? 示例输出:rdd1-标签和rdd2文本


如果您有
rdd1
as

val rdd1 = sc.parallelize(List(0,0,4,1,4,1))
val rdd2 = sc.parallelize(List("i hate painting i have white paint all over my hands.",
  "Bawww I need a haircut  No1 could fit me in before work tonight. Sigh.",
  "I had a great day",
  "what is life.",
  "He sings so good",
  "i need to go to sleep  ....goodnight"))
rdd2
as

val rdd1 = sc.parallelize(List(0,0,4,1,4,1))
val rdd2 = sc.parallelize(List("i hate painting i have white paint all over my hands.",
  "Bawww I need a haircut  No1 could fit me in before work tonight. Sigh.",
  "I had a great day",
  "what is life.",
  "He sings so good",
  "i need to go to sleep  ....goodnight"))
我想将rdd1映射到rdd2,这样rdd1的行1映射到rdd2的行1,依此类推

使用压缩功能

一个简单的
zip
功能应该满足您的要求

rdd1.zip(rdd2)
这将使您的输出为

(0,i hate painting i have white paint all over my hands.)
(0,Bawww I need a haircut  No1 could fit me in before work tonight. Sigh.)
(4,I had a great day)
(1,what is life.)
(4,He sings so good)
(1,i need to go to sleep  ....goodnight)
zipWithIndex和join

这种方法将提供与上面使用
zip
解释的相同的输出(而且这种方法也很昂贵)


我希望答案有帮助

0,1,4在同一行吗?rdd2的值是多少?您的预期输出是什么?rdd2有文本。我想将预测的标签从第1行对应地从rdd1映射到rdd2。不同的行有不同的标签。0,1,4是三个类别您能通过给出示例rdd2和预期输出来进一步澄清吗?以下是我正在寻找的输出类型:rdd1 rdd2 0我讨厌绘画我手上涂满了白色油漆1什么是生活?0我需要一部新电话。。。。。我还需要去睡觉!明天去学校。我今天过得很愉快,我想该睡觉了。早上送我的朋友们回俄亥俄州我需要去睡觉。。。。goodnight@RahulAnand你能回答你的问题并把这个示例输出作为格式化代码发布吗?这很难理解为一个评论。