我正在尝试将几个SPSS文件读入包含Cyrillic text
的R中。所有文件都在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
感谢您的帮助。
答案 0 :(得分:0)
如果我使用memisc
包,看起来它是有效的,我告诉R该文件是CP1251,即使它在使用read.spss时认为它是CP1252。谢谢!
df <- spss.system.file("file.sav")
df <- Iconv(df,from="CP1251",to="UTF-8")
df1<-as.data.frame(as.data.set(df))