0

我只想在 python 脚本中将我的结果打印到名为“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.
4

2 回答 2

0

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

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

于 2013-08-12T18:45:43.840 回答
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")
于 2013-08-12T15:26:59.893 回答