Stata 显示定义每行的变量集

Stata 显示定义每行的变量集,stata,Stata,要说一个数据集是(人,年)级别,意味着该数据集的每一行都有不同的(人,年)如下所示: person year wage Mike 2000 10 Mike 2010 30 Jack 1990 20 如何使Stata精确显示唯一定义每行的(person,year)变量集 我想制作一个日志文件来记录 person year 仅显示,但不显示任何个人信息(在日志文件中显示个人信息违反数据提供程序设置的规则) 我怎么能这样做 我想到的是以某种方式使用排序bys

要说一个数据集是(
)级别,意味着该数据集的每一行都有不同的(
)如下所示:

person  year  wage
  Mike   2000   10
  Mike   2010   30
  Jack   1990   20
如何使Stata精确显示唯一定义每行的(
person
year
)变量集

我想制作一个日志文件来记录

person year
仅显示,但不显示任何个人信息(在日志文件中显示个人信息违反数据提供程序设置的规则)

我怎么能这样做

我想到的是以某种方式使用排序
bysort

bysort person year: gen num=_n
如果every
num
为1,则表示(
person
year
)定义了每一行


但如果数据集非常大,那么检查每个
num
是否为1就太单调了。有没有更聪明的方法?

命令
isid
检查您提供的变量是否共同唯一地指定观察值。以下是一个您可以尝试的示例:

. webuse grunfeld, clear

. isid company
variable company does not uniquely identify the observations
r(459);

. isid company year
注意原则:没有消息就是好消息

检查问题的另一种方法是通过
重复项
。例如,尝试
重复列表人年
。在你的情况下,你不想在日志中看到这一点。但是你首先可以做的是通过

egen id = group(person) 
然后在id年检查重复项


另见

缺乏研究是显而易见的。只要浏览一下[D]数据管理手册,就会发现相关的命令。此外,Stata在其网站上有许多常见问题。Stata中的行称为观察。我猜你不会用“观察”这个词问Excel问题,反之亦然