Python/SPSS重命名变量名



尝试使用SPSS/Python,我想更改某些变量的变量名。
例如,我需要所有带有

的变量

oldname = t1XXX更改为newname = t01XXX

试着玩我在这里找到的代码(像下面),但不能正确地改变这一点来做我需要的。谢谢你的提示!


来自Jignesh Sutar的例子;strip-suffix-from-all-variable-names-in-spss/34816192 # 34816192)

begin program.
spss.Submit(r"set mprint on.")
import spss, spssaux
allvarlist=[str(v) for v in spssaux.VariableDict()]
filteredvarlist=[v for v in allvarlist if v.endswith("_1")]
spss.Submit( "rename variables (n" 
     + "n".join(filteredvarlist) 
     + "n=n" 
     + "n".join([v[:-2] for v in filteredvarlist]) 
     + ").")
spss.Submit(r"set mprint off.")
end program.

下面是一个程序。它首先为所有以t开头的名称创建一个变量字典,后面跟着一个数字,然后是一个非数字。然后生成一个RENAME VARIABLES命令,添加一个前导0。

代码如下:

import spss, spssaux  
vardict = spssaux.VariableDict(pattern="tdD")  
newnames = [v[0] + "0" + v[1:] for v in vardict.variables]  
cmd = """rename variables (%s=%s)""" %   
(" ".join(vardict.variables), " ".join(newnames))  
spss.Submit(cmd)  

最新更新