问题标签 [quanteda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
266 浏览

r - 在 quanteda 包的 textmodel() 中使用 NB 模型时出错

我正在尝试将模型拟合到我使用 quanteda 创建的 dfm。我收到以下错误。有任何想法吗??

ps 我正在创建一个模型来预测移动应用程序的下一个单词。我只知道朴素贝叶斯,不熟悉这个包中的其他模型。所以随意推荐。

0 投票
1 回答
497 浏览

r - 在 dfm() 输出中包含 ID 号

我有一个包含 ID 号列和文本列的数据集,并且我正在使用该quanteda包对文本数据进行 LIWC 分析。这是我的数据设置的示例:

我已经能够使用scores <- dfm(as.character(mydata$text), dictionary = liwc)

但是,当我查看结果 ( View(scores)) 时,我发现该函数在最终结果中没有引用原始 ID 号 (19, 101, 43, 12)。相反,包含一row.names列,但它包含非描述性标识符(例如,“text1”、“text2”):

在此处输入图像描述

如何获得dfm()在其输出中包含 ID 号的功能?谢谢!

0 投票
1 回答
172 浏览

r - quanteda ngram 适用于 mac 但在 windows 7 中中断

我正在为 Johns Hopkins Capstone 项目处理一组文本。我使用 quanteda 作为我的核心文本处理库。我在家里使用我的 Macbook Pro,在工作中使用 Windows 7 64 位。我的 R 脚本在我的 Mac 上似乎可以正常运行,但在我的 Win7 系统上却失败了。由于课程限制,我无法提供源文本材料。我希望我将在下面提供足够的信息以获得一些帮助。我目前的方法是从文本文件创建一个语料库,在没有 ngram 的情况下对其进行标记,然后在标记化的文件上运行 ngram。下面是我的代码片段。

我使用以下内容从文本文件中提取数据:

tmp 对象保存到 Rds 文件中。

围绕 quanteda 元素使用以下函数

以下从文件到 ngram。

以下是脚本的输出。

在我的 Mac 上,Making ngrams 提供了生成的统计信息,但在 Win7 上,会出现上述错误。

我在 R 控制台中运行它。

系统信息:

R 版本 3.2.3 (2015-12-10) -- “木制圣诞树” 版权所有 (C) 2015 统计计算平台的 R 基金会:x86_64-w64-mingw32/x64(64 位)

Quanteda 版本:0.9.0-1 日期:2015-11-26

提前致谢。

0 投票
1 回答
94 浏览

r - Windows 中的 R 无法处理某些字符

我在 Linux 中执行了 LDA,并且在主题 2 中没有得到像“ø”这样的字符。但是,当在 Windows 中运行时,它们会显示出来。有谁知道如何处理这个?我使用了包quantedatopicmodels.

编辑:

数据:https ://www.dropbox.com/s/tdr9yok7tp0pylz/technology201501.csv

代码是这样的:

0 投票
2 回答
2806 浏览

r - 将 dfmSparse 从 Quanteda 包转换为 R 中的数据框或数据表

我有一个 dfmSparse 对象(大,2.1GB),它被标记化并使用 ngrams(unigrams、bigrams、trigrams 和fourgrams),我想将它转换为数据框或数据表对象,其中包含以下列:内容和频率.

我试图取消列出...但没有用。我是 NLP 的新手,我不知道使用方法,我没有想法,也没有在这里或谷歌找到解决方案。

关于数据的一些信息:

谢谢!

编辑:这就是我从语料库创建数据集的方式:

0 投票
1 回答
548 浏览

r - Quanteda with topicmodels:删除的停用词出现在结果中(中文)

我的代码:

代码有效,我看到了结果。以下是输出示例:

这是问题所在。我所有的帖子都被分割了(中文的必要预处理步骤)并删除了停用词。尽管如此,主题模型会返回包含已删除的单字符停止词的主题。如果我打开原始 .txt 文件并对给定的单字符停用词执行 ctrl-f,则不会返回任何结果。但是这些术语出现在 R 代码返回的主题中,可能是因为单个字符作为其他多字符单词的一部分出现。例如,就是介词,被视为停用词,但成就意味着“成功”。

与此相关,某些术语是分裂的。例如,我正在研究的一个事件中提到了俄罗斯总统普京(“葫芦”)。然而,在主题模型结果中,我看到“普”和“京”的单独术语条目,而“不同”的条目则没有。(参见输出主题 2 中的第 10 行和第 11 行,与原始文本中的第一个单词进行比较。)

这里是否发生了额外的标记化步骤?

编辑:修改为可重现。出于某种原因,它不会让我发布,直到我也删除了我的介绍性段落。

0 投票
2 回答
2028 浏览

r - 使用 R 和 Quanteda 在大型语料库上计算 n-gram

我正在尝试使用出色的 Quanteda 包从大型文本语料库(R 中的对象大小约为 1Gb)构建 n-gram。我没有可用的云资源,所以我使用自己的笔记本电脑(Windows 和/或 Mac,12Gb RAM)进行计算。

如果我将数据采样成碎片,代码就可以工作,我得到一个(部分)不同大小的 n-gram dfm,但是当我尝试在整个语料库上运行代码时,不幸的是,我用这个语料库大小达到了内存限制,并得到以下错误(unigrams,单个单词的示例代码):

如果我尝试构建 n > 1 的 n-gram,那就更糟了:

我找到了这个相关的帖子,但它看起来是密集矩阵强制的问题,后来解决了,它对我的​​情况没有帮助。

有没有更好的方法可以在内存有限的情况下处理这个问题,而不必将语料库数据分解成碎片?

[编辑] 根据要求, sessionInfo() 数据:

0 投票
2 回答
737 浏览

r - 如何使用 quanteda 保留句子标记的开头和结尾

我正在尝试使用 R 的quanteda包创建 3-grams。

我正在努力寻找一种方法来保留句子标记的 n-gram 开头和结尾,就像下面的代码中的<s>and</s>一样。

我认为使用keptFeatures与那些匹配的正则表达式应该保持它们,但人字形标记总是被删除。

如何防止 V 形标记被移除,或者用 分隔句子开头和结尾的最佳方法是什么quanteda

作为一个额外的问题docfreq(mydfm)over的优势是什么colSums(mydfm), str(colSums(mydfm)) 和 str(docfreq(mydfm)) 的结果几乎相同(Named num [1:n]前者,Named int [1:n]后者)?

编辑:

将代码片段中的 keepFeatures 更正为 keepFeatures。

0 投票
1 回答
1348 浏览

r - 如何使用 quanteda 提取 ngram 中的所有单词?

我目前正在使用 R 中的 Quanteda 包,我想计算一组词干的 ngram,以快速粗略地估计哪些内容词往往彼此靠近。如果我尝试:

它只是在二元组中的最后一个词。但是,如果我尝试先停止:

然后 Quanteda 不知道如何使用词干列表。我会得到错误:

我可以做一个中间步骤来在词干上使用 dfm,或者告诉dfm先词干然后再做 ngrams?

0 投票
2 回答
175 浏览

r - 在我的语料库中实现 N-gram,Quanteda Error

我正在尝试在 R 中的语料库上实现 quanteda,但我得到:

我在这方面没有太多经验。这是数据集的下载:https ://www.dropbox.com/s/ho5tm8lyv06jgxi/TwitterSelfDriveShrink.csv?dl=0

这是代码: