重塑宽度时将值标签带到变量标签 [英] Bring value labels to variable labels when reshaping wide

查看:10
本文介绍了重塑宽度时将值标签带到变量标签的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Stata中,我希望在调整宽度时能够将值标签提升到变量标签中。

我的原始数据如下:

patient hosp_id     hosp_name               charges
Andrew  1           Springfield General     $10 
Barry   1           Springfield General     $20 
Crista  2           Lincoln Medical Center  $10 
Doris   2           Lincoln Medical Center  $15 
Ellen   1           Springfield General     $15 
Faye    3           Memorial Hospital       $35 

然后我标记hosp_idreshape wide的值。

label define hosp_names 1 "Springfield General" 2 "Lincoln Medical Center" 3 "Memorial Hospital"
label value hosp_id hosp_names
reshape wide charges, i(patient) j(hosp_id)

我希望我放置在hosp_id上的标签跟随其关联值并成为变量标签。我知道我可以在重塑后逐个标记变量,但对于更大的j值集(在本例中是医院),这可能是不切实际的。如何以编程方式使用hosp_name的关联值标记每个hosp_id变量?

推荐答案

通常,应用reshape以及传递变量或值标签可能会很麻烦,但有关详细讨论,请参阅http://www.stata.com/support/faqs/data-management/apply-labels-after-reshape/中的文档。

在您的示例中,reshape代码所做的是处理charges,并为每个不同的医院创建一个单独的变量。(您的问题是:如何以编程方式用hosp_name的关联值标记每个hosp_id变量?但hosp_id不变继续。)

使用separate可以更直接地实现这一点。这里有一个与你的几乎一模一样的例子。

. input str6 patient hosp_id  str22 hosp_name  charges

    patient    hosp_id               hosp_name    charges
 1. "Andrew"  1           "Springfield General"     10 
 2. "Barry"   1           "Springfield General"     20 
 3. "Crista"  2           "Lincoln Medical Center"  10 
 4. "Doris"   2           "Lincoln Medical Center"  15 
 5. "Ellen"   1           "Springfield General"     15 
 6. "Faye"    3           "Memorial Hospital"       35 
 7. end 

. separate charges, by(hosp_name) veryshortlabel 

               storage  display     value
variable name   type   format      label      variable label
----------------------------------------------------------------------------------------
charges1        byte   %9.0g                  Lincoln Medical Center
charges2        byte   %9.0g                  Memorial Hospital
charges3        byte   %9.0g                  Springfield General
veryshortlabel选项未在帮助和手册中记录,但在这里很有用。当然,这不是强制性的。http://www.stata-journal.com/sjpdf.html?articlenum=gr0023中有提到,实质上是separate写完之后的一个后顾之忧。

这篇关于重塑宽度时将值标签带到变量标签的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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