我正在使用Stata14,并试图添加两个调查数据集,这些数据集具有大约200个变量,名称相同,但值和值标签不同。我想做附加,以便从数据集“在磁盘上”中保留值标签。
下面是一个描述我的问题的例子:
数据集1中的变量(主):
价值标签
1-是
2-否
数据集2中相同的变量(附在主数据集中):
价值标签
1-是绝对的
2-不绝对不是
3-也许
4-不知道
用append using "dataset 2.dta"计算结果
价值标签
1-是
2-否
3-3
4-4
预期结果:
价值标签
1-是
2-否
3-也许
4-不知道
有任何方法可以直接使用append来完成这个任务吗?如果没有,任何关于有效完成这项任务的建议都是非常受欢迎的。
发布于 2017-01-26 00:06:14
简而言之,答案是
NOPE
所以你得聪明点。尝试使用此技巧http://www.stata.com/support/faqs/data-management/keeping-same-variable-with-collapse/,在此您将获得将附加到整个数据集的标签的本地副本。
发布于 2017-01-26 16:05:39
你想要使价值标签一致,这是明智的,精细的和容易做的。
当您对所有数据集进行append编辑后,然后快速覆盖任何值标签赋值。
label define whatever 1 yes 2 no 3 maybe 4 "don't know"
label val myvar whatever 如果具有该名称的一组值标签已经存在,则在第一个位置使用, modify。
这是一项迟做的任务。它不需要在append之前或期间被修复,而且在这一点上它可以很容易地完成。
当然,这对于多个变量来说是乏味的,但不难理解。此外,即使append能够接受使用哪个标签的指示,您仍然必须将其拼写出来。在您的示例中,您想要的值标签实际上并没有在任何数据集的中使用。所以,会有一些不可避免的痛苦。有一个混乱的清理和修复是不能完全自动化的,因为它取决于您的想法,哪些标签是最好的。
https://stackoverflow.com/questions/41863468
复制相似问题