【问题标题】:RemoveWords command not removing some weird wordsRemoveWords 命令不删除一些奇怪的词
【发布时间】:2019-11-24 15:45:10
【问题描述】:

关键是我试图从我的文本语料库中删除一些奇怪的词(如<U+0001F399><U+FE0F>)来做一些推特分析。

有很多这样的词我无法使用<- tm_map(X, removeWords).删除

我有大量的推文汇总在一个数据集中。然后我使用以下代码:

corpus_tweets <- tm_map (corpus_tweets, removeWords, c("<U+0001F339>", "<U+0001F4CD>")) 如果我尝试将这些奇怪的词更改为也出现在我的数据集上的常规词(例如“生命”或“动物”),那么常规词很容易被删除。

知道如何解决这个问题吗?

【问题讨论】:

    标签: r text twitter sentiment-analysis word


    【解决方案1】:

    由于这些是 Unicode 字符,您需要弄清楚如何在 R 中正确输入它们。

    R 中 Unicode 的转义码语法可能不是&lt;U+xxxx&gt;,而是类似于\Uxxxx。有关详细信息,请参阅手册(我不使用 R - 我对它的不一致感到非常恼火。这甚至是这种不一致的一个示例,显然字符串的打印方式与 R 接受的输入不同。)

    【讨论】:

      【解决方案2】:
      corpus_tweets <- tm_map (corpus_tweets, removeWords, c("\U0001F339", "\U0001F4CD","\uFE0F","\uFE0E"))
      

      注意:您可以使用斜杠和小写字母 u,然后使用 4 个十六进制数字来指定 Unicode 平面 0 中的字符;您必须使用 大写 U 然后 8 个十六进制数字用于其他平面(通常是表情符号,因为您正在使用推文)。

      顺便说一句,请参阅Some emojis (e.g. ☁) have two unicode, u'\u2601' and u'\u2601\ufe0f'. What does u'\ufe0f' mean? Is it the same if I delete it? 了解您为什么要在其中获得 FE0F:它们是当用户想要选择表情符号的变体时,例如添加颜色。 FE0E 是它的伙伴(也就是说你想要纯文本字形)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-11-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-10
        • 2015-06-04
        • 2016-06-22
        相关资源
        最近更新 更多