具有奇数宏引用的古代Stata v7代码

时间:2014-02-18 21:47:15

标签: stata

我正在使用来自ICPSR的数据,其中do文件是在2001年左右在Stata V7中编写的。do文件指出该程序仅在版本7中运行(这是真的) 。我在理解部分代码时遇到了问题,我想知道是否有更多知识渊博的人可以提供帮助。

以下是代码的示例块:

program drop _all;
program define impact1;

scalar drop _all;

*First define proportions in your sample;

qui reg svy_cmove [pweight=`8'] if `1'~=. & t_exp_vs_ph==1;
scalar define ptmove=_b[_cons];

qui reg svy_cmove [pweight=`8'] if `1'~=. & t_s8_vs_ph==1;
scalar define ps8move=_b[_cons];

qui reg `6'  [pweight=`8'] if `1'~=.;
scalar define tprop=_b[_cons];

qui reg `7' [pweight=`8'] if `1'~=.;
scalar defin s8prop=_b[_cons];

*Need to svyset data to specify weight;

svyset pweight `8' ;

代码运行良好并执行它应该执行的操作(从研究中复制表),但我不明白的是编号引用的含义,例如,

pweight= `8'

它指的是调查中使用的总重量,但我不知道Stata如何建立参考之间的连接

`8' 

和适当的重量变量。请注意,它并未在do文件中的任何位置定义。当代码运行一系列回归以复制研究团队生成的表时,代码会在整个文件中使用这些引用。

了解此过程如何运作将有所帮助,因此我可以理解Stata如何在变量和数字之间建立连接。

1 个答案:

答案 0 :(得分:3)

这些只是位置参数。 1表示程序命令后写的第一个字,2表示第二个字,依此类推。这在Stata仍然是标准的

这是一个例子

clear
program define positions
    di "`1'"
    di "`2'"
    di "`3'"
end
positions one two three

大概当你调用impact1程序时,第八个参数是概率权重。