Coursera Learner working on a presentation with Coursera logo and
Coursera Learner working on a presentation with Coursera logo and

Функция apply() является абсолютно одной из самых ценных. Я боялся ее некоторое время и не хотел ее использовать. Тем не менее, это делает код настолько быстрым в написании, настолько опытным, что мы не можем нести расходы за то, чтобы не использовать его. На случай, если вы похожи на меня, что вы не будете использовать применять на том основании, что это вызывает тревогу, просмотрел сопровождающие строки, он будет поддерживать вас. Вы должны понимать, как использовать apply(), когда все сказано в готовом виде, с домашней производительностью или с несколькими параметрами? В этот момент, перейдите к просмотру сопроводительных моделей.

Функция apply() известна как невероятно ценная для повышения скорости нашего кода, когда нам необходимо работать с несколькими мощностями в сети или векторе. Я использую ее, но, как правило, не имею ни малейшего представления о том, как ее использовать.

Что здесь происходит?

apply() – это работа на R, которая позволяет делать быстрые задачи на решётке, векторе или экспозиции. Задачи должны быть возможны на линиях, сегментах или даже на двух.

Как это может сработать?

Пример предельно прост: apply(переменная, край, работа).

– переменная – это переменная, к которой нужно применить емкость.

– Кромка определяет, при какой вероятности необходимо применить нажим (кромка = 1), сегмент (кромка = 2) или для каждой детали (кромка = 1:2). Кромка может быть гораздо более примечательной, чем 2, на случай off, когда мы работаем с факторами измерения более заметными, чем с двумя.

– Работа – это способность, которую вы должны применить к компонентам вашей переменной.

Так как я думаю, что модель более понятна, чем все остальное, вот наиболее значимое руководство для понимания способности apply()

Введение:

#Матрица, над которой мы будем работать:

a = матрица(c(1:15), nrow = 5 , ncol = 3)


# будет применять функцию mean ко всем элементам каждой rowapply
(a, 1, mean)
# [1] 6 7 8 9 10

# будет применять среднее значение функции ко всем элементам каждой колонки
(a, 2, mean)
# [1] 3 8 13

# будет применять среднее значение функции ко всем элементам каждого столбца и каждой строки, т.е. к каждому элементу
(a, 1:2, среднее)
 # [,1] [,2] [,3]
 # [1,] 1 6 11#
 [2,] 2 7 12#
 [3,] 3 8 13#
 [4,] 4 9 14#
 [5,] 5 10 15

Совсем недавно мы сделали снимок по разным краям, чтобы показать основные мыслимые результаты. Как бы то ни было, как я уже говорил, мы также можем сделать снимок различных факторов, например, различного измерения 3:

#apply() для массива другого измерения :
a = array(1:8, dim = c(2,2,2))
apply(a, 3, sum)

# , , 1##    
  [,1] [,2]
# [1,]    1    3#
 [2,]    2    4##
 , , 2##      
 [,1]
 [,2]# [1,]    5    7#
 [2,]    6    8

Используйте самодельную функцию:

Мы также можем использовать нашу собственную функцию. Например, мы воспроизводим сумму функции (абсолютно бесполезно, но давайте сделаем это проще!).

f1 = function(x){
 return(sum(x))}apply
(a, 1, f1)