Импорт набора данных SPSS в Python - PullRequest
6 голосов
/ 04 сентября 2010

Есть ли способ импортировать набор данных SPSS в Python, предпочтительно формат повторного массива NumPy?Я огляделся, но не смог найти ответа.

Джун

Ответы [ 7 ]

3 голосов
/ 04 сентября 2010

SPSS имеет обширную интеграцию с Python, но он предназначен для использования с SPSS (теперь известен как IBM SPSS Statistics). Существует драйвер ODBC SPSS, который можно использовать с поддержкой ODBC Python для чтения сохраненного файла.

3 голосов
/ 27 января 2014

Вариант 1 Как указал rkbarney, есть Python savReaderWriter, доступный через pypi. Я столкнулся с двумя проблемами:

  1. Он опирается на множество дополнительных библиотек, помимо, казалось бы, чистой Python-реализации. Файлы SPSS читаются и записываются почти в каждом случае предоставленными IBM модулями ввода / вывода SPSS. Эти модули различаются в зависимости от платформы, и по моему опыту «pip install savReaderWriter» не запускает их из коробки (в OS X).
  2. Разработка на savReaderWriter, хотя и не умерла, менее актуальна, чем можно было бы надеяться. Это усложняет первый вопрос. Он использует некоторые устаревшие пакеты для увеличения скорости и выдает некоторые предупреждения каждый раз, когда вы импортируете savReaderWriter, если они недоступны. Сегодня это не большая проблема, но в будущем это может стать проблемой, так как IBM продолжает обновлять модули ввода / вывода SPSS для работы с новыми форматами SPSS (они уже в версии 21 или 22, если память используется).

Вариант 2 Я решил использовать R в качестве посредника. Используя rpy2, я настроил простую функцию для чтения файла во фрейм данных R и вывода его снова в виде файла CSV, который я впоследствии импортирую в python. Это немного rube-goldberg, но это работает. Конечно, для этого требуется R, который также может быть сложен для установки в вашей среде (и имеет разные двоичные файлы для разных платформ).

2 голосов
/ 30 ноября 2011

Вы можете сделать так, чтобы Python сделал внешний вызов spssread , сценария Perl, который выводит содержимое файлов SPSS так, как вы хотите.

2 голосов
/ 04 сентября 2010

gretl утверждает, что импортирует SPSS и экспортирует в различные форматы, как и статистический пакет R . Я никогда не имел дело с данными SPSS, поэтому не могу говорить об их относительных достоинствах.

1 голос
/ 12 января 2013

Может быть, это поможет: Читатель Python + средство записи для spss-файлов (Linux, Mac и Windows) http://code.activestate.com/recipes/577811-python-reader-writer-for-spss-sav-files-linux-mac-/

1 голос
/ 07 марта 2011

Может быть, это кому-нибудь пригодится:

http://sourceforge.net/search/?q=python+SPSS

удачи!

Michal

1 голос
/ 11 сентября 2010

Для ясности, драйвер SPSS ODBC не требует установки SPSS.

...