0

我以 .sav SPSS 格式导入了一个数据集,但遇到了一个我以前从未见过的错误。

1: In read.spss("C:\\Users\\acer\\Desktop\\X\\X\\PIREDEU\\ees2009_v0.9_20110622.sav",  ... :
  C:\Users\acer\Desktop\X\X\PIREDEU\ees2009_v0.9_20110622.sav: File contains duplicate label for value 1.1 for variable V200 
Error in cat(list(...), file, sep, fill, labels, append) : 
  argument 2 (type 'list') cannot be handled by 'cat'

这是我输入后出现的warnings(PIREDEU)。我使用外部库导入数据:

library(foreign)
PIREDEU<-read.spss("C:\\Users\\acer\\Desktop\\X\\X\\PIREDEU\\ees2009_v0.9_20110622.sav", use.value.labels=TRUE, max.value.labels=Inf, to.data.frame=TRUE)

我已经为 read.spss 函数的后三个参数摆弄了各种组合,但我一无所获。

有人有什么建议吗?

4

4 回答 4

2

我使用了下面的,它工作得很好,只需忽略警告消息并通过输入其名称来检查数据:

mydata4<-read.spss("C:\\Work\\data.sav",use.value.labels=F,to.data.frame=T)
mydata4 # check data
于 2014-04-16T14:57:42.607 回答
0

文件中是否有长字符串 - 超过 8 个字节?统计使用一些特殊的安排来处理这些。看起来问题出在值标签上。如果您可以删除这些(使用 SPSS),您可能可以获得其余数据。

于 2013-06-21T02:21:42.840 回答
0

尝试读取没有标签的数据。

library(foreign)

PIREDEU <- read.spss("C:\\Users\\acer\\Desktop\\X\\X\\PIREDEU\\ees2009_v0.9_20110622.sav",
  use.value.labels = F,
  to.data.frame = T)

它有效吗?

于 2013-07-03T12:39:25.790 回答
0

将 spss 数据文件转换为 .por(便携式文件)并在 R 中安装包hMiscmemisc然后使用、和foreign加载包。library(foreign)library(hMisc)library(memisc)

然后键入以下内容:

mydata <- spss.get("c:/mydata.por", use.value.labels=TRUE)
# last option converts value labels to R factors
于 2013-11-19T18:34:54.480 回答