我在Stata中有一个纵向数据集,并且想要在变量中创建每个组的单独的 tsline
图 . 所以,假设我有时间从1980年到2010年运行,类别1,2,...,17;我想创建十七个单独的 tsline
图表,绘制从1980年到2010年的变量X的相应值,并使用类别标签作为 Headers .
我写了一个创建 tsline graphs
的短循环,但我无法弄清楚如何添加正确的 Headers . Headers 应该是分类变量值的标签 . 也就是说,如果我将X绘制为 ID == 1
,我希望 Headers 为 ID == 1
的标签,如果可能的话 . 理想情况下,我想为循环中的每个 ``i'存储一个特定的值标签
local` . 这样我也可以在导出图形时将它也用作文件名的一部分,例如给出 .
我的代码:
tsset ID Date, daily
forvalues i = 1/17 {
tsline X if ID==`i', title(??)
}
1 回答
使用扩展的宏功能 . 这是一个例子:
origin
是与变量foreign
关联的值标签的名称 . 您可以使用label list
列出所有值标签的名称和内容 .第
local t : label origin
i'行检索宏
i中值的标签,并将其分配给宏
t. 然后你可以根据需要使用宏
t` .见
help label
,help macro
和help extended_fcn
.