Я пытаюсь изучить R и хотеть ввести файл SPSS, который я могу открыть в SPSS.
Я попытался использовать read.spss
от foreign
и spss.get
от Hmisc
. Оба сообщения об ошибках являются тем же.
Вот мой код:
## install.packages("Hmisc")
library(foreign)
## change the working directory
getwd()
setwd('C:/Documents and Settings/BTIBERT/Desktop/')
## load in the file
## ?read.spss
asq <- read.spss('ASQ2010.sav', to.data.frame=T)
И получающаяся ошибка:
Ошибка в read.spss ("ASQ2010.sav", to.data.frame = T): ошибка читая заголовок системного файла, Кроме того: Предупреждающее сообщение: В read.spss ("ASQ2010.sav", to.data.frame = T): ASQ2010.sav: положение 0: символ '\000' (
Кроме того, я пытался сохранить файл SPSS как файл SPSS 7 .sav (ранее использовал SPSS 18).
Предупреждающие сообщения: 1: В read.spss ("ASQ2010_test.sav", to.data.frame = T): ASQ2010_test.sav: Нераспознанный тип записи 7, выделите подтипы в 14 встреченных в системном файле 2: В read.spss ("ASQ2010_test.sav", to.data.frame = T): ASQ2010_test.sav: Нераспознанный тип записи 7, выделите подтипы в 18 встреченных в системном файле
1)
Я нашел программу stat-transfer, полезную для импорта файлов spss и stata в R.
Она решает проблему, о которой вы упомянули, преобразовывая spss в R набор данных. Также очень полезен для разбиения сверхбольших наборов данных на более мелкие части, потребляемые R. Не бесплатно, но очень полезный инструмент для работы с наборами данных из разных программ, особенно если у вас нет к ним доступа.
2)
В пакете Memisc также есть функция spss, которую стоит попробовать.
Если у вас есть доступ к SPSS, сохраните файл как .csv, а затем импортируйте его с помощью read.csv
или read.table
. Я не могу вспомнить никаких проблем с импортом файлов .sav. До сих пор все работало как по маслу и с read.spss
и с spss.get
. Я полагаю, что spss.get
не даст других результатов, поскольку он зависит от foreign::read.spss
Можете ли вы предоставить некоторую информацию о версии SPSS/R/Hmisc/foreign
?Похоже, что реализация read.spss в R неполна или не работает. Однако R2.10.1 работает лучше, чем R2.8.1. Похоже, что R расстраивается из-за настраиваемых атрибутов в сохраненном файле даже с 2.10.1 (последняя версия, которая у меня есть). R также может не понимать поле кодировки символов в файле, и, в частности, он, вероятно, не работает с файлами SPSS Unicode.
Вы можете попробовать открыть файл в SPSS, удалить любые настраиваемые атрибуты и повторно сохранить файл. Вы можете увидеть, есть ли настраиваемые атрибуты, с помощью команды SPSS
display attributes.
Если да, удалите их (см. Команды ПЕРЕМЕННЫЙ АТРИБУТ и АТРИБУТ ДАННЫХ) и повторите попытку.
HTH, Джон Пек