我在pyspark中有一个数据框,如下所示
123,2016-09-21,[s3://mybucket/1/,s3://mybucket/2/,s3://mybucket/3/]
我迭代如下:
for path in s3_list:
for i in range(len(path.S3_path)):
model(path.S3_path[i].strip())
print "the looping number"+ str(i)
model1(path.Id.strip(),path.dt.strip())
我需要一些关于如何使用Flatmap和Map执行此操作的帮助。以下是我开始使用的代码:
Slist = lambda s3_list: (y for y in s3_list)
S3path= lambda path: (model(path.S3_path[i].strip()) for i in xrange(len(path.S3_path)))
sc.parallelize(s3_list).flatMap(Slist).flatMap(S3path)
如何在上面的代码中调用函数model1?任何帮助将不胜感激。