我从两个RDD开始,一个带有userID,然后是“SHL..”,还有一个带有userID和其他信息
因此,在将两个RDD连接在一起之后,我现在有了以下格式的数据:
(u'5839477', (u'SHL UNRESTRICTED',(u'AGBAMA,JAMES', u'MEDALLION TAXI DRIVER',u'12/27/2020', u'08/22/2019', u'13:20')))]
第一个字段是userID,第二个字段是关于它们的信息。我需要看看 有多少用户同时拥有“SHL UNRESTRICTED”和“MEDALLION TAXI DRIVER”。我想我应该在.join之后格式化数据。我遇到的问题是能够访问第二个字段中的特定字段
使用自Spark 1.6以来引入的数据帧将更容易表达这一点。你使用RDD有什么特别的原因吗
如果不是,从一开始就开始使用数据帧,或者通过指定模式将现有RDD转换为数据帧。像这样:
另外,您可以考虑将结构展平,这样就不需要在嵌套的列中进行挖掘
或者,如果您真的必须使用RDD,那么您可以像访问嵌套集合一样访问元素:
请注意,这段代码的表现力要差得多(对代码的读者来说,
x[1][1][1]
有什么意义?)。我绝对建议您在数据结构中添加名称相关问题 更多 >
编程相关推荐