在Stata中将值从一个变量转移到另一个变量 [英] transfer values from one variable to another in Stata

查看:11
本文介绍了在Stata中将值从一个变量转移到另一个变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在工作中遇到了一个问题:我合并了两个数据集,并且有许多变量具有相同的内容,但在数据集1的变量中具有值的观测在数据集2中缺少值。因此,我需要将值从一个变量转移到另一个变量。

这是我迄今为止最好的一张照片:

replace V23=1 if V232==1
replace V23=2 if V232==2
replace V23=3 if V232==3
replace V23=4 if V232==4
replace V23=8 if V232==8
replace V23=.u if V232==10 | V232==9

然而,对40多个变量执行此操作是一项单调乏味的任务,而且由于其中一些变量是数值变量,因此这成为一项艰巨的任务。

推荐答案

开始:

foreach v of varlist v23 {
    local w `v'2
    replace `v' = `w' if missing(`v')
    replace `v' = .u if `w' == 10 | `w' == 9
}
请注意,该解决方案依赖于变量名之间的词汇关系:它假定旧变量"v23"与新变量"v232"相关联。您可以列出这样的关联并使用它,但这并不方便。如有必要,可能更容易重命名变量,以符合这样的约定,然后运行替换脚本,然后恢复所需的名称。

如果您不熟悉这种自动化,请阅读macroforeach的帮助页。

这篇关于在Stata中将值从一个变量转移到另一个变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