私のワークフローでは、作業のいくつかの側面を他のコピーで行い、その後に参加する前に、メインのdata.frame/data.tableのコピーを作成することがよくありますに。しかし、私はしばしばこれらのコピーがまだ互いに接続されていることを経験します。 1で行われた編集もother.Unfortunatelyで行われているので、私はそれを複製し、それは次のようになります私のコンソールから、貼り付けをコピーすることはできませんよ。data.tablesの接続されたコピー
だから、コピーに対して行わ変化があることを# 'used3' is a copy of 'used' with some altercations to it
c("nLocs","nDays") %in% names(used)
[1] FALSE FALSE
> used3[, nDays :=uniqueN(yDay),c("ID","Year","Season")]
> used3[, nLocs :=.N,c("ID","Year","Season")]
> c("nLocs","nDays") %in% names(used)
[1] TRUE TRUE
すべてがオリジナルで行われました。これはバグですか?私は彼らにも似たような名前をつけていますか...それとも何ですか?
R-バージョン:3.3 data.tableバージョン:1.9.6
しかし、また、あなたがdata.frame
と、この動作が表示されないはずですRとdata.table
'?data.table :: copy'を見てください – jbaums
ありがとう!それは、「どうして私はそれを見逃しましたか?私はそれを受け入れることができるように答えとして追加する必要がありますか? –
[this](http://stackoverflow.com/questions/10225098/understanding-exactly-when-a-data-table-is-a-reference-to-vs-a-copy-of-another)およびリンクされた質問。また、[これ](http://stackoverflow.com/questions/15913417/why-does-data-table-update-namesdt-by-reference-even-if-i-assign-to-another-v/15913648#15913648 ) –