lapply
コードをより簡単に最適化し、結果の複数の要素を の列として割り当てたい場合がありますtibble
。
でこれを行う方法を知っています。必要data.table
な手順は次のとおりです。
data <- data.table(x=1:9)
data[, c("y","z") := lapply(2:3, function(p){ x^p })]
# x y z
#1: 1 1 1
#2: 2 4 8
#3: 3 9 27
#4: 4 16 64
#5: 5 25 125
今、私は で同じことをしたいと思いますdplyr
。私はすでにいくつかの代替手段を試しました:
data <- tibble(x=1:9)
data <- data %>%
mutate(c("y","z")=lapply(2:3, function(p){ x^p }))
しかし、それはうまくいきません。