将SPSS数据集导入Python
题
是否有任何方法可以将SPSS数据集导入Python,最好是Numpy Recarre格式?我环顾四周,但找不到任何答案。
俊
解决方案
也许这会有所帮助:SPSS SAV文件(Linux,Mac&Windows)的Python Reader + Writerhttp://code.activestate.com/recipes/577811-python-reader-writer-for-spss-spss-sav-files-linux-mac-//
其他提示
SPSS与Python具有广泛的集成,但该集成量与SPSS(现在称为IBM SPSS统计数据)一起使用。有一个SPSS ODBC驱动程序,可以与Python ODBC支持一起读取SAV文件。
选项1正如Rkbarney指出的那样,有Python SavreaderWriter可通过PYPI获得。我遇到了两个问题:
- 它依靠除看似纯粹的派森实施之外的许多额外库。 IBM提供的SPSS I/O模块几乎在每种情况下都读取SPSS文件。这些模块因平台而有所不同,根据我的经验,“ PIP INSTALS SAVREADERWRITER”不会让它们跑出框(ON OS X)。
- SavreaderWriter的开发虽然没有死,但最新的时间就比人们希望的要少。这使第一个问题复杂化。它依靠一些不弃用的软件包来提高速度,并在任何导入SavreReaderWriter的时间时发出一些警告。今天并不是一个大问题,但是随着IBM继续更新SPSS I/O模块以处理新的SPSS格式(如果存储器使用,则已经在版本21或22)中可能会很麻烦。
选项2我选择使用R作为中间人。使用RPY2,我设置了一个简单的函数,将文件读取到R数据框架中,并将其再次输出为CSV文件,然后将其随后导入到Python中。有点鲁巴 - 戈尔德伯格,但有效。当然,这可能需要在您的环境中安装的麻烦(并且针对不同平台具有不同的二进制文件)。
您可以让Python对 SPSSREAD, ,一个以您想要的方式输出SPSS文件的内容的Perl脚本。
需要明确的是,SPSS ODBC驱动程序不需要SPSS安装。
不隶属于 StackOverflow