首页 > 解决方案 > 从语料库中删除特殊字符

问题描述

我建立了一个数据,显示所有带有标点符号的术语及其频率。然后我应该从它们中删除标点符号并检查是否还有任何标点符号。

newpapers1 <- tm_map(newpapers, removePunctuation)

punremove <- function(x){gsub(c('¡'|'¯'),"",x)}
punremove1 <- lapply(newpapers1, punremove)
my.check.func <- function(x){str_extract_all(x, "[[:punct:]]")}
my.check1 <- lapply(newpapers1, my.check.func)
p <- as.data.frame(table(unlist(my.check1)))
p

但我最终还是得到了这个特殊字符:

  Var1 Freq
1    ¡   25

有没有办法编写一个函数来删除所有标点符号或一个函数来删除它?

编辑:检查文件后,标点符号仍然存在:

> newpapers1[[24]]$content

“这项研究采用跨文化视角来检验当地观众如何看待和欣赏外国戏剧,以及这种心理过程如何因媒体和观众之间的文化距离而不同折扣理论表明,文化距离会降低韩国观众对戏剧角色的认同感,从而削弱他们对外国剧的欣赏感这些发现的实际意义及其潜在局限性"


标签: rrstudiotmcorpus

解决方案


您可以使用gsub删除标点符号,像这样。

newpapers1 <- tm_map(newpapers, removePunctuation)

my.check.func <- function(x){gsub('[[:punct:]]+','',x)}
my.check1 <- lapply(newpapers1, my.check.func)
p <- as.data.frame(table(unlist(my.check1)))
p

希望这可以帮助。


推荐阅读