Join 如何连接两个RDD';在Pyspark中是否有特定列?

Join 如何连接两个RDD';在Pyspark中是否有特定列?,join,pyspark,rdd,Join,Pyspark,Rdd,如何将两个RDD与item_id列连接起来 ## RDD1 = spark.createDataFrame([('45QNN', 867), ('45QNN', 867), ('45QNN', 900 )] , ['id', 'item_id']) RDD1=RDD1.rdd RDD2 = spark.createDataFrame([('

如何将两个RDD与item_id列连接起来

 ##
  RDD1 = spark.createDataFrame([('45QNN', 867),
                        ('45QNN', 867),
                        ('45QNN',  900  )]
                       , ['id', 'item_id'])
 RDD1=RDD1.rdd

 RDD2 = spark.createDataFrame([('867',229000,'house',90),
                        ('900',350000,'apartment',120)]
                       , ['item_id', 'amount','parent','size'])
 RDD2=RDD2.rdd
按照建议 我确实尝试过,但它得到的数据集是空的

innerJoinedRdd = RDD1.join(RDD2)
or
RDD2.join(RDD1, RDD1("item_id")==RDD2("item_id")).take(5)

我需要所有列,除了父列。请提供帮助?

可能重复的解决方案我尝试了解决方案,但rdd1不起作用。join(rdd2)
join
假设第一个“列”是join键。您必须映射第一个
rdd
,才能更改元素的顺序。尝试
rdd1.map(lambdax:(x[1],x[0])。加入(rdd2)
。还有,为什么要使用
rdd
?只需使用数据框:
df1.join(df2,on=“item\u id”)
谢谢,但仍然不起作用。[]这就是我得到的。我有一个大数据集,我必须使用rdd。一个rdd是字符串,另一个是int。请尝试:
rdd1.map(lambda x:(str(x[1]),x[0])。join(rdd2)
。我有一个大数据集,我必须使用RDD——这毫无意义-