大文本语料库破坏 tm_map

2023-12-31

在过去的几天里,我一直在为这个问题伤透脑筋。我搜索了所有 SO 档案并尝试了建议的解决方案,但似乎无法让它发挥作用。我在 2000 06、1995 -99 等文件夹中有一组 txt 文档,并且想要运行一些基本的文本挖掘操作,例如创建文档术语矩阵和术语文档矩阵以及执行一些基于单词共置的操作。我的脚本适用于较小的语料库,但是,当我尝试使用较大的语料库时,它让我失败了。我已经粘贴了这样一个文件夹操作的代码。

library(tm) # Framework for text mining.
library(SnowballC) # Provides wordStem() for stemming.
library(RColorBrewer) # Generate palette of colours for plots.
library(ggplot2) # Plot word frequencies.
library(magrittr)
library(Rgraphviz)
library(directlabels)

setwd("/ConvertedText")
txt <- file.path("2000 -06")

docs<-VCorpus(DirSource(txt, encoding = "UTF-8"),readerControl = list(language = "UTF-8"))
docs <- tm_map(docs, content_transformer(tolower), mc.cores=1)
docs <- tm_map(docs, removeNumbers, mc.cores=1)
docs <- tm_map(docs, removePunctuation, mc.cores=1)
docs <- tm_map(docs, stripWhitespace, mc.cores=1)
docs <- tm_map(docs, removeWords, stopwords("SMART"), mc.cores=1)
docs <- tm_map(docs, removeWords, stopwords("en"), mc.cores=1)
#corpus creation complete

setwd("/ConvertedText/output")
dtm<-DocumentTermMatrix(docs)
tdm<-TermDocumentMatrix(docs)
m<-as.matrix(dtm)
write.csv(m, file="dtm.csv")
dtms<-removeSparseTerms(dtm, 0.2)
m1<-as.matrix(dtms)
write.csv(m1, file="dtms.csv")
# matrix creation/storage complete

freq <- sort(colSums(as.matrix(dtm)), decreasing=TRUE)
wf <- data.frame(word=names(freq), freq=freq)
freq[1:50]
#adjust freq score in next line
p <- ggplot(subset(wf, freq>100), aes(word, freq))+ geom_bar(stat="identity")+ theme(axis.text.x=element_text(angle=45, hjust=1))
ggsave("frequency2000-06.png", height=12,width=17, dpi=72)
# frequency graph generated


x<-as.matrix(findFreqTerms(dtm, lowfreq=1000))
write.csv(x, file="freqterms00-06.csv")
png("correlation2000-06.png", width=12, height=12, units="in", res=900)
graph.par(list(edges=list(col="lightblue", lty="solid", lwd=0.3)))
graph.par(list(nodes=list(col="darkgreen", lty="dotted", lwd=2, fontsize=50)))
plot(dtm, terms=findFreqTerms(dtm, lowfreq=1000)[1:50],corThreshold=0.7)
dev.off()

当我在 tm_map 中使用 mc.cores=1 参数时,操作会无限期地继续。但是,如果我在 tm_map 中使用lazy=TRUE 参数,看起来一切顺利,但后续操作会出现此错误。

Error in UseMethod("meta", x) : 
  no applicable method for 'meta' applied to an object of class "try-error"
In addition: Warning messages:
1: In mclapply(x$content[i], function(d) tm_reduce(d, x$lazy$maps)) :
  all scheduled cores encountered errors in user code
2: In mclapply(unname(content(x)), termFreq, control) :
  all scheduled cores encountered errors in user code

我一直在寻找解决方案,但始终失败。任何帮助将不胜感激!

Best! k


我找到了一个有效的解决方案。

后台/调试步骤

我尝试了几种不起作用的方法:

  • 将“content_transformer”添加到某些 tm_map、所有、一个(totower)
  • 将“lazy = T”添加到 tm_map
  • 尝试了一些并行计算包

虽然它不适用于我的两个脚本,但每次都适用于第三个脚本。但所有三个脚本的代码都是相同的,只是我加载的 .rda 文件的大小不同。这三个的数据结构也相同。

  • 数据集 1:大小 - 493.3KB = 错误
  • 数据集 2:大小 - 630.6KB = 错误
  • 数据集 3:大小 - 300.2KB = 有效!

只是很奇怪。

