Pyspark-尝试迭代Numpy数组时出错

时间:2018-10-02 17:44:57

标签: numpy apache-spark pyspark rdd

我有一个RDD,ID为键,numpy数组为值。

对于数组中的每个值,我想创建另一个RDD,该RDD为大于0的值提供1,为等于0的值提供0。

我尝试执行以下代码:

RDD2 = RDD1.foreach(lambda x: 1 if np.nditer(x) > 0 else 0)/
.map(lambda x: (x[0],(x[1])))

但是它给了我以下错误:AttributeError:'NoneType'对象没有属性'map',而且我不确定为什么

有什么主意我该如何解决?

谢谢

1 个答案:

答案 0 :(得分:0)

万一有人想知道,这就是我最终解决它的方式:

RDD2 = RDD1.mapValues(lambda y: map(lambda x: 1 if x > 0 else 0, y))