2015-12-04 15 views
5

Python ile kıvılcım kullanıyorum ve aşağıdaki gibi bir filtre sınırlaması vardır: my_func ben kendi mantığına göre RDD öğeleri filtrelemek için yazdığı bir yöntemdirFiltre yöntemi için pyspark'ta kullanıcı tanımlı yöntemlere ek parametreler nasıl iletilir?

my_rdd.filter(my_func) 

. aşağıdaki gibi ben my_func tanımlamış:

def my_func(my_item): 

{ 
... 
} 

Şimdi, bunu gider öğenin yanında, my_func için başka ayrı parametre geçmek istiyorum. Bunu nasıl yapabilirim? My_item'in my_rdd'den gelen bir öğeye atıfta bulunacağını ve kendi parametremimi my_func için ek bir parametre olarak nasıl değiştirebileceğimi biliyorum (my_param diyelim)?

+1

Olası kopyalar [Spark RDD - Ekstra argümanlarla Haritalama] (http://stackoverflow.com/questions/33019420/spark-rdd -Haritalama-ile-ekstra argümanlar) – zero323

cevap

8

lambda sözdizimi aşağıda kullanma ve ekstra parametreler ile my_func değiştirin:

my_rdd.filter(lambda row: my_func(row,extra_parameter)) 
ait
İlgili konular