由于错误消息无法计算 sqrt 函数
unable to compute sqrt function due to error message
尝试在 Stata 15.0 上基于简单分位数回归进行单侧 Wald 检验
qreg volume if period == 2010
我想测试我的 qreg <= 10
的系数(常数)是否
基于这个post,我写了这段代码:
local to_test = sign(_b[_cons]-1 )
display "H0: volume <=10 p-value=" ttail(r(df_r),`to_test' * sqrt(r(F)))
我得到了这条错误消息:
H0: volume <=10 p-value=unknown function *sqrt()
r(133);
为什么一个简单的 sqrt
函数会出现此错误消息?
要进行单侧检验,需要先进行相应的双侧Wald检验。然后您可以使用结果计算单侧检验的检验统计量和 p 值。
您的代码无法运行,因为您没有进行 Wald 检验,因此未定义 r(df_r) 和 r(F)。当您尝试对尚未计算的数量求平方根时,Stata 会提示您一个神秘的错误。还有其他问题,比如在符号计算中有一个 1 而不是 10。
我认为分解问题并 display
在进行给您带来问题的计算之前对所有部分进行处理是解决此问题的好方法。
这是一个在汽车数据集上展示这一点的例子(使用 dataex
的替代方法):
. sysuse auto, clear
(1978 Automobile Data)
. qreg price weight length i.foreign, nolog
Median regression Number of obs = 74
Raw sum of deviations 71102.5 (about 4934)
Min sum of deviations 54411.29 Pseudo R2 = 0.2347
------------------------------------------------------------------------------
price | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
weight | 3.933588 1.328718 2.96 0.004 1.283543 6.583632
length | -41.25191 45.46469 -0.91 0.367 -131.9284 49.42456
|
foreign |
Foreign | 3377.771 885.4198 3.81 0.000 1611.857 5143.685
_cons | 344.6489 5182.394 0.07 0.947 -9991.31 10680.61
------------------------------------------------------------------------------
. local sign_cons = sign(_b[_cons] - 10)
. display "`sign_cons'"
1
. display r(df_r)
.
. display r(F)
.
. test _b[_cons] = 10
( 1) _cons = 10
F( 1, 70) = 0.00
Prob > F = 0.9487
. display r(df_r)
70
. display r(F)
.00416983
. display "Ho: _cons <= 10 p-value = " ttail(r(df_r),`sign_cons'*sqrt(r(F)))
Ho: _cons <= 10 p-value = .47434855
尝试在 Stata 15.0 上基于简单分位数回归进行单侧 Wald 检验
qreg volume if period == 2010
我想测试我的 qreg <= 10
基于这个post,我写了这段代码:
local to_test = sign(_b[_cons]-1 )
display "H0: volume <=10 p-value=" ttail(r(df_r),`to_test' * sqrt(r(F)))
我得到了这条错误消息:
H0: volume <=10 p-value=unknown function *sqrt()
r(133);
为什么一个简单的 sqrt
函数会出现此错误消息?
要进行单侧检验,需要先进行相应的双侧Wald检验。然后您可以使用结果计算单侧检验的检验统计量和 p 值。
您的代码无法运行,因为您没有进行 Wald 检验,因此未定义 r(df_r) 和 r(F)。当您尝试对尚未计算的数量求平方根时,Stata 会提示您一个神秘的错误。还有其他问题,比如在符号计算中有一个 1 而不是 10。
我认为分解问题并 display
在进行给您带来问题的计算之前对所有部分进行处理是解决此问题的好方法。
这是一个在汽车数据集上展示这一点的例子(使用 dataex
的替代方法):
. sysuse auto, clear
(1978 Automobile Data)
. qreg price weight length i.foreign, nolog
Median regression Number of obs = 74
Raw sum of deviations 71102.5 (about 4934)
Min sum of deviations 54411.29 Pseudo R2 = 0.2347
------------------------------------------------------------------------------
price | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
weight | 3.933588 1.328718 2.96 0.004 1.283543 6.583632
length | -41.25191 45.46469 -0.91 0.367 -131.9284 49.42456
|
foreign |
Foreign | 3377.771 885.4198 3.81 0.000 1611.857 5143.685
_cons | 344.6489 5182.394 0.07 0.947 -9991.31 10680.61
------------------------------------------------------------------------------
. local sign_cons = sign(_b[_cons] - 10)
. display "`sign_cons'"
1
. display r(df_r)
.
. display r(F)
.
. test _b[_cons] = 10
( 1) _cons = 10
F( 1, 70) = 0.00
Prob > F = 0.9487
. display r(df_r)
70
. display r(F)
.00416983
. display "Ho: _cons <= 10 p-value = " ttail(r(df_r),`sign_cons'*sqrt(r(F)))
Ho: _cons <= 10 p-value = .47434855