I encountered the following in R:
x=x+y%o%c(1.5,1.5)
I am wondering what is the meaning of %o%
here. I tried googling but didn't have much luck
I encountered the following in R:
x=x+y%o%c(1.5,1.5)
I am wondering what is the meaning of %o%
here. I tried googling but didn't have much luck
There are a number of shortcuts in R that use the %...%
notation. %o%
is the outer product of arrays
> 1:3 %o% 1:3
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 4 6
[3,] 3 6 9
There are a number of others, my most used is %in%
:
3 %in% c(1,2,3,4) #TRUE
5 %in% c(1,2,3,4) #FALSE
3.4 %in% c(1,2,3,4) #FALSE
There are a few others, I don't know them all off the top of my head. But when you encounter them, you can check for documentation by using backticks around the %o%
like ?`%o%`
, or quotes ?'%o%'
(or ?"%o%"
).
They are obviously difficult to google because of the percent sign.
An intuition. %o%
is outer product, look at the example, it returns a matrix. a[1] * b
is the first row of matrix, a[2] * b
is the second row of the matrix.
> a = c(1, 2, 3)
> b = c(0, 2, 4)
> a %o% b
[,1] [,2] [,3]
[1,] 0 2 4
[2,] 0 4 8
[3,] 0 6 12