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

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

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

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

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

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

访问位于http://www.ibm.com/developerworks/spssdevcentral的SPSS社区站点,然后单击SPSS下载链接。 你必须注册,但这是免费的。

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

HTH,Jon Peck

GNU PSPP显然可以读取SPSS数据文件。 我还找到了PSPP源代码格式描述的链接,尽管它附带了警告“不要试图直接读取/写入这种格式”。