我有许多变量的名称以前缀indoor开头。 indoor之后出现的不是数字(这会使一切变得更简单)。

我想将这些变量的每个列表。

我的代码如下:

local indoor indoor*
foreach i of local indoor {
    tab `i' group, col freq exact chi2
}

问题是indoor命令中的foreach解析为indoor*,而不是我希望的indoor问题列表。由于这个原因,tab命令后面跟着太多的变量(它只能处理两个),这会导致错误。

简单的解决方法是将第一个命令替换为:
local indoor <full list of indoor questions>

但这就是我要避免的事情,那就是必须找到这些变量的所有名称,然后将其粘贴到代码中。似乎有一个更快的解决方案,但我想不出任何办法。

最佳答案

你可以这样做

foreach i of var `indoor' {
   tab `i' group, col freq exact chi2
}

关于loops - 使用本地宏将具有公共(public)前缀的多个变量制成表格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3701823/

10-12 20:14