从Python,Java(groovy/grails)或C++应用程序访问SPSS数据而无需SPSS许可证?

Access SPSS data from a Python, Java (groovy/grails)' or C++ app without license for SPSS?

本文关键字:SPSS 数据 访问 应用程序 许可证 C++ Java Python groovy grails      更新时间:2023-10-16

我发现谷歌的结果好坏参半。我需要解析一个SPSS .sav文件来发现数据布局并提取调查结果。第一步是读取数据的"模式"。例如,我需要知道问题及其允许的回答类型。我计划在我自己的SQL表中对这些数据进行建模,这样我就可以根据我的应用程序需求对其进行切片和切片。第二步是用受访者的回答填充我的数据模型。查看SPSS sav文件,我相信它具有我正在寻找的两种类型的数据。

我不需要或想要昂贵的SPSS软件,如果我不是严格要求它。我们不会对这些数据进行统计,只是根据答案过滤器选择受访者的子集。SPSS文件将由获得SPSS许可的合作伙伴公司提供。我不需要输出任何数据回SPSS;我的用例是只读的

我可以使用Python, Java有或没有Groovy, C/c++为我的解析器程序。此程序将在数据收集结束时运行一次,因此性能不是特别重要。理想情况下,我希望我的代码是跨平台的,所以我可以在我的Mac上开发和部署到Linux,但我可以使用windows,如果我必须,

我发现的很多东西要么是2004年的java类,要么是需要IBM DLL的现代Python代码,并且是windows特定的。基于我对需求的快速解释,我将感谢来自SO社区的建议。我想我的需求很简单,但还没有找到我所希望的。开源库是理想的,但我甚至愿意以合理的价格购买一个简单的商业解决方案。

您可以免费获得带有详细文档的SPSS i/o模块,以便构建自己的应用程序来读取(或写入)sav文件。这些模块可用于SPSS Statistics支持的所有平台。

进入SPSS社区网站http://www.ibm.com/developerworks/spssdevcentral,点击SPSS下载链接。你必须注册,但那是免费的。

SAV文件是具有许多复杂结构的二进制格式,因此最好使用i/o模块。如果SAV文件中添加了新特性(这种情况经常发生),则i/o模块会同时更新,因此您的代码不会过时。

HTH,乔恩·派克

GNU PSPP显然可以读取SPSS数据文件。我还在PSPP源代码中找到了一个指向该格式描述的链接,尽管它附带了一个警告"不要尝试直接读取/写入该格式"。

这里有一个java库:

http://sourceforge.net/projects/spss-writer/