使用 PySpark 的 Big Data 基礎
Upendra Devisetty
Science Analyst, CyVerse
Lambda 函式是 Python 中的匿名函式
功能強大,常與 map()、filter() 高效搭配
類似 def,可建立之後呼叫的函式
傳回沒有名稱的函式(也就是匿名)
可內嵌函式定義,或延後執行某段程式碼
lambda arguments: expression
double = lambda x: x * 2
print(double(3))
6
def cube(x):
return x ** 3
g = lambda x: x ** 3
print(g(10))
print(cube(10))
1000
1000
lambda 不需要 return 陳述式
lambda 函式可放在任何地方
map() 會將函式套用到輸入串列的所有項目
map() 的一般語法
map(function, list)
items = [1, 2, 3, 4]
list(map(lambda x: x + 2 , items))
[3, 4, 5, 6]
filter() 接受一個函式與一個串列,回傳該函式判斷為 true 的新串列
filter() 的一般語法
filter(function, list)
items = [1, 2, 3, 4]
list(filter(lambda x: (x%2 != 0), items))
[1, 3]
使用 PySpark 的 Big Data 基礎