我正在运行几个简单的回归,我希望保存本地宏中给定系数的回归的显着性值(P> | t |)。
例如,我知道:
local consCoeff = _b[_cons]
将保存常量的系数,而使用_se[_cons]
我可以得到标准误。但是,似乎没有关于如何获得重要性的任何文档。
最好是下划线格式有效(如_pt
等),但任何事情都可以。
答案 0 :(得分:1)
没有必要自己计算任何东西,因为Stata已经为你做了。
例如:
. sysuse auto, clear
(1978 Automobile Data)
. regress price weight mpg
Source | SS df MS Number of obs = 74
-------------+---------------------------------- F(2, 71) = 14.74
Model | 186321280 2 93160639.9 Prob > F = 0.0000
Residual | 448744116 71 6320339.67 R-squared = 0.2934
-------------+---------------------------------- Adj R-squared = 0.2735
Total | 635065396 73 8699525.97 Root MSE = 2514
------------------------------------------------------------------------------
price | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
weight | 1.746559 .6413538 2.72 0.008 .467736 3.025382
mpg | -49.51222 86.15604 -0.57 0.567 -221.3025 122.278
_cons | 1946.069 3597.05 0.54 0.590 -5226.245 9118.382
------------------------------------------------------------------------------
结果也以矩阵r(table)
:
. matrix list r(table)
r(table)[9,3]
weight mpg _cons
b 1.7465592 -49.512221 1946.0687
se .64135379 86.156039 3597.0496
t 2.7232382 -.57468079 .54101802
pvalue .00812981 .56732373 .59018863
ll .46773602 -221.30248 -5226.2445
ul 3.0253823 122.27804 9118.3819
df 71 71 71
crit 1.9939434 1.9939434 1.9939434
eform 0 0 0
因此,对于p值,例如weight
,您键入:
. matrix A = r(table)
. local pval = A[4,1]
. display `pval'
.00812981
答案 1 :(得分:-1)
系数的t-stat是系数除以标准误差。然后可以使用具有适当自由度的ttail
函数来计算p值。由于您正在寻找双尾p值,因此结果将乘以2。
在您的情况下,应执行以下操作:
local consPvalue = (2 * ttail(e(df_r), abs(_b[cons]/_se[cons])))