用AIDS写的一个程序,跑的时候提示出错,查了好几遍查不出来哪错了,哪位大神帮忙看下,感激不尽。
提示错误:
. nlsur aids @ ww1 ww2 ww3 ww4 ln_price1 ln_price2 ln_price3 ln_price4 ln_price5 l
> nexp, parameters(a1 a2 a3 a4 b1 b2 b3 b4 g11 g12 g13 g14 g22 g23 g32 g33 g43 g44
> )neq(4) ifgnls
nlsuraids returned 198
verify that nlsuraids is a function evaluator program
r(198);
我的代码:
clear all
cd "C:\Users\l\Desktop\要处理的内容"
use "shuju.dta"
program nlsuraids
version 13
syntax varlist(min=14 max=14) if, at(name)
tokenize `varlist'
args w1 w2 w3 w4 w5 w6 lnp1 lnp2 lnp3 lnp4 lnp5 lnp6 lnp7 lnm
tempname a1 a2 a3 a4 a5 a6 a7
scalar `a1' = `at'[1,1]
scalar `a2' = `at'[1,2]
scalar `a3' = `at'[1,3]
scalar `a4' = `at'[1,4]
scalar `a5' = `at'[1,5]
scalar `a6' = `at'[1,6]
scalar `a7' = 1 - `a1' - `a2' - `a3'- `a4' - `a5' - `a6'
tempname b1 b2 b3 b4 b5 b6
scalar `b1' = `at'[1,7]
scalar `b2' = `at'[1,8]
scalar `b3' = `at'[1,9]
scalar `b4' = `at'[1,10]
scalar `b5' = `at'[1,11]
scalar `b6' = `at'[1,12]
tempname g11 g12 g13 g14 g15 g16 g17
tempname g21 g22 g23 g24 g25 g26 g27
tempname g31 g32 g33 g34 g35 g36 g37
tempname g41 g42 g43 g44 g45 g46 g47
tempname g51 g52 g53 g54 g55 g56 g57
tempname g61 g62 g63 g64 g65 g66 g67
tempname g71 g72 g73 g74 g75 g76 g77
scalar `g11' = `at'[1,13]
scalar `g12' = `at'[1,14]
scalar `g13' = `at'[1,15]
scalar `g14' = `at'[1,16]
scalar `g15' = `at'[1,17]
scalar `g16' = `at'[1,18]
scalar `g17' = -`g11'-`g12'-`g13'-`g14'-`g15'-`g16'
scalar `g21' = `g12'
scalar `g22' = `at'[1,19]
scalar `g23' = `at'[1,20]
scalar `g24' = `at'[1,21]
scalar `g25' = `at'[1,22]
scalar `g26' = `at'[1,23]
scalar `g27' = -`g21'-`g22'-`g23'-`g24'-`g25'-`g26'
scalar `g31' = `g13'
scalar `g32' = `g23'
scalar `g33' = `at'[1,24]
scalar `g34' = `at'[1,25]
scalar `g35' = `at'[1,26]
scalar `g36' = `at'[1,27]
scalar `g37' = -`g31'-`g32'-`g33'-`g34'-`g35'-`g36'
scalar `g41' = `g14'
scalar `g42' = `g24'
scalar `g43' = `g34'
scalar `g44' = `at'[1,28]
scalar `g45' = `at'[1,29]
scalar `g46' = `at'[1,30]
scalar `g47' = -`g41'-`g42'-`g43'-`g44'-`g45'-`g46'
scalar `g51' = `g15'
scalar `g52' = `g25'
scalar `g53' = `g35'
scalar `g54' = `g45'
scalar `g55' = `at'[1,31]
scalar `g56' = `at'[1,32]
scalar `g57' = -`g51'-`g52'-`g53'-`g54'-`g55'-`g56'
scalar `g61' = `g16'
scalar `g62' = `g26'
scalar `g63' = `g36'
scalar `g64' = `g46'
scalar `g65' = `g56'
scalar `g66' = `at'[1,33]
scalar `g67' = -`g61'-`g62'-`g63'-`g64'-`g65'-`g66'
scalar `g71' = `g17'
scalar `g72' = `g27'
scalar `g73' = `g37'
scalar `g74' = `g47'
scalar `g75' = `g57'
scalar `g76' = `g67'
scalar `g77' = -`g71'-`g72'-`g73'-`g74'-`g75'-`g76'
quietly {
tempvar lnpindex
gen double `lnpindex' = 5 + `a1'*`lnp1' + `a2'*`lnp2' + ///
`a3'*`lnp3' + `a4'*`lnp4' + `a5'*`lnp5' + `a6'*`lnp6' + `a7'*`lnp7'
forvalues i = 1/7 {
forvalues j = 1/7 {replace `lnpindex' = `lnpindex' + ///
0.5*`g`i'`j''*`lnp`i''*`lnp`j''}}
replace `w1' = `a1' + `g11'*`lnp1' + `g12'*`lnp2' + ///
`g13'*`lnp3' + `g14'*`lnp4' + `g15'*`lnp5' +`g16'*`lnp6' +`g17'*`lnp7' ///
`b1'*(`lnm' - `lnpindex')
replace `w2' = `a2' + `g21'*`lnp1' + `g22'*`lnp2' + ///
`g23'*`lnp3' + `g24'*`lnp4' + `g25'*`lnp5' +`g26'*`lnp6' +`g27'*`lnp7' ///
`b2'*(`lnm' - `lnpindex')
replace `w3' = `a3' + `g31'*`lnp1' + `g32'*`lnp2' + ///
`g33'*`lnp3' + `g34'*`lnp4' + `g35'*`lnp5' +`g36'*`lnp6' +`g37'*`lnp7' ///
`b3'*(`lnm' - `lnpindex')
replace `w4' = `a4' + `g41'*`lnp1' + `g42'*`lnp2' + ///
`g43'*`lnp3' + `g44'*`lnp4' + `g45'*`lnp5' +`g46'*`lnp6' +`g47'*`lnp7' ///
`b4'*(`lnm' - `lnpindex')
replace `w5' = `a5' + `g51'*`lnp1' + `g52'*`lnp2' + ///
`g53'*`lnp3' + `g54'*`lnp4' + `g55'*`lnp5' +`g56'*`lnp6' +`g57'*`lnp7' ///
`b5'*(`lnm' - `lnpindex')
replace `w6' = `a6' + `g61'*`lnp1' + `g62'*`lnp2' + ///
`g63'*`lnp3' + `g64'*`lnp4' + `g65'*`lnp5' +`g66'*`lnp6' +`g67'*`lnp7' ///
`b6'*(`lnm' - `lnpindex')}
end
*所占份额
gen ww1=e762/e761 
gen ww2=e763/e761
gen ww3=e764/e761
gen ww4=e765/e761
gen ww5=e766/e761
gen ww6=e767/e761
gen ww7=e768/e761
* variables in the regression
gen lnexp=log(e761)
gen ln_price1=log(price2)
gen ln_price2=log(price1)
gen ln_price3=log(price3)
gen ln_price4=log(price7)
gen ln_price5=log(price4)
gen ln_price6=log(price5)
gen ln_price7=log(price6)
gen P=ww1*log(price2)+ww2*log(price1)+ww3*log(price3)+ww4*log(price7)+ww5*log(price4) +ww6*log(price5)+ww7*log(price6)   /* Stone index */
nlsur aids @ ww1 ww2 ww3 ww4 ww5 ww6 ln_price1 ln_price2 ln_price3 ln_price4 ln_price5 ln_price6 ln_price7 lnexp, parameters(a1 a2 a3 a4 a5 a6 b1 b2 b3 b4 b5 b6 g11 g12 g13 g14 g15 g16 g22 g23 g24 g25 g26 g33 g34 g35 g36 g44 g45 g46 g55 g56 g66)neq(6) ifgnls
* get parameter in the omitted equation
lincom 1 - [a1]_cons - [a2]_cons - [a3]_cons - [a4]_cons - [a5]_cons - [a6]_cons