2015-12-04 14 views
5

Używam iskrę z python i mam ograniczenie filtr następująco:Jak przekazać dodatkowe parametry do metod zdefiniowanych przez użytkownika w pyspark dla metody filtra?

my_rdd.filter(my_func) 

my_func gdzie jest metoda pisałem filtrować elementy RDD na podstawie własnej logiki. Mam my_func zdefiniowane następująco:

def my_func(my_item): 

{ 
... 
} 

Teraz chcę przejść do innej osobny parametr my_func, oprócz elementu, który idzie do niego. Jak mogę to zrobić? Wiem, że my_item będzie odwoływać się do jednego elementu pochodzącego z my_rdd i jak mogę przekazać mój własny parametr (powiedzmy my_param) jako dodatkowy parametr do my_func?

+1

Możliwy duplikat [Spark RDD - Mapowanie z dodatkowych argumentów] (http://stackoverflow.com/questions/33019420/spark-rdd -mapping-z dodatkowymi argumentami) – zero323

Odpowiedz

8

Korzystanie poniżej składnią lambda i zmodyfikować my_func z dodatkowymi parametrami:

my_rdd.filter(lambda row: my_func(row,extra_parameter)) 
Powiązane problemy