p24 myols.ox
来自「时间序列分析中著名的OxMetrics软件包」· OX 代码 · 共 40 行
OX
40 行
#include <oxstd.h>
MyOls(const mY, const mX, const vP, const vStd)
{
decl b,m_mRes,m_dSigmaSqr,cp,m_mCovar;
if (olsc(mY, mX, &b, &m_mCovar)==1)
{
m_mRes = mY - mX * b;
cp=columns(mX);
m_dSigmaSqr = m_mRes'm_mRes / (rows(mY) - cp);
vP[0]=b;
vStd[0]=sqrt(diagonal(m_dSigmaSqr*m_mCovar))';
return 1;
}
else
{
vP[0]=0;
vStd[0]=0;
return 0;
}
}
main()
{
decl b,std;
// mY argument, mX argument, both just random
decl n, sigma, x, beta, y;
n = 100; sigma = 0.25;
x = 1 ~ ranu(n, 2);
beta = <1; 2; 3>;
y = x*beta+sigma * rann(n, 1);
if (MyOls( y, x, &b, &std ))
print("true~b~std~t_stat", beta~b~std~(b./std));
else print("Estimation failed");
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?