我想根据程序用户的兴趣进行回归。
例如,我想运行以下回归并具有更改输入的能力
reg更喜欢学校#女性#待遇
我有多个偏好设置,例如数学,科学,艺术等。
我想要的是
local preference = math (where I can choose the others as well)
local compareSchooling = Y
local compareGender = Y
reg preference inSchool#female#treatment
if compareSchooling=Y & compareGender=Y {
test 1.inSchool#1.female#1.treatment = 0.inSchool#0.female#1.treatment
}
其背后的动机是其他人可以轻松地使用该程序来自定义他/她的分析。
但是,我很难使机械师工作。
如果您对实现有个更好的主意,那我就耳熟能详。
谢谢!
很难在示例中确定需要程序的一般问题。
同样,当您询问Stata程序时,Stata程序员往往会想像您希望编写program
并以这种方式定义新命令,但实际上并不需要在这里编写新命令并不明显。
我以为例regress
,test
可以针对不同的变量重复运行。
但是有些细节是晦涩的。什么Y
啊 还是只是表示“是”的一种方式?如果要以交互方式运行它,则使用本地宏将是徒劳的,因为您只需将名称放入本地宏中,然后再将其删除即可。
如果确实编写了程序,则需要使用帮助文件对其进行文档说明,以解释其功能,或者至少进行其他操作。出于什么目的?那么,一个用户(您或其他人)可以重复两个具有不同详细信息的命令吗?那里的收益尚不清楚。
据我了解您的问题,主要需求根本不是程序,而是
将重复的命令放在一个do文件中,并允许该do文件接受参数。那是被低估的可能性。参见[U]手册,16.4
了解有关使用循环遍历变量的信息foreach
。
注意:“局部变量”不是Stata的标准术语;他们总是被称为“本地宏”。在Stata中,变量是数据集中的一列。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句