私は非常に大きなデータセットを扱っており、データを R に持ち込まずに、可能な限り H2O に保持したいと考えています。
を関数に渡すたびにH2O Frame
、フレームに加えた変更が関数の外部に反映されないことに気付きました。Frame by Reference を渡す方法はありますか?
そうでない場合、すべてのフレームをコピーして関数内の元のフレームを変更する最良の方法は何ですか?
別の関連する質問: フレームを他の関数 (読み取り専用) に渡すと、H2O 側で余分なコピーが作成されますか? 私のデータセットは 30GB から 100GB です。そのため、それらを渡してもメモリの問題が発生しないようにする必要があります。
mod = function(fdx) {
fdx[,"x"] = -1
}
d = data.frame(x = rnorm(100),y=rnorm(100))
dx = as.h2o(d)
dx[1,]
mod(dx)
dx[1,] # does not change the original value of x
> dx[1,]
x y
1 0.3114706 0.9523058
> dx[1,]
x y
1 0.3114706 0.9523058
ありがとう!