Graph 麦克拉里密度图

Graph 麦克拉里密度图,graph,stata,density-plot,Graph,Stata,Density Plot,我也把这个问题发到了Statalist。然而,我的导师后来建议我把问题贴在这里 我想以图形化的方式描述一下,在我的数据集中,没有围绕会计相关的员工阈值进行聚集。为此,我想通过用户编写的Stata命令DCdensity实现McCrary测试 员工人数是我的运行变量,会计阈值为50。因此,我的代码是: DCdensity employees, breakpoint(50) generate(Xj Yj r0 fhat se_fhat) 图形结果显示在下面的第一幅图像中。为了放大阈值,我使用了Wil

我也把这个问题发到了Statalist。然而,我的导师后来建议我把问题贴在这里

我想以图形化的方式描述一下,在我的数据集中,没有围绕会计相关的员工阈值进行聚集。为此,我想通过用户编写的Stata命令DCdensity实现McCrary测试

员工人数是我的运行变量,会计阈值为50。因此,我的代码是:

DCdensity employees, breakpoint(50) generate(Xj Yj r0 fhat se_fhat)
图形结果显示在下面的第一幅图像中。为了放大阈值,我使用了William Lisowski在Statalist上提供的代码

local breakpoint 50
local cellmpname Xj

local cellvalname Yj
local evalname r0
local cellsmname fhat
local cellsmsename se_fhat
drop if `cellmpname' < 0 | `cellmpname' > 500
drop if `evalname' < 0 | `evalname' > 500
tempvar hi
quietly gen `hi' = `cellsmname' + 1.96*`cellsmsename'
tempvar lo
quietly gen `lo' = `cellsmname' - 1.96*`cellsmsename'
gr twoway (scatter `cellvalname' `cellmpname', msymbol(circle_hollow) mcolor(gray)) (line `cellsmname' `evalname' if `evalname' < `breakpoint', lcolor(black) lwidth(medthick)) (line `cellsmname' `evalname' if `evalname' > `breakpoint', lcolor(black) lwidth(medthick)) (line `hi' `evalname' if `evalname' < `breakpoint', lcolor(black) lwidth(vthin)) (line `lo' `evalname' if `evalname' < `breakpoint', lcolor(black) lwidth(vthin)) (line `hi' `evalname' if `evalname' > `breakpoint', lcolor(black) lwidth(vthin)) (line `lo' `evalname' if `evalname' > `breakpoint', lcolor(black) lwidth(vthin)), xline(`breakpoint', lcolor(black)) legend(off)
本地断点50
本地手机名Xj
本地手机名Yj
本地evalname r0
本地手机名称fhat
本地小区名称SENU fhat
如果'cellmpname'<0 |'cellmpname'>500,则删除
如果'evalname'<0 |'evalname'>500,则删除
坦帕华酒店
“嗨”='CellsName'+1.96*'CellsMSSename'
坦帕卢
安静的gen`lo'=`CellsName'-1.96*`CellsMSSename'
gr twoway(散布'cellvalname''CellmName',msymbol(空心圆圈)mcolor(灰色))(行'CellsName''evalname'如果'evalname'<'breakpoint',lcolor(黑色)lwidth(中厚))(行'CellsName''evalname'如果'evalname'>'breakpoint',lcolor(黑色)lwidth(中厚))(行'hi'evalname'如果'evalname'如果'evalname'<'breakpoint',',,lcolor(黑色)lwidth(中厚))(第'lo'行'evalname'如果'evalname'<'breakpoint',lcolor(黑色)lwidth(vthin))(第'hi'行'evalname'如果'evalname'>'breakpoint',lcolor(黑色)lwidth(vthin))(第'lo'行'evalname'如果'evalname'>'breakpoint',lcolor(黑色)lwidth(vthin)),xline('breakpoint',lcolor(黑色))图例(关闭)
图形结果显示在下面的第二幅图像中

现在回答我的问题:

  • 图1:为什么有员工值为负值的箱子(否
    样本中的负员工值-我已检查)?这些箱子
    以这种方式扭曲图形,使其看起来有不连续性 即使没有
  • 图2:为什么图部分消失了?同样的问题仍然存在
    为了散客
可能的解释-待讨论:

  • 阈值剩下的数据点太少,即介于0
    50,用于绘制图形
  • 与Xj相比,r0似乎抵消了约300(员工)
图1

图2