如何使西里尔文数据集可识别?

问题描述

俄罗斯选举研究的一个数据集是用西里尔字母写的,但是如果我使用view(rusdata)并且我想以某种方式转换该数据集,那么R无法识别西里尔字母,而是显示一些奇怪的符号。西里尔字母被R识别。

这是我已经尝试过但没有帮助的事情:

rusdata <-read.spss("RES 2007-2008.sav",to.data.frame = TRUE)

Sys.setlocale(locale = "Russian")
view(rusdata)
Sys.setlocale(,"ru_RU")
view(rusdata)
Sys.setlocale("LC_CTYPE","russian")
encoding = "utf-8"
view(rusdata)
Sys.setlocale("LC_CTYPE","ru_RU.UTF-8")
view(rusdata)

我真的很欢迎您的帮助!

解决方法

您可以尝试使用其他包装,例如original来运气。或者,我将使用haven::read_sav首先检测编码。我假设您可以从spss复制一部分文本。这是一个示例:

stringi::stri_enc_detect

然后我将使用a <- "Статья 1;Все люди рождаются" stringi::stri_enc_detect(a) 返回的编码:

stri_enc_detect