0
data.table
フレームワークでこの記事には含まれていないさまざまな理由で作業したいと思います。 data.table
は、標識マトリクスのための疎な表現を持っていますか?Matrix
パッケージですか?スパース行列/オブジェクトの `data.table`表現はありますか?
library(Matrix)
library(data.table)
set.seed(123409L)
ints <- sample.int(2L, 1e6, replace=T, prob= c(0.9, 0.1)) - 1
m <- Matrix(ints, ncol= 1000)
dt <- data.table(matrix(ints, ncol= 1000))
pryr::object_size(m) # 1.22 MB
pryr::object_size(dt) # 8.1 MB
私は成長が仮に無制限である6e8
要素に近い有する実際のユースケースで想定します。
この質問には既に回答済みの場合は事前にお詫びしてください。私はそれが重複としてフラグを立てることができてうれしいです。しかし、私は検索で重複を見つけられませんでした。
さて、 'MDT = as.data.table((マトリックス(int型、NcoI部位= 1000)== 1、arr.ind = TRUE))'別の表現であります、いくぶん小さい(おそらく私はouを投げているからだtは 'm 'に見られる' @ x'部分)。そのようにしておくと、dgCMatrixオブジェクトでうまくいくように設計されたすべてのMatrix関数にアクセスすることができなくなるため、価値がないかもしれません。 – Frank