matcproc.ado

来自「是一个经济学管理应用软件 很难找的 但是经济学学生又必须用到」· ADO 代码 · 共 42 行

ADO
42
字号
*! version 1.0.2  08oct2003
program define matcproc /* T a C */
    version 3.1
    tempname x z R
    mat `3' = get(Cns)
    mat `z' = get(_b)
    mat `x' = J(1,1,0)
    mat `z' = `z' , `x'

    local names : colnames(`z')
    matrix colnames `3' = `names'
    local names : coleq(`z')
    matrix coleq `3' = `names' 
    local names

    local nc = rowsof(matrix(`3'))
    local p = colsof(matrix(`3')) - 1
    if `nc' >= `p' {
    	di as err "there are at least as many constraints as parameters"
	exit 498
    }
    local k = `p' - `nc'
    local kp1 = `k' + 1
    local pp1 = `p' + 1
    mat `R' = `3'[.,1..`p']
    mat `z' = `R' * `R''
    mat `z' = syminv(`z')
    mat `z' = `R'' * `z'
    mat `z' = `z' * `R'
    mat `x' = I(`p')
    mat `x' = `x' - `z'
    mat symeigen `x' `z' = `x'
    if (`z'[1,`kp1']>.5) { error 412 } 
    mat `1' = `x'[.,1..`k']
    mat `z' = `x'[.,`kp1'...]
    mat `x' = `R'*`z'              /* nc x p * p x nc */
    mat `x' = inv(`x')
    mat `z' = `z' * `x'            /* p x nc * nc x nc */
    mat `x' = `3'[.,`pp1']         /* nc x 1 */
    mat `2' = `x''*`z''            /* 1 x p */
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?