我只想列出一些有条件的记录。问题:如果我使用 1/4 或 _n <= 4 并且前 4 条记录不满足条件,则不会列出任何记录。这是一个例子:
clear
input x
1
2
3
4
5
6
end
list if x > 4 & _n <= 3
list in 1/3 if x > 4
有谁知道如何在一行中解决这个问题?感谢帮助。
将以下代码放入 Stata 可以看到的目录中名为 slist.ado 的文件中(如 ~/ado/personal)。您可以使用 -adopath- 命令找到此类目录。
program define slist
version 12.1
syntax [varlist] [if], top(int)
#delimit;
tempvar tag;
gen `tag'=1 `if';
sort `tag';
list `varlist' `if' in 1/`top';
end;
语法是slist x if x>4, top(4)
. 如果您不指定 x,它将为您提供数据集中的所有变量。