使用“rJava”和“tm.plugin.webmining”包进行文本挖掘时出现问题

Problems text mining using the ‘rJava’ and ‘tm.plugin.webmining’ packages

提问人:Dylan Edmonds 提问时间:12/27/2017 最后编辑:Joe CDylan Edmonds 更新时间:6/22/2018 访问量:770

问:

如果我对这个主题的格式不正确,我深表歉意,这是我第一次在社区发帖,我会尽力而为。我一直在研究这个问题一段时间,但一直在努力解决它。我目前正在关注《Text Mining with R: A Tidy Data Approach》一书,并且正在研究使用“tm.plugin.webmining”包对金融文章进行情感分析的部分。最初的问题是,当我尝试从库加载包时,它会报告错误。

错误:“tm.plugin.webmining”的包或命名空间加载失败: .onLoad 在 loadNamespace() 中失败,用于“rJava”,详细信息: 调用:dyn.load(file, DLLpath = DLLpath, ...) 错误:无法加载共享对象“/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so”: dlopen(/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so, 6): 未加载库:@rpath/libjvm.dylib 引用自:/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so 原因:未找到图像

经过一些研究,我发现这与 Mac OS High Sierra 上的 R 和 Java 通信方式有关。因此,为了解决这个问题,我遵循了这篇文章。它似乎奏效了。一旦我解决了 java 和 r 的问题,我终于能够加载“tm.plugin.webmining”包。但是当我尝试运行书中的示例以加载语料库时,我遇到了以下错误。

StartTag:无效的元素名称 文档末尾的额外内容 mutate_impl(.data, dots) 中的错误: 评估错误:1:StartTag:元素名称无效 2:文档末尾的额外内容

我似乎在任何地方都找不到这方面的信息,也没有足够的经验来自己解决这个问题,因此,我可以尝试解决此问题的任何见解或想法将不胜感激。下面我发布了我运行的代码,这些代码给了我这个问题。先谢谢你。

`library(tm.plugin.webmining)

library(purrr)

library(dplyr)

company <- c("Microsoft", "Apple", "Google", "Amazon", 
"Facebook","IBM", "Yahoo", "Netflix") 
symbol <- c("MSFT", "AAPL", "GOOG", "AMZN", "FB", "IBM", "YHOO", 
"NFLX")

download_articles <- function( symbol) { 
WebCorpus(GoogleFinanceSource(paste0("NASDAQ:", symbol)))
}

stock_articles <- data_frame(company = company, symbol = symbol) %>% 
mutate(corpus = map(symbol, download_articles))`
R Finance TM 网络挖掘

评论

2赞 Joe C 12/27/2017
为什么这被标记为 java
0赞 Claus Wilke 12/27/2017
Dylan,您已经解决的任何问题(例如 R-Java 交互)都应该从问题中删除,因为它们无关紧要。
1赞 Scipione Sarlo 12/27/2017
我在 10 天前发布了同样的问题,但没有答案......stackoverflow.com/questions/47790148/......
0赞 Dylan Edmonds 12/28/2017
@joeC 我将其标记为 java,因为最初的问题与 mac 和 java 交互有关,我认为持续的问题与 rJava 与“tm.plugin,webmining”包的交互方式有关
0赞 Necronet 2/7/2020
@DylanEdmonds没问题,可以删除该标签。Java 不是最好的标签,因为它保留了与语言直接相关的问题,但事实并非如此。

答:

1赞 Anamitra Musib 6/22/2018 #1

我在执行代码时遇到了同样的问题,并找到了锻炼方法,如下所示:

library(tm.plugin.webmining)
library(purrr)

company <- c("Microsoft", "Apple", "Google",
             "Amazon", "Facebook", "Twitter",
             "IBM", "Yahoo", "Netflix")

symbol <- c("MSFT", "AAPL", "GOOG", "AMZN", "FB",
            "TWTR", "IBM", "YHOO", "NFLX")

download_articles <- function(symbol) {
  WebCorpus(YahooFinanceSource(paste0("NASDAQ:", symbol)))
}

stock_articles <- data_frame(company = company,
                             symbol = symbol) %>%
  mutate(corpus = map(symbol, download_articles))

在 WebCorpus 函数中,使用 ,而不是 。YahooFinanceSource()GoogleFinanceSource()