Импорт набора данных SPSS в Python

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

Joon

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

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

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

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

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

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

Чтобы быть ясным, драйвер SPSS ODBC не требует установки SPSS.

Возможно, это будет полезно для кого-то:

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

удачи!

Michal

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

Interesting Posts