r - 编码问题: how to let console print "ć" instead of "c"?

标签 r encoding character-encoding character utf

我正在处理来自所有可能的欧洲语言的数据。 R 无法正确识别特殊字符,例如“ć”而不是“c”。

> "ć"
[1] "c" 

我已经多次遇到过这种情况并找到了解决方法(read.csv,其他函数有选项编码),但这并不能解决我的问题,但是如上所述。我进一步尝试了

> a <- "ć"
> Encoding(a)
[1] "unknown"

并将编码选项设置为“UTF-8”,但没有成功。有没有办法告诉 R 在实际分配字符之前从控制台读取什么编码?

最佳答案

这是由于您设置的语言环境中该字符不可用。您可以将区域设置更改为具有该字符的区域设置,但这可能会影响其他字符,并且如果您随后更改区域设置,则该字符可能会以不同的方式解释,因此买者自负

Sys.setlocale("LC_CTYPE","Polish")
[1] "Polish_Poland.1250"
"ć"
[1] "ć"

处理此字符的更可靠方法是使用其 unicode 表示形式。显然,您必须预处理数据才能更改它。

"\u0107"
[1] "ć"

关于r - 编码问题: how to let console print "ć" instead of "c"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45416426/

相关文章:

r - 是否有用于计算字符串中给定子字符串出现次数的 R 函数?

c - GCC 4.0 : How do you remove unnecessary -arch flags 的 R-Perl 安装问题

php - 在使用 Php、Mysql 和 UTF8 时遇到问题

c# - 将字符串转换为韩文编码

python - 如何将带有表情符号和特殊字符的国际字符串编码存储在数据库中

clojure - 翻译字符串的编码

r - 气泡图,唯一的指标是大小和颜色

R - 根据另一个矩阵索引更改矩阵值

python 2.7编码解码

c# - 无法将土耳其语字符从文本文件读取到字符串数组