Итак, у меня есть список
list = [11, 5, 7, 2, 18]
и RDD списка
RDD = sc.parallelize([5, 4, 3, 2, 6])
, и я хочу, чтобы функция фильтрации RDD возвращала каждый элемент при суммировании с соответствующий элемент в списке имеет сумму, меньшую или равную 10. Итак, в этом примере я хочу, чтобы он возвращал RDD с элементами 4, 3, 2. Как мне это сделать?
Изменить: Итак, я попытался превратить RDD в пару значений ключа, где ключом является индекс, затем я делаю это
def compare(x, list_):
i = x[0]
if x[1] + list_[i]) <= 10:
return x
rdd_new = rdd.filter(compare)
, но, похоже, это не работает, как когда я rdd_new.collect()
я получаю кучу ошибки