汉字功能R studio

时间:2017-01-12 03:03:09

标签: r function character-encoding character chinese-locale

我正在尝试用R.中文进行文本挖掘。

在我的数据集中,我有一个列有人们评论的专栏,如“连锁店购买的”。由于JiebaR,我创建了另外两个专栏。这些信息包含分段信息(“连锁店”,“购买”,“的”)和这些信息中的关键字(“连锁店”,“购买”)。关键字选择删除“不”(中文中的“否”),因此我尝试从单词中取回它并将其添加到关键字中。简单,对吧?

为了拥有一个干净的代码,我将所有函数放在一个单独的文件中,并将其放在我的主文件中。现在发生了一些非常奇怪的事情:当它在主文件中时它会起作用,但是当它在我所提供的文件中时它不起作用! (我只是将函数从我的main复制并粘贴到“function”文件并运行源(...)行...)。

fetchingNeg <- function(df){
  for (i in 1:nrow(df)){
    if ("不" %in% unlist(df[i,]$words)){
      df[i,]$keywords <- list(append(unlist(df[i,]$keywords),"不"))
    }
  }
  return(df)
}

1 个答案:

答案 0 :(得分:2)

所以我发现了错误:编码! 有一个我知道的角色c&#34;不&#34;但是当我在做印刷品时(&#34;不&#34; == c)它会给出错误...&#34;不&#34;在这种情况下,UTF-8不编码,所以为了使我的代码工作,我必须将其更改为

    fetchingNeg <- function(df){
       for (i in 1:nrow(df)){
          # "不" is "\u{4e0d}" in UTF-8
          if ("\u{4e0d}" %in% unlist(df[i,]$words)){
             df[i,]$keywords <- list(append(unlist(df[i,]$keywords),"\u{4e0d}"))
          }
       }
       return(df)
    }