My sessionInfo() output:

R version 3.1.2 (2014-10-31)
Platform: x86_64-apple-darwin13.4.0 (64-bit)

locale:
[1] de_DE.UTF-8/de_DE.UTF-8/de_DE.UTF-8/C/de_DE.UTF-8/de_DE.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] snowfall_1.84-6    snow_0.3-13        Snowball_0.0-11    RWekajars_3.7.11-1 rJava_0.9-6              RWeka_0.4-23      
[7] slam_0.1-32        SnowballC_0.5.1    tm_0.6             NLP_0.1-5          twitteR_1.1.8      devtools_1.6      

loaded via a namespace (and not attached):
[1] bit_1.1-12     bit64_0.9-4    grid_3.1.2     httr_0.5       parallel_3.1.2 RCurl_1.95-4.3    rjson_0.2.14   stringr_0.6.2 
[9] tools_3.1.2

Solution

我刚刚在加载数据后添加了这一行,现在一切正常:

MyCorpus <- tm_map(MyCorpus,
                     content_transformer(function(x) iconv(x, to='UTF-8-MAC', sub='byte')),
                     mc.cores=1)

在这里找到提示:http://davetang.org/muse/2013/04/06/using-the-r_twitter-package/ http://davetang.org/muse/2013/04/06/using-the-r_twitter-package/(由于错误,作者已于2014年11月26日更新了代码。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大文本语料库破坏 tm_map 的相关文章

  • 将多个对齐的绘图放置在一页上时避免浪费空间

    我想将四个图放在一个页面上 轴标签应仅打印在最边缘 即x仅用于底部图表的轴标签 以及y仅左图的轴标签 这既适用于整个轴的名称 也适用于各个刻度线 我可以使用以下代码生成一些内容 pdf file ExampleOutput pdf widt
  • R中按字母顺序对每一行字符串进行排序

    我环顾四周 似乎找不到解决这个问题的好方法 我有一个包含行名称的列 我想按字母顺序对每一行进行排序 以便稍后可以识别具有相同名称但顺序不同的行 数据如下 names lt c John D Josh C Karl H John D Bob
  • 如何调整ggplot2中的标题位置

    这是代码 require ggplot2 require grid pdf a pdf png a png a lt qplot date unemploy data economics geom line opts title A b l
  • 修改 GGplot2 对象

    然而 我很好奇 是否可以添加任何特定的图例或将哪个物种对应于观察到的预期绘图中 以分别知道它是哪个圆圈 我目前使用的是一个名为 finches 的假数据集 该包称为 cooccurr 它创建一个 ggplot 对象 我很好奇如何实际编辑它以
  • R 控制台是我的母语,如何将 R 设置为英语?

    我在 Windows 7 上使用 R 显然 R 不知何故发现了我说英语以外的语言的证据 并且顽固地坚持在控制台中以我自己的语言提供输出 由于多种原因 这是不可取的 我希望 R 是英语 什么有效 我能够使用LANGUAGE en作为 R 控制
  • rvest - 在 1 个标签中抓取 2 个类

    我是新来的 如何提取标签中具有 2 个类名或仅 1 个类名的元素 这是我的代码和问题 doc lt paste span class a1 b1 text1 span span class b1 text2 span library rve
  • 如何在 sqlSave() 命令中跳过主键?

    我正在尝试使用 RODBC 在 MySQL 数据库中插入 data frame 我正在使用的命令如下 sqlSave channel dbData tablename table name append TRUE safer TRUE fa
  • 使用变量在 r 中像 aes_string 一样选择轴

    我试图提供一个带有列名的变量来创建一个plotly图表 类似于ggplot2 aes string 不知怎的 我被困住了 plot ly iris x Sepal Length y Sepal Width works as expected
  • R闪亮的html小部件之间的交互

    我正在开发一个 R 闪亮应用程序 它使用多个 html 小部件 特别是网络D3 d3热图 and 和弦诊断 这些小部件单独工作正常 但是 在同一页面中使用它们会留下一个空格处他们应该在哪里 这是显示错误的可重现代码 在 UI 中注释绘图线
  • R:错误消息---包错误:“functionName”未从当前命名空间解析

    我正在使用一个一直运行到 R3 0 的软件包 问题如上所述 当我们调用在 R 2 15 2 中工作的函数时 从 R 3 0 开始我们得到一个错误 Error in C solarspectrum3 as double lon as doub
  • 在 R 中读取 Stata 13 文件

    有没有办法在 R 中读取 Stata 版本 13 数据集文件 我尝试执行以下操作 gt library foreign gt data read dta TEAdataSTATA dta 但是 我收到一个错误 read dta TEAdat
  • Quarto/Rmarkdown 中的美人鱼图:狭窄且模糊

    我正在尝试生成 pdf 格式的四开文档 稍后会生成 word 格式 我遇到了美人鱼图的问题 请在下面找到一个示例 qmd 文件来说明该问题 所以首先它应该支持 mermaid 标签 但当我这样做时 我无法在 rstudio 中 运行 单元
  • 包检查时如何有效处理未压缩的保存?

    在最近开发一个包的过程中 我将数据集包含在data 我的包的文件夹 在我的具体情况下 我有 5 个数据集 所有这些数据集都位于data table格式 尽管我在下面描述的问题仍然存在 如果我将它们保留为data frame 我已将每个人单独
  • R比例置信区间因子

    我正在尝试总结家庭调查的数据 因此我的大部分数据都是分类 因子 数据 我想用对某些问题的回答频率图来总结它 例如 回答某些问题的家庭百分比的条形图 误差线显示置信区间 我发现了这个很棒的教程 我认为它是我祈祷的答案 http www coo
  • udunits2 R 安装:找不到 udunits2.h

    我正在尝试在 R 中安装 udunits2 以满足对ggforce包裹 但是 安装程序在检查 udunits2 时始终失败 我已经尝试过中的说明this https stackoverflow com questions 47059517
  • readRDS() 加载额外的包

    什么情况下会出现readRDS R 中的函数尝试加载包 命名空间 我很惊讶地在新的 R 会话中看到以下内容 gt loadedNamespaces 1 base datasets graphics grDevices methods sta
  • 将文本添加到 ggplot 中的轴标签

    我从下表中绘制了一个图表 BoatPhs fit se lower upper 1 Before 3 685875 0 3287521 3 038621 4 333130 2 After0 20NTA 3 317189 0 6254079
  • 使用 ggplotly(ggplot2 withplotly)时可以去掉注释中的跟踪标签吗?

    使用ggplotly时是否可以删除注释中的跟踪标签 例如 library ggplot2 library plotly g lt ggplot iris aes Sepal Width Sepal Length geom point ann
  • 仅在具有重复块名称的另一个 Rmarkdown 文档中运行一个 Rmarkdown 文档中的代码

    我正在 Rmarkdown 中编写一系列相互补充的报告 我想将上一份报告的结果纳入我目前正在编写的报告中 我看到其他建议使用的问题purl从 Rmarkdown 文档中提取 R 代码然后运行它 所以我尝试了以下操作 r read previ
  • r Shiny 中的 fileInput 函数没有响应

    我是 R 和 R闪亮的新手 一直致力于构建一个统计应用程序 该应用程序将允许用户导入文件 然后对数据运行不同的统计程序 直到最近 fileData 函数一直对我来说运行良好 现在每当我尝试上传文件时 都不会打开任何内容 我已尝试了所有我能想

