問題:
を拡張する参照クラスを作成したいと考えていますdata.table
。
動機は
data.table
カスタムメソッドと可変フィールドが欲しい- 既存のすべての構文 (インデックス作成、サブセット、マージなど) を期待どおりに動作させたい
問題は、私がこれまでに失敗したことです。
試み:
私は試した:
MyDataTable <- setRefClass("MyDataTable",
methods = list(
clearCell = function(i, j) { # A trivial custom method - sets a cell to NA
.self[i, (j) := NA]
}
),
contains = "data.table"
)
MyDataTable(a = 1:26, b = letters)$clearCell(1, 1)
しかし、エラーが発生しました:
Error in envRefSetField(.Object, field, classDef, selfEnv, elements[[field]]) :
‘a’ is not a field in class “MyDataTable”
ただし、次のようなものを期待していました。
a b
1: NA a
2: 2 b
3: 3 c
4: 4 d
5: 5 e
6: ... etc etc
何がうまくいかないのですか?