R Language
Funktionale Programmierung
Suche…
Integrierte Funktionen höherer Ordnung
R hat eine Reihe von in Funktionen höherer Ordnung aufgebaut: Map
, Reduce
, Filter
, Find
, Position
, Negate
.
Map
wendet eine bestimmte Funktion auf eine Liste von Werten an:
words <- list("this", "is", "an", "example")
Map(toupper, words)
Reduce
eine binäre Funktion auf eine Liste von Werten rekursiv angewendet.
Reduce(`*`, 1:10)
Filter
eine Prädikatfunktion und eine Liste mit Werten filtern, wird eine gefilterte Liste zurückgegeben, die nur Werte enthält, für die die Prädikatfunktion TRUE ist.
Filter(is.character, list(1,"a",2,"b",3,"c"))
Find
gegebene Prädikatsfunktion und eine Liste von Werten gibt den ersten Wert zurück, für den die Prädikatsfunktion WAHR ist.
Find(is.character, list(1,"a",2,"b",3,"c"))
Position
die eine Prädikatsfunktion und eine Liste mit Werten gegeben hat, gibt die Position des ersten Werts in der Liste zurück, für den die Prädikatfunktion WAHR ist.
Position(is.character, list(1,"a",2,"b",3,"c"))
Negate
invertiert eine Prädikatsfunktion und gibt für Werte, bei denen TRUE zurückgegeben wurde, FALSE zurück und umgekehrt.
is.noncharacter <- Negate(is.character)
is.noncharacter("a")
is.noncharacter(mean)