使用 Stata v18。我只想标记本地变量列表中的所有变量(在我的原始数据中,它是为了显示“丢失的”ER 变量,但在其他方面没有区别)。关于 Stata 为何不断告诉我这一点的任何想法
tab
var'`
不是有效的命令名称?
我只想标记本地变量列表中的所有变量(列表中每个变量的频率百分比)。最终,我正在做一个更大的循环,按州、个案工作者等拆分 varlist,但这是 KISS 版本。
我已经使用示例数据集 nlsw88.dta 复制并跟踪了我的问题:
clear
sysuse nlsw88.dta
set trace on
local varlist "married never_married grade collgrad south smsa c_city industry occupation union"
foreach var in `varlist' {
tab `var'
display "`var'"
}
set trace off
Stata 重复生成以下输出和错误消息:
. clear
. sysuse nlsw88.dta
(NLSW, 1988 extract)
.
. set trace on
. local varlist "married never_married grade collgrad south smsa c_city indu
> stry occupation union"
. foreach var in `varlist' {
2. tab `var'
3. display "`var'"
4. }
- foreach var in `varlist' {
= foreach var in married never_married grade collgrad south smsa c_city indu
> stry occupation union {
- tab `var'
= tab married
is not a valid command name
display "`var'"
}
r(199);
end of do-file
r(199);
任何帮助表示赞赏。
你的代码原则上看起来不错。
我认为 Stata 正在反对一个或多个不寻常的字符潜入您的代码中。
请注意,您向我们显示的错误消息并不是
tabulate
(或 tab
)不是有效的命令名称。就是那个
is not a valid command name
在
tabulate
之前寻找不寻常的字符。或者删除tabulate
之前的所有字符,然后重试。
在 MS Word 中准备代码有时会导致此问题。它是一个文字处理器,而不是文本编辑器。