Stata 找到具有特定值的观察值
我想找到与具有特定值的观测值相对应的观测值,例如Stata 找到具有特定值的观察值,stata,local,equality,stata-macros,Stata,Local,Equality,Stata Macros,我想找到与具有特定值的观测值相对应的观测值,例如29。然后,我想将这些观察值保存在宏中 有没有比以下笨拙且低效的forvalues循环更好的方法 sysuse auto, clear local n forvalues i=1/`=_N' { if mpg[`i']==29 local n `n' `i' } display "`n'" 你打字少了。你为什么要这个 你打字少了。你为什么要这个 谢谢。我这样做的原因是想找出一个特定的观测值,称之为X,在变量a分布中的位置。总共有10
29
。然后,我想将这些观察值保存在宏中
有没有比以下笨拙且低效的forvalues
循环更好的方法
sysuse auto, clear
local n
forvalues i=1/`=_N' {
if mpg[`i']==29 local n `n' `i'
}
display "`n'"
你打字少了。你为什么要这个
你打字少了。你为什么要这个 谢谢。我这样做的原因是想找出一个特定的观测值,称之为X,在变量
a
分布中的位置。总共有100个观测值,我想看看X的a
值与a
的其他99个值相比如何。我有一个变量b
,我用它来找到哪个观测值X。我用来查看X在分布中的位置的方法是首先对a
排序,然后使用b
来定位感兴趣的观测值(类似于上面的29
),这样我就可以找到它的观测值。也许这是一个更好的方法,但我就是这么想的。不是很适合你,而是用分位数图<代码>分位数或qplot
(SJ)。是的,类似于分位数图。我只想找出某个特定观测值左边的总观测值的百分比,并将该值保存到宏中。如果mpg<29,则计数。这会更好,但在我的情况下,这实际上是一个步骤-我不知道特定obs的值。获取(无需手动查看或编写更多代码)。例如,创建一个新变量,genn=mpg==29
。具有值1
的观察结果是我感兴趣的。然后我可以用你的答案:gen long obsno=\n
和levelsofobsno如果n==1
。诚然,我最初的问题与29
的用法相混淆,而不是与我实际拥有的东西更相似。谢谢。我这样做的原因是想找出一个特定的观测值,称之为X,在变量a
分布中的位置。总共有100个观测值,我想看看X的a
值与a
的其他99个值相比如何。我有一个变量b
,我用它来找到哪个观测值X。我用来查看X在分布中的位置的方法是首先对a
排序,然后使用b
来定位感兴趣的观测值(类似于上面的29
),这样我就可以找到它的观测值。也许这是一个更好的方法,但我就是这么想的。不是很适合你,而是用分位数图<代码>分位数
或qplot
(SJ)。是的,类似于分位数图。我只想找出某个特定观测值左边的总观测值的百分比,并将该值保存到宏中。如果mpg<29,则计数。这会更好,但在我的情况下,这实际上是一个步骤-我不知道特定obs的值。获取(无需手动查看或编写更多代码)。例如,创建一个新变量,genn=mpg==29
。具有值1
的观察结果是我感兴趣的。然后我可以用你的答案:gen long obsno=\n
和levelsofobsno如果n==1
。诚然,我最初的问题与29
的用法相混淆,而不是与我实际拥有的东西更相似。
gen long obsno = _n
levelsof obsno if mpg == 29