统计211

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 16117|回复: 0
打印 上一主题 下一主题

SPSS批量处理变量

[复制链接]
跳转到指定楼层
1
发表于 2010-5-30 11:18:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
【转帖】通常我们选择使用SPSS是因为有比较友好的交互窗口,可以不用像SAS那样写代码。但是这也有劣势……
当遇到有上千个变量的数据集的时候,窗口操作就傻掉了……记得变量名,但是要从变量名列表中找到它就如大海捞针了……
上几天我就碰到了这样的一个数据集,有1200多个变量。这下傻眼了……

分析要用到其中的几个变量,而且变量还要重新整理。
比如,重新编码……真不好玩……我就以第一个变量为例,然后paste到程序编辑器,这样该有的语句都有了,只需要修改一下就ok了……
这个是RECODE的代码:
RECODE
  qhc2a
  (1 thr 4=1)  (5=0)  (ELSE=SYSMIS)  INTO  yy1 .
VARIABLE LABELS yy1 '是否上税'.
VALUE LABEL yy1 1 '有' 0 '无'.
EXECUTE .

其实仔细观察,发现这个RECODE只是前面一个句点,语法是
RECODE
原变量
重编码规则    INTO 新变量.

下面的两句是针对新变量的属性设置,分别是对变量标签和值标签进行设置。
VARIABLE LABELS yy1 '是否上税' var2 "变量名2".
VALUE LABEL yy1 1 '有上税' 0 '无上税'.
对变量标签的定义可以连着往下继续,但是对值标签的定义不可以(好像)
相似的还有
MISSING VALUE yy1 (-9 -10).
这个是设置缺失值的。

其实只要能够灵活的运用paste,就可以解决这样的问题,而且在处理大量重复操作的时候也很有用。只需要少量修改变化的部分。


另外,对于如果只使用那么多变量里面的其中几个时,可以把那部分的变量提取出来,用SAVE as,在保存的上面有一个Variables..,在这里你可以选择你需要的变量。不过在变量很多的时候,这个过程也很郁闷,那么还是用代码吧。
SAVE OUTFILE='Y:\abc.sav'
  /KEEP=x1 x2  /COMPRESSED.
这里的x1 x2就是你选择的变量。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


免责声明|关于我们|小黑屋|联系我们|赞助我们|统计211 ( 闽ICP备09019626号  

GMT+8, 2025-4-11 07:02 , Processed in 0.081089 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表