【发布时间】:2017-07-06 02:17:45
【问题描述】:
我正在尝试将几个 SPSS 文件读入 R,其中包括 Cyrillic text。所有文件都在Cyrillic text。当我将它们中的大部分读入 R 时,控制台显示“从 CP1251 重新编码”。然而,当我阅读一些文件时,同样在Cyrillic text 中,它说“从 CP1252 重新编码”,我认为这是一个拉丁脚本。 CP1251 文件读入 R 没有问题。但是,CP1252 文件在 R 中变得乱七八糟。我尝试了 foreign、haven 和 hmisc 软件包来读取 SPSS 文件,但没有一个有效。我也试过包括reencode='utf-8'。当我这样做时,西里尔文字全部变为 NA。无论我是在 R 还是 RStudio 中工作,都会出现问题。
x1<- read.spss("cp1251_file.sav", to.data.frame = T) #1251 file reads in fine
x2<- read.spss("cp1252_file.sav", to.data.frame = T) #1252 file becomes gibberish
x2<- read.spss("cp1252_file.sav", to.data.frame = T, reencode='utf-8') #Cyrillic text in CP1252 file becomes NA
感谢您的帮助。
【问题讨论】:
-
对我来说,它适用于德语变音符号 (üäö),并结合了以下内容:
options(encoding = "UTF-8"); spssfile <- as.data.set(spss.system.file('yourfiles.sav')); spssfile <- Iconv(spssfile,from="UTF-8",to="UTF-8")你能检查一下吗? -
谢谢。我已经尝试过了,现在当我尝试转换为数据框时出现错误。 spssfile
-
如果我告诉 R 文件是 CP1251,即使它认为它是 CP1252,它看起来也有效。谢谢!:'df