【发布时间】:2016-10-21 23:16:39
【问题描述】:
尝试使用 SPSS/Python 我想更改某些变量的变量名称。
例如,我需要带有
oldname = t1XXX 更改为 newname = t01XXX
尝试使用我在此处找到的代码(如下所示),但无法正确更改此代码以执行我需要的操作。感谢您的任何提示!
Jignesh Sutar 的例子;从所有变量名称中剥离后缀在 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.
【问题讨论】:
-
您尝试做的更改是将数字部分始终转换为两位数吗?即如果它是 t10xxx 则无需进行任何更改?
-
感谢您的跟进问题;我的数据中有不同的变体,这只是一个例子。我认为我的主要问题是我不知道 Python 正则表达式如何选择我想要与 SPSS 语法交互的变量... :-)