二重ループをなくす方法
たまたま見つけたブログ
最近、一度見つけた記事を忘れる/見つけられない、ことが多発しているのでメモ
expand.grid関数・outer関数を使って2重forループを美しく書く - My Life as a Mock Quant
今更ながら、ブログはこういうときに便利と実感
> x.seq <- 1:3 > expand.grid(x.seq, x.seq) Var1 Var2 1 1 1 2 2 1 3 3 1 4 1 2 5 2 2 6 3 2 7 1 3 8 2 3 9 3 3 > apply(expand.grid(x.seq, x.seq), 1, prod) [1] 1 2 3 2 4 6 3 6 9
とするようだ
outer関数はRjpwikでも良く見るけど、expand.gridは初出に思った