內建高階函式

R 有一組內建的高階函式:MapReduceFilterFindPositionNegate

Map 將給定函式應用於值列表:

words <- list("this", "is", "an", "example")
Map(toupper, words)

Reduce 以遞迴方式將二進位制函式連續應用於值列表。

Reduce(`*`, 1:10)

給定謂詞函式和值列表的 Filter 返回一個過濾列表,該列表僅包含謂詞函式為 TRUE 的值。

Filter(is.character, list(1,"a",2,"b",3,"c"))

Find 給出謂詞函式和值列表返回謂詞函式為 TRUE 的第一個值。

Find(is.character, list(1,"a",2,"b",3,"c"))

Position 給定謂詞函式和值列表返回謂詞函式為 TRUE 的列表中第一個值的位置。

Position(is.character, list(1,"a",2,"b",3,"c"))

Negate 反轉謂詞函式,使其返回值為 FALSE,返回 TRUE,反之亦然。

is.noncharacter <- Negate(is.character)
is.noncharacter("a")
is.noncharacter(mean)