我想在图形note()
中显示数据的总计数。
我尝试了以下方法:
note(count)
但是,这仅显示字面意思"计数"。
我也尝试创建一个局部变量,但我在初始化它时遇到了困难。
虽然我可以执行以下操作:
. local N = 100
. di `N'
100
我似乎做不到:
. local N = count
count not found
观测值的总数存储在_N
中。
sysuse auto, clear
display _N
74
所以以下内容对我有用:
local N = _N
twoway scatter mpg price, note(Total no of observations: `N')
观测值的总数保留在_N
中,但不一定是图形中使用的观测值数。
该命令count
显示结果,并将保存的结果(计数的数字(保留为r(N)
。这在计数help
和手动输入中都有记录。
因此,您可以验证此序列是否在生成的图形中留下74 observations
注释。
. sysuse auto, clear
(1978 Automobile Data)
. count if mpg < .
74
. histogram mpg, note(`r(N)' observations)
(bin=8, start=12, width=3.625)
请注意,在count
和使用其结果之间,任何 r 类命令都不应在此处进行干预。 与任何其他保存的结果一样,R 类保存的结果很容易被覆盖。在许多情况下,建议您像以前一样将结果存储在本地宏中,例如
. local N = r(N)
紧跟在count
命令之后,然后在后面的note()
中引用该命令。
这是一种更通用的方法,因为count
本身返回观测值的数量,因此可以在直接需要时才使用。
结合其他答案,我最终做到了:
count
local N = r(N)
count if male
local N_male = r(N)
count if !male
local N_female = r(N)
...
note("N = `N'" " `N_male' (Male)" " `N_female' (Female)")
但仍然无法在数千和数百万的地方渲染逗号。