У меня есть список элементов с некоторыми значениями в нем.Как сопоставить функцию двух аргументов в списке?
Я хочу сопоставить его функции и создать список, содержащий значения, рассчитанные путем применения этой двух аргументов к последовательным значениям в первом списке.
В этом списке будет один элемент меньше.
Функция отображения должна принимать по два аргумента за раз.
EDIT
Пример
функция два аргумента я использую довольно сложна, поэтому для простоты предположим, что это будет функция, которая вычисляется среднее из двух чисел.
если у меня есть список: [3 8 11 14 19 20 88]
.
Можно мне два написать функцию, которая отображает мою average
функции, которая для (average 3 8)
даст 5.5
для (average 8 11)
дадут 9.5
и (average 11 14)
дадут 12.5
и так далее. ..
при применении среднего значения к двум последовательным значениям списка при at ime должен дать мне.
[5.5 9.5 12.5 16.5 19.5 54.0]
как результат.
map применяет единственную функцию аргумента к целому списку и создает новый список с таким же количеством элементов.
Что я хочу, это способ применить мою функцию, которая принимает два аргумента, чтобы взять два последовательных за один раз, применить к ним мою функцию и добавить результат в новый список.
Вы можете добавить простой пример? –
Вы имеете в виду сокращение (http://clojure.github.io/clojure/clojure.core-api.html#clojure.core/reduce)? –