随机推荐

  • 带有 FileField 的 Django 模型——动态“upload_to”参数

    我使用带有 FileField 的模型来处理文件上传 现在文件就可以成功上传了 不过 我还想做一个小改进 那就是为用户创建用户名的文件夹 这是我尝试过的代码 class UserFiles models Model user models
  • 找不到“FacebookSDK/FacebookSDK.h”文件

    我已经安装了最新版本PhoneGap Facebook 插件 https github com phonegap phonegap facebook plugin但是当我构建项目时 我收到以下错误消息 我尝试了 stackoverflow
  • 谷歌地图片段在scrollView内

    所以我一直在尝试使用谷歌地图精简版fragment里面一个scrollView我无法显示地图 删除后scrollView然后将片段单独保留 现在您就可以看到地图了 我只是想了解为什么会这样 以及是否有任何方法可以让这个片段显示在我的滚动视图
  • NHibernate 缓存问题 - 何时调用 Evict?

    我遇到了一个明显的缓存问题 NHibernate 返回的内容与数据库中的内容不匹配 我相信这是二级缓存数据 看起来我可以使用 Evict 来做到这一点 但是什么时候应该实际调用 Evict 方法 对于我的特定应用程序 数据对于用户来说是唯一
  • Azure Signalr 服务中的单位是什么?

    So I ve been going through Azure Signal R Service for blazor apps and I ve noticed they have their pricing according to
  • Android Button 下无法去除阴影

    I have a Android Button that I m placing on my screen and am defining a custom background drawable that just specifies a
  • 缓冲随机访问文件 java

    RandomAccessFile 对于随机访问文件来说相当慢 您经常阅读有关在其上实现缓冲层的信息 但无法在网上找到执行此操作的代码 所以我的问题是 知道这个类的任何开源实现的你们会共享一个指针还是共享您自己的实现 如果这个问题能成为关于这
  • 提高比较算法 np.packbits(A==A[:, None], axis=1) 的性能

    我正在寻找内存优化np packbits A A None axis 1 where A是长度整数的密集数组n A A None 内存是否需要大容量n因为生成的布尔数组存储效率低下 每个布尔值占用 1 个字节 我编写了下面的脚本来实现相同的
  • 扩展Qt标准图标

    如何扩展 QStyle 类提供的标准图标并支持 Windows 和 Linux namespace Ui class TVLoader class TVLoader public QMainWindow Q OBJECT public ex
  • 查询 MongoDb 中的嵌套数组

    我想通过嵌套数组中存在的字符串来检索文档 例如 数据 表示句子的依存解析 如下所示 tuples xcomp multiply using det method the nn method foil dobj using method 我发
  • CPU预测和内存屏障

    我正在学习记忆障碍所以我提到记忆障碍 https www kernel org doc Documentation memory barriers txtLinux 内核源代码中的文档 还有一个描述我无法理解 控制依赖关系可能有点棘手 因为
  • C 标准是否允许为指针分配任意值并递增它?

    这段代码的行为定义是否明确 include
  • 如何将 Writer 转换为字符串

    Writer writer new Writer String data writer toString the value is not casting and displaying null 还有其他方法可以将 writer 转换为字符
  • Vue.js 无法切换字体很棒的图标

    我正在尝试根据布尔值切换很棒的字体图标 但看起来很棒的字体图标在绘制后仍保留在屏幕上 https jsfiddle net 50wL7mdz 200312 https jsfiddle net 50wL7mdz 200312 HTML
  • 实体框架 - Linq To 实体 - 多对多查询问题

    我在查询 Linq To Entities 中的多对多关系时遇到问题 我基本上尝试使用 Linq 复制此查询 Select FROM Customer LEFT JOIN CustomerInterest ON Customer Custo
  • 从 Play 框架 (Scala) 中的 play.api.mvc.Action[AnyContent] 获取响应正文

    我有以下 Play Scala 代码 object Experiment extends Controller routes file directs genki here def genki name String Action pipe
  • Worker调度算法

    问题 这就是我想要解决的问题的本质 我们有工作人员在周末的固定时间在托儿所照顾孩子 一个周末有 16 个不同的时段需要填补 因此 对于为期 4 周的月份 需要填补 64 个空缺 我们最多有 30 名托儿所工人 尽管我们需要更多 有人喜欢孩子
  • 有没有办法在没有模型的情况下使用 formattastic 创建表单?

    我想使用 formattastic 来创建表单 但我没有与之相关的模型 带有用户名 密码和 openid URL 的登录表单 当然 我可以创建一个模型来做到这一点 但该模型只是一个黑客 其中没有任何有用的代码 您可以传递字符串而不是模型 它
  • paypal平行支付和链式支付的区别

    我需要实现一个支付网关 用户可以通过该网关在一笔交易中向两个卖家付款 所以我尝试了贝宝的两种选择 Paypal 并行支付 Paypal 链式支付 虽然两者都完美地满足了我的需求 但我很想知道哪一种更适合我的需求以及两种方法之间的区别 我还想
  • 大文本语料库破坏 tm_map

    在过去的几天里 我一直在为这个问题伤透脑筋 我搜索了所有 SO 档案并尝试了建议的解决方案 但似乎无法让它发挥作用 我在 2000 06 1995 99 等文件夹中有一组 txt 文档 并且想要运行一些基本的文本挖掘操作 例如创建文档术语矩