View source: R/cube-transforms.R
| applyAgainst | R Documentation | 
Similar to other apply functions, this takes an array and applies the
function against the  dimensions (specified in the MARGIN argument). These
dimensions must be a single number (unlike many apply functions). See the
examples below, where we use the function add_one_hundred to add 100 on
to the end of each MARGIN.
applyAgainst(X, MARGIN, FUN, ...)
X | 
 an array  | 
MARGIN | 
 the dimension to apply the function against  | 
FUN | 
 the function to be applied  | 
... | 
 optional arguments to 'FUN“  | 
FUN can be any function that takes a vector and returns a vector, but one
common use case is a function that adds new entries to the vector,
effectively expanding the array in the dimension given.
an array with the function applied
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
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.