Jupyter Notebooks Spark RDD拆分功能-删除括号



我从以前的RDD中提取了一些"列",然后想要拆分第二个元素。Spark将其包裹在支架中。如何将它们放在一行中(取消它们的标签,所以去掉括号(?我花了大约10个小时来寻找解决方案。。。需要在不使用数据帧的情况下完成。感谢

separatedRDD =  extractedRDD.map(lambda y: (y[0],y[1].split(' ' , 1),y[2],y[3]))
separatedRDD.take(2) # get output
[(u'2014-03-15:10:10:20',
[u'Sorrento', u'F41L'],  ############### those are brackets I am talking about...
u'8cc3b47e-bd01-4482-b500-28f2342679af',
u'33.6894754264'),
(u'2014-03-15:10:10:20',
[u'MeeToo', u'1.0'],
u'ef8c7564-0a1a-4650-a655-c8bbd5f8f943',
u'37.4321088904')] 

这是一个列表,所以你只需要通过一个接一个地拉它的元素来压平它(假设大小总是小到2(:

separatedRDD.map(lambda y: (y[0], y[1][0], y[1][1], y[2])).collect()

结果:

[('2014-03-15:10:10:20',
'Sorrento',
'F41L',
'8cc3b47e-bd01-4482-b500-28f2342679af'),
('2014-03-15:10:10:20',
'MeeToo',
'1.0',
'ef8c7564-0a1a-4650-a655-c8bbd5f8f943')]

最新更新