问题标签 [stata-macros]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4197 浏览

stata - 鉴于其中一些变量可能不存在,如何保留变量列表?

我有 100 个dta文件。我有一个我需要的变量列表keep并即时保存临时副本。某些变量可能存在,也可能不存在dta

我需要 Stata 保留 a 中存在的所有变量dta并忽略那些不存在的变量。

以下代码有错误的语法,但它可以作为一个很好的伪代码,让人们大致了解应该做什么:

有没有办法做到这一点?

0 投票
1 回答
618 浏览

for-loop - 在循环中包含变量局部宏

使用forvalues循环,我正在合并一个包含 400 个单独数据集的列表。

这些数据集可以是 10 个不同的值之一(由数据集中的变量定义):根据数据集,我会merge使用不同的数据集。例如,如果 Player 90 是类型 9,我想合并Type_9.dta而不是Type_8or Type_7

我想要的是这样的:

如何将变量类型转换为通过循环为每种类型更改的宏?

0 投票
2 回答
1240 浏览

loops - 如何使用宏操作文件名

我想将我的 Stataforvalues循环的结果保存到单个文件中。文件名的一个组成部分应该是在循环中j分配给宏的值。forvalues

显然我的代码会导致一条指令总是用1995. 因此,我收到消息告诉我这个文件已经存在。

我正在使用以下代码:

有人对此有答案吗?

0 投票
1 回答
1982 浏览

stata - "word # of string" 成语(扩展字符串函数的一部分)

我正在尝试forvalues在 Stata 11.2 版的循环中标记变量。

但是,我无法让扩展字符串函数word # of string习语工作:

这遵循Statalist 解决方案,但我不断收到invalid syntax错误。

我也试过local names Growth Mature All了,但这也不起作用。

有没有办法在算法上做到这一点?

0 投票
3 回答
535 浏览

r - 相当于Stata的宏

可以在 R 中使用宏吗?

我确实看过另一个与此类似的问题,但不能很好地理解它。

假设我想创建标量,每个标量都有不同的名称和内容。基本上,我想在 R 中运行的内容可以通过以下虚拟示例来说明:

在 Stata 中,asi取不同的值,scalar1生成scalar2,scalar3等。i=1/5在运行循环时,我不必输入整个列表(只需)。

这可以在R中完成吗?

0 投票
1 回答
139 浏览

variables - 在公式中使用单元格值

如果我在 Stata 中有一个带有数字的变量,我可以使用嵌入在公式中的值吗?

例如,我可变天数 ( days) 并且对于每个人,我想在第二个公式中使用该数字:

变量new_var将取值并从列表中Days提取相应的值:var_x

我努力了:

然而,这并没有奏效。

0 投票
0 回答
14590 浏览

stata - 宏不断导致“无效名称”

在使用 R 很长一段时间后,我是 Stata 的新手。

我正在尝试执行任何涉及宏的操作,例如循环,并且它不断给我一个invalid name r(198)错误。

例如,当我第一次启动 Stata 时,我在命令提示符中输入以下代码:

这导致:

同样,我尝试:

这会导致相同的invalid name错误。

我显然在做一些根本错误的事情。我尝试将相同的命令放入do文件并运行它们,但发生了同样的事情。

我想知道这是否与我如何运行该链接所暗示的代码有关,但没有任何建议对我有用。

我正在从服务器远程运行 Stata,如果这可能会影响任何事情。

0 投票
2 回答
734 浏览

stata - 观察子集的局部宏

我想为我的数据集的一个子集创建一个本地宏,以用于未来的回归(请参阅循环外宏的一些用途部分)。

我从以下几行代码开始:

x3reg有缺失值,因此在第一个命令中排除了一些观察结果。该list命令的输出确实表明宏的内容确实是我想要的(Unit是一个标识观察的变量)。

尽管如此,我在最后一个命令之后收到一条错误消息:

从以下信息r(111)

__________ 未找到;
没有定义变量;
变量不存在。您可能输入了错误的变量名称。

我的语法有什么问题?也就是说,为什么Stata将if其视为变量?

0 投票
1 回答
1146 浏览

regex - 如何从宏中提取唯一字符串?

我正在尝试reshape使用Stata自动化。

我每年测量一系列变量。它们都被命名为varname_yy,其中yy是指测量年份的数字。我设法varname_从变量中提取所有存根,并使用以下代码将它们放入宏中:

问题是我最终在stubs宏中有许多重复的存根,这会导致reshape返回错误消息。

在 RI 中只需要unique(stubs),但我在 Stata 中找不到任何此类功能。

我的暂定解决方案是执行以下操作:

但是,我无法摆脱重复项。

正确的做法是什么?

0 投票
1 回答
1182 浏览

stata - 比较两个不同本地宏的元素

我有一个名为的本地宏peer_list,它包含 280 个不同的元素,所有这些元素都是字符串。我还有另一个名为 local 的宏,它包含 localused_list中包含的元素的子集peer_list

对于中的每个元素,peer_list我想测试该元素是否在本地used_list. 如果元素存在used_list我想丢弃它,否则我想执行另一组条件。

我曾尝试使用以下代码,但没有奏效:

我将不胜感激有关实现此目的的替代方法的任何建议。