いくつかの条件付きでいくつかのレコードのみをリストしたいと思います。問題: in 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
この問題を1行で解決する方法を知っている人はいますか? 手伝ってくれてありがとう。
次のコードを、Stata が参照できるディレクトリ (~/ado/personal など) の slist.ado という名前のファイルに入れます。このようなディレクトリは、-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 を指定しない場合、データセット内のすべての変数が表示されます。