array <- array(c(1:24), dim = c(4, 3, 2))
array
# , , 1
#
# [,1] [,2] [,3]
# [1,] 1 5 9
# [2,] 2 6 10
# [3,] 3 7 11
# [4,] 4 8 12
#
# , , 2
#
# [,1] [,2] [,3]
# [1,] 13 17 21
# [2,] 14 18 22
# [3,] 15 19 23
# [4,] 16 20 24
add_one_hundred <- function(x) c(x, 100)
crunch:::applyAgainst(array, 1, add_one_hundred)
# , , 1
#
# [,1] [,2] [,3]
# [1,] 1 5 9
# [2,] 2 6 10
# [3,] 3 7 11
# [4,] 4 8 12
# [5,] 100 100 100
#
# , , 2
#
# [,1] [,2] [,3]
# [1,] 13 17 21
# [2,] 14 18 22
# [3,] 15 19 23
# [4,] 16 20 24
# [5,] 100 100 100
crunch:::applyAgainst(array, 2, add_one_hundred)
# , , 1
#
# [,1] [,2] [,3] [,4]
# [1,] 1 5 9 100
# [2,] 2 6 10 100
# [3,] 3 7 11 100
# [4,] 4 8 12 100
#
# , , 2
#
# [,1] [,2] [,3] [,4]
# [1,] 13 17 21 100
# [2,] 14 18 22 100
# [3,] 15 19 23 100
# [4,] 16 20 24 100
crunch:::applyAgainst(array, 3, add_one_hundred)
# , , 1
#
# [,1] [,2] [,3]
# [1,] 1 5 9
# [2,] 2 6 10
# [3,] 3 7 11
# [4,] 4 8 12
#
# , , 2
#
# [,1] [,2] [,3]
# [1,] 13 17 21
# [2,] 14 18 22
# [3,] 15 19 23
# [4,] 16 20 24
#
# , , 3
#
# [,1] [,2] [,3]
# [1,] 100 100 100
# [2,] 100 100 100
# [3,] 100 100 100
# [4,] 100 100 100
Run the code above in your browser using DataLab