2017-11-21 9 views
0

私は大きなドキュメントマトリックスを持っています。 (6要素、44.3 Mb)ラージドキュメント用語ドキュメントマトリックスをマトリックスに変換する

私は行列に変換する必要がありますが、それをしようとすると「100 GBを割り当てることができません」という魔法のエラーメッセージが表示されます。

この変換をチャンクで行うことができるパッケージ/ライブラリはありますか?

私はffとbigmemoryを試しましたが、DTMからMatrixへの変換を許可していないようです。

+0

たぶん、あなたはすでにを通じて考えているが、それあなたの下流の操作がどのようなもの愚かな質問:ここでは

removeSparseTerms機能とsparse値に光を当てるだろういくつかのリンクありあなたは行列に適用したいですか?たぶん、DTM全体を行列に変える方法もありますか? –

答えて

1

マトリックスに変換する前に、用語ドキュメントマトリックスからスパース語を削除してください。これにより、行列のサイズが大幅に縮小されます。まばらな用語を削除するには、以下のように行うことができます。

library(tm) 
## tdm - Term Document Matrix 
tdm2 <- removeSparseTerms(tdm, sparse = 0.2) 
tdm_Matrix <- as.matrix(tdm2) 

注:私はちょうど例えば、スパースのために0.2を置きます。あなたはあなたのtdmに基づいてその価値を決めるべきです。

How does the removeSparseTerms in R work?

https://www.rdocumentation.org/packages/tm/versions/0.7-1/topics/removeSparseTerms

+0

スパース項の除去を考慮して、tf-idf重み付けに基づいて項を除外することも考えられます。 DTMの場合、これはしばしばコア情報を失うことなく合理的なオプションです。 –

関連する問題