data.tableの最新バージョン1.8.1(R-forgeで利用可能)にアップグレードした後、次の問題が発生しました。そのバージョンまで、私はこれを行うことができました:
DT = data.table(a=LETTERS[c(1,1:3)],b=4:7,key="a")
DT
a b
1: A 4
2: A 5
3: B 6
4: C 7
DT[ ,newcol := NA]
つまり、NAで満たされた新しい列を追加することができました。NAの論理タイプがサポートされていないというエラーが表示されます(実際にDT[ ,newcol := TRUE]
はどちらも機能しません)。
だから今、私は最初に二重の列を追加し、次にそれをNAまたは私が必要とする論理に設定することによってそれを回避します:
DT[ ,newcol:=1]
a b newcol
1: A 4 1
2: A 5 1
3: B 6 1
4: C 7 1
と
DT[ ,newcol:=NA]
a b newcol
1: A 4 NA
2: A 5 NA
3: B 6 NA
4: C 7 NA
これが正しい方法かどうかを尋ねたかったのです。大したことではないと思います。それはそのようにうまく機能しています、ただ不必要なステップを避けたかっただけです。