我是R和文本挖掘的新手。我用推特上的一些术语制作了一个词云。我面临的问题是在wordcloud中显示http:...或htt ... 我该如何处理这个问题 我尝试使用元字符*但我仍然怀疑我是否正确应用
tw.text = removeWords(tw.text,c(停用词(" zh")," rt"," http \\ *"))
有人进入文本分析,请帮助我。
答案 0 :(得分:3)
如果您要从字符串中删除网址,可以使用:
gsub("(f|ht)tp(s?)://(.*)[.][a-z]+", "", x)
x
的位置:
x <- c("some text http://idontwantthis.com",
"same problem again http://pleaseremoveme.com")
如果您可以发布数据样本,那么为您提供特定答案会更容易,但以下示例将为您提供一个没有URL的干净文本:
> clean_x <- gsub("(f|ht)tp(s?)://(.*)[.][a-z]+", "", x)
> clean_x
[1] "some text " "same problem again "
作为一个侧面点,我建议在挖掘之前搜索现有方法来清理文本可能是值得的。例如,clean
所讨论的#
函数可以让您自动执行此操作。在类似的行上,还有从推文(@
,{{1}}),标点符号和其他不良条目中清除文本的功能。
答案 1 :(得分:1)
将以下代码应用于语料库以用空格替换字符串模式。 字符串模式可以是您要从wordcloud中删除的网址或术语。 例如,删除以https:
开头的字词toSpace = content_transformer(function(x,pattern)gsub(pattern,&#34;&#34;,x))
tweet_corpus_clean = tm_map(tweet_corpus,toSpace,&#34; https *&#34;)
tweet_corpus_clean = tm_map(tweet_corpus,toSpace,&#34;(f | ht)tp(s?)://(。*)[。] [a-z] +&#34;)