ph.DTM A ter-6ren">
gpt4 book ai didi

大型术语文档矩阵/simple_triplet_matrix 的行总和? {tm包}

转载 作者:行者123 更新时间:2023-12-02 07:38:07 27 4
gpt4 key购买 nike

所以我有一个非常大的术语文档矩阵:

> class(ph.DTM)
[1] "TermDocumentMatrix" "simple_triplet_matrix"

> ph.DTM
A term-document matrix (109996 terms, 262811 documents)

Non-/sparse entries: 3705693/28904453063
Sparsity : 100%
Maximal term length: 191
Weighting : term frequency (tf)

如何获得每个术语的 rowSum(频率)?我尝试过:

> apply(ph.DTM, 1, sum)
Error in vector(typeof(x$v), nr * nc) : vector size cannot be NA
In addition: Warning message:
In nr * nc : NAs produced by integer overflow

显然,我知道removeSparseTerms:

ph.DTM2 <- removeSparseTerms(ph.DTM, 0.99999)

这会稍微缩小尺寸:

> ph.DTM2
A term-document matrix (28842 terms, 262811 documents)

Non-/sparse entries: 3612620/7576382242
Sparsity : 100%
Maximal term length: 24
Weighting : term frequency (tf)

但我仍然无法对其应用任何与矩阵相关的函数:

> as.matrix(ph.DTM2)
Error in vector(typeof(x$v), nr * nc) : vector size cannot be NA
In addition: Warning message:
In nr * nc : NAs produced by integer overflow

我怎样才能获得这个对象的简单行总和?谢谢!!

最佳答案

好吧,经过更多的 Google 搜索,我发现了 slam 包,它可以:

ph.DTM3 <- rollup(ph.DTM, 2, na.rm=TRUE, FUN = sum)

这有效。

关于大型术语文档矩阵/simple_triplet_matrix 的行总和? {tm包},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21921422/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com