【发布时间】:2015-10-23 18:09:24
【问题描述】:
我需要在使用广播值的函数中进行一些计算
json_data = text.map(lambda x: json.loads(x))
....
# code to calculate average and generate tuple with json_data['jsontag'] and avgvalue
some rdd filtsubavg with tuples of (jsontag, avgvalue)
V = sc.broadcast(filtsubavg.collect())
com = json_data.map(lambda l:l['jsontag'],l)
res = com.map(lambda (cmtag,cm): get_val(cmtag,cm,V))
如果我需要除以 avgvalue,如何在我的函数中访问 V。
def get_val(jsontag,cm,v):
r1 = cm[jsontag]
r2 = cm[value]/(get corresponding value for jsontag in v)
return (r1,r2)
【问题讨论】:
标签: python json apache-spark pyspark