【问题标题】:Weird characters appearing in text column in RR中的文本列中出现奇怪的字符
【发布时间】:2014-06-12 08:19:28
【问题描述】:

我正在从 R 中的 Excel 传输一个 CSV 文件。我的一列包含每个观察的文本,但最终以以下方式显示:

"Hey! \x8c\xe6 Maybe I can give some suggestions: \x8c\xe6" 

\x8c\xe6 是怎么回事?有没有办法让我只有A-Z,a-z.,+/\?*()等字符。

【问题讨论】:

  • 这是由于错误指定的编码。从 Excel 保存时可以指定编码。另存为 -> 工具 -> Web 选项 -> 编码。可能将其设置为 utf-8。

标签: r


【解决方案1】:

如何使用gsub 删除所有不可打印的字符

a <- "Hey! \x8c\xe6 Maybe I can give some suggestions: \x8c\xe6"
gsub("[^[:print:]]","",a)

# [1] "Hey!  Maybe I can give some suggestions: "

[:print:] 类和其他类在 ?regex 帮助页面上定义。

【讨论】:

  • 弗利克先生,你救了我。非常感谢!
【解决方案2】:

这是一个编码错误,我在 R 中得到了很多(请参阅encoding table 以了解翻译问题)。我做了这个完全低效的事情,我会使用“gsub”来处理我看到的错误,只是删除它们:

gsub('\\x8c\\xe6', '', data)

但是,这篇文章可能有助于检测正确的编码:How to detect the right encoding for read.csv?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多