0

我的客户有几个已经运行了一段时间的 Stata 程序(.do 文件)。

是否可以为 Stata 提供前端页面或表单,以便我们可以选择不同的选项/标准并根据选择运行 Stata 上的某些程序?

基本上有没有办法为Stata程序创建表格?

4

3 回答 3

2

为程序制作“表单”的一种粗略方法是使用宏。这不是带有文本框的显式对话框形式,但它允许您从单个 .do 文件控制程序。基本上,在一个单独的 do 文件中使用一堆全局宏,然后在整个 .do 文件中使用这些宏。我下面的例子就是这样做的

宏文件(表单 do-file)

global projectname stackoverflow
global exportfmt putdocx
global analysisfolder "/file/path"
global dofilesfolder "/file/path"

该宏projectname允许您为项目命名,因此我将它放在所有文件保存命令中,或者我save使用该名称清理了数据集。您甚至可以将其放在文件路径中。

使用or命令exportfmt生成报告时通常使用的宏。拥有一个全局变量可以让我在导出 pdf 或 docx 之间切换。putdocxputpdf

analysisfolder然后,您可以使用宏dofilesfolder创建文件路径,只需填写“表格”即可为不同的项目调用这些路径。

Do-files 使用

$exportfmt clear
$analysisfolder
use $project, clear

$exportfmt begin
$exportfmt paragraph

因此,使用您的所有宏创建一个单独的 do-file(表单 do-file),然后您可以在一个您认为合适的地方将它们全部更改。这不是一个真正的形式,但它可以简化整个 Stata 程序中许多事情的更改。

于 2018-03-28T12:40:41.250 回答
1

Stata 可以在批处理模式下启动

stata /b do whatever.do

因此,您可以whatever.do使用方便的工具形成该文件,然后根据需要运行它。当然,您需要确保客户的 do-files 生成的任何输出都以计算机可读的格式保存(而不是仅仅留在屏幕上供分析人员复制并粘贴到 Word 中)。

这是由世界银行的 ADePT 团队实施的,参见http://www.worldbank.org/adept。它有一个 C# GUI,但它在内部运行 Stata。

于 2012-09-11T21:03:24.200 回答
0

您可以从 Stata 的下拉菜单中创建一个可以使用的表单。见help dialog_programming页面。

于 2012-09-13T10:45:43.027 回答