Szukaj…


Wbudowane funkcje wyższego rzędu

R ma zestaw wbudowanych funkcji wyższego rzędu: Map , Reduce , Filter , Find , Position , Negate .

Map stosuje daną funkcję do listy wartości:

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

Reduce sukcesywnie stosuje funkcję binarną do listy wartości w sposób rekurencyjny.

Reduce(`*`, 1:10)

Filter podaną funkcję predykatu, a lista wartości zwraca przefiltrowaną listę zawierającą tylko wartości, dla których funkcja predykatu ma wartość PRAWDA.

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

Find podając funkcję predykatu, a lista wartości zwraca pierwszą wartość, dla której funkcja predykatu ma wartość PRAWDA.

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

Position otrzymująca funkcję predykatu, a lista wartości zwraca pozycję pierwszej wartości na liście, dla której funkcja predykatu jest PRAWDA.

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

Negate odwraca funkcję predykatu, co powoduje, że zwraca FALSE dla wartości, dla których zwrócił wartość PRAWDA i odwrotnie.

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


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow