Stata程序:在我的程序中接纳另一个程序的所有选项

发布时间:2020-10-08 阅读 1843

Stata 连享会   主页 || 视频 || 推文

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

课程主页 https://gitee.com/arlionn/Course


目录


Source: Stackoverflow - Stata ado syntax with double quotes

问题背景

I would like to have an option in my program that allows any twoway option to be used (see help twoway_options) and have run into a problem when using quotes either with just whitespace or within subcommands as demonstrated below.

sysuse gnp96, clear
capture prog drop adding_quotes
prog def adding_quotes 
    syntax [, tw_opts(string)]
    line gnp96 date, `tw_opts'
end

// throws error
adding_quotes, tw_opts(text(7000 97 "Middle Text"))
adding_quotes, tw_opts(xtitle(" "))

// runs
adding_quotes, tw_opts(text(7000 97 `""Middle Text""'))
adding_quotes, tw_opts(xtitle(""))

I would also note that doing away with the syntax command will also solve the problem, but I would rather keep it in and not have to parse the whole command.

Is it possible to change the syntax command so that the two commands that throw errors work?

解决方法

Two suggestions and a comment:

  1. You want to allow any twoway options, which you will pass to a graph command. It's simplest just to use a wildcard * in syntax and let syntax (and in this case twoway) do all the work.
sysuse gnp96, clear

capture prog drop adding_quotes
prog def adding_quotes 
    syntax [, * ]
    line gnp96 date, `options'
end

adding_quotes, text(7000 97 "Middle Text") 
adding_quotes, xtitle(" ")
  1. As above, the xlabel(" ") call was illegal regardless. You're probably influenced by terminology elsewhere to think of what Stata calls axis titles as axis labels. For Stata, the axis labels are the individual text labels, by default in twoway at various numeric positions on the axes.

  2. In other problems specifying that an option argument is string asis inhibits the stripping of double quotes.

相关课程

连享会-直播课 上线了!
http://lianxh.duanshu.com

免费公开课:


课程一览

支持回看,所有课程可以随时购买观看。

专题 嘉宾 直播/回看视频
最新专题 DSGE, 因果推断, 空间计量等
Stata数据清洗 游万海 直播, 2 小时,已上线
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]

Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。


关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。直播间 有很多视频课程,可以随时观看。
  • 连享会-主页知乎专栏,300+ 推文,实证分析不再抓狂。
  • 公众号推文分类: 计量专题 | 分类推文 | 资源工具。推文分成 内生性 | 空间计量 | 时序面板 | 结果输出 | 交乘调节 五类,主流方法介绍一目了然:DID, RDD, IV, GMM, FE, Probit 等。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会主页  lianxh.cn
连享会主页 lianxh.cn

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会学习群-常见问题解答汇总:
https://gitee.com/arlionn/WD