行列とビッグ行列のコピー
big.matrix オブジェクトをコピーしたい場合は、deepcopy() 関数を使う必要があります。これは、特により小さな big.matrix オブジェクトを作成したいときに便利です。本演習では、big.matrix オブジェクトをコピーし、これらのオブジェクトにおける参照の挙動を確認します。
この演習はコースの一部です
Rで学ぶスケーラブルなデータ処理
演習の手順
ワークスペースには big.matrix オブジェクト mort が用意されています。
mortの明示的なコピーで、最初の3列だけから成る新しい変数first_threeを作成します。- もう一つの変数
first_three_2をfirst_threeに設定します。 first_threeの1行1列目の値をNAに設定します。- 変更が
mortではなくfirst_three_2に反映されていることを確認します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Use deepcopy() to create first_three
first_three <- ___(___, cols = ___,
backingfile = "first_three.bin",
descriptorfile = "first_three.desc")
# Set first_three_2 equal to first_three
___ <- ___
# Set the value in the first row and first column of first_three to NA
first_three[___, ___] <- NA
# Verify the change shows up in first_three_2
first_three_2[1, 1]
# but not in mort
mort[1, 1]