打印结果到单元格SPSS python脚本

时间:2013-08-12 15:17:05

标签: python spss

我只想在python脚本中将我的reslut打印到名为“vysledek”的Spss单元格中。 Ivot只有两个数组,所以我对这个数组进行计算,只计算第二个数比第一个更大的情况,并希望将结果打印到vysledek。

   Begin program.

      import spss, spssaux

      spssaux.OpenDataFile('C:\Users\šoťa\Desktop\datacssd.sav')


    dlist = ['PARLAMENTCSSD2010']

        ilist = ['KRAJCSSD2012']

     vlist = ['VYSLEDKY']

       ddim = Len(dlist)

    idim = Len(ilist)


     For i In range(ddim): 
       If dlist[x] < ilist[x]:

             Print ('the ilist is higher in cases: + '.') 
             spss.Submit(r"""                  
               vlist[1]=vlist[1]+1
     End program.

2 个答案:

答案 0 :(得分:0)

不确定SPSS接口是如何工作的,但我怀疑它不起作用,因为代码中几乎每一行都是无效的Python语法。尝试转换为以下内容:

import spss, spssaux

spssaux.OpenDataFile('C:\Users\šoťa\Desktop\datacssd.sav')


dlist = ['PARLAMENTCSSD2010']

ilist = ['KRAJCSSD2012']

vlist = ['VYSLEDKY']

ddim = len(dlist)

idim = len(ilist)

for i in range(ddim):
    if dlist[x] < ilist[x]:
        print ('the ilist is higher in cases: + .') 
        spss.Submit("vlist[1]=vlist[1]+1")

答案 1 :(得分:0)

我怀疑一些大写的疯狂工具打破了原来的帖子,但问题仍然是使用Submit api。提交的参数是一行或多行SPSS语法,而不是上面显示的内容。如果在Python代码中累积计数(而不是在字符串vlist中),则可以将其作为普通的Python打印语句打印出来。

如果你想把它变成一个漂亮的数据透视表,你可以使用 spss.SimplePivotTable api。