我试图将几个SPSS文件读入R,包括 Cyrillic text
. 所有文件都在 Cyrillic text
中 . 当我将大部分内容读入R时,控制台会显示"re-encoding from CP1251" . 但是,当我读到一些文件时,也就是在 Cyrillic text
中,它说的是"re-encoding from 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
谢谢你的帮助 .
1 回答
看起来它是有用的,如果我使用
memisc
包,我告诉R该文件是CP1251,即使它认为它是CP1252使用read.spss . 谢谢!:df <- spss.system.file("file.sav") df <- Iconv(df,from="CP1251",to="UTF-8") df1<-as.data.frame(as.data.set(df))