【问题标题】:Read spss file with Cyrillic into R将带有西里尔文的spss文件读入R
【发布时间】:2017-07-06 02:17:45
【问题描述】:

我正在尝试将几个 SPSS 文件读入 R,其中包括 Cyrillic text。所有文件都在Cyrillic text。当我将它们中的大部分读入 R 时,控制台显示“从 CP1251 重新编码”。然而,当我阅读一些文件时,同样在Cyrillic text 中,它说“从 CP1252 重新编码”,我认为这是一个拉丁脚本。 CP1251 文件读入 R 没有问题。但是,CP1252 文件在 R 中变得乱七八糟。我尝试了 foreignhavenhmisc 软件包来读取 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 &lt;- as.data.set(spss.system.file('yourfiles.sav')); spssfile &lt;- Iconv(spssfile,from="UTF-8",to="UTF-8")你能检查一下吗?
  • 这个问题/答案也可能有帮助:stackoverflow.com/questions/3136293/read-spss-file-into-r?rq=1
  • 谢谢。我已经尝试过了,现在当我尝试转换为数据框时出现错误。 spssfile
  • 如果我告诉 R 文件是 CP1251,即使它认为它是 CP1252,它看起来也有效。谢谢!:'df

标签: r spss cyrillic


【解决方案1】:

看起来如果我使用 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))

【讨论】:

    猜你喜欢
    • 2011-03-09
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 2016-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多