Python/SPSS重命名变量名

2024-09-29 23:17:18 发布

您现在位置:Python中文网/ 问答频道 /正文

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

旧名称=t1XXX改为新名称=t01XXX

尝试使用我在这里找到的代码(如下所示),但无法正确地更改此代码以满足我的需要。谢谢你的任何提示!在


来自Jignesh-Sutar的示例;去掉spss/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.

Tags: 代码in名称forprogramsubmitjoinset
1条回答
网友
1楼 · 发布于 2024-09-29 23:17:18

这里有一个程序可以做到这一点。它首先为所有以t开头、后跟单个数字后接非数字的名称创建一个变量字典。然后生成一个重命名变量命令,并在前导0中添加。在

代码如下:

import spss, spssaux  

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

相关问题 更多 >

    热门问题