Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Error with censored QUAIDS model

    Dear Stata Users,

    I am trying to run a 5 good censored quaids model with 4 demographic variables using Stata 14. I however have been facing a challenge where nlsurquaids returned 102 " verify that nlsurquaids is a function evaluator program" (too few variables specified)

    Any help rendered will be greatly appreciated.

    Here are the stata codes;


    set more off
    set trace on
    set tracedepth 2
    cap program drop nlsurquaids
    program nlsurquaids
    version 13.1
    syntax varlist(min=25 max=25) if, at(name)
    tokenize `varlist'
    args w1 w2 w3 w4 w5 lnq1 lnq2 lnq3 lnq4 lnq5 lnexp x1 x2 x3 x4 pdf1 pdf2 pdf3 pdf4 pdf5 cdf1 cdf2 cdf3 cdf4 cdf5

    tempname a1 a2 a3 a4 a5
    scalar `a1' = `at'[1,1]
    scalar `a2' = `at'[1,2]
    scalar `a3' = `at'[1,3]
    scalar `a4' = `at'[1,4]
    scalar `a5' = 1-`a1'-`a2'-`a3'-`a4'
    ************************************************** ********
    tempname b1 b2 b3 b4 b5
    scalar `b1' = `at'[1,5]
    scalar `b2' = `at'[1,6]
    scalar `b3' = `at'[1,7]
    scalar `b4' = `at'[1,8]
    scalar `b5' = -`b1'-`b2'-`b3'-`b4'
    ************************************************** ********
    tempname g11 g12 g13 g14 g15
    tempname g21 g22 g23 g24 g25
    tempname g31 g32 g33 g34 g35
    tempname g41 g42 g43 g44 g45
    tempname g51 g52 g53 g54 g55

    ************************************************** ******
    scalar `g11' = `at'[1,9]
    scalar `g12' = `at'[1,10]
    scalar `g13' = `at'[1,11]
    scalar `g14' = `at'[1,11]
    scalar `g15' = -`g11'-`g12'-`g13'-`g14'
    ************************************************** *******
    scalar `g21' = `g12'
    scalar `g22' = `at'[1,13]
    scalar `g23' = `at'[1,14]
    scalar `g24' = `at'[1,15]
    scalar `g25' = -`g21'-`g22'-`g23'-`g24'
    ************************************************** *******
    scalar `g31' = `g13'
    scalar `g32' = `g23'
    scalar `g33' = `at'[1,16]
    scalar `g34' = `at'[1,17]
    scalar `g35' = -`g31'-`g32'-`g33'-`g34'
    ************************************************** *******
    scalar `g41' = `g14'
    scalar `g42' = `g24'
    scalar `g43' = `g34'
    scalar `g44' = `at'[1,18]
    scalar `g45' = -`g41'-`g42'-`g43'-`g44'
    ************************************************** ****************
    scalar `g51' = `g15'
    scalar `g52' = `g25'
    scalar `g53' = `g35'
    scalar `g54' = `g45'
    scalar `g55' = -`g51'-`g52'-`g53'-`g54'
    ************************************************** ***************

    tempname l1 l2 l3 l4 l5
    scalar `l1' = `at'[1,19]
    scalar `l2' = `at'[1,20]
    scalar `l3' = `at'[1,21]
    scalar `l4' = `at'[1,22]
    scalar `l5' = -`l1'-`l2'-`l3'-`l4'

    **********Household demographics************************************** *
    tempname eta11 eta21 eta31 eta41
    tempname eta12 eta22 eta32 eta42
    tempname eta13 eta23 eta33 eta43
    tempname eta14 eta24 eta34 eta44
    tempname eta15 eta25 eta35 eta45

    scalar `eta11' = `at'[1,23]
    scalar `eta12' = `at'[1,24]
    scalar `eta13' = `at'[1,25]
    scalar `eta14' = `at'[1,26]
    scalar `eta15' = - `eta11'-`eta12'-`eta13'-`eta14'

    scalar `eta21' = `at'[1,27]
    scalar `eta22' = `at'[1,28]
    scalar `eta23' = `at'[1,29]
    scalar `eta24' = `at'[1,30]
    scalar `eta25' = - `eta21'-`eta22'-`eta23'-`eta24'

    scalar `eta31' = `at'[1,31]
    scalar `eta32' = `at'[1,32]
    scalar `eta33' = `at'[1,33]
    scalar `eta34' = `at'[1,34]
    scalar `eta35' = - `eta31'-`eta32'-`eta33'-`eta34'

    scalar `eta41' = `at'[1,35]
    scalar `eta42' = `at'[1,36]
    scalar `eta43' = `at'[1,37]
    scalar `eta44' = `at'[1,38]
    scalar `eta45' = - `eta41'-`eta42'-`eta43'-`eta44'

    ************************************************** ********************************
    tempname d1 d2 d3 d4 d5
    scalar `d1' = `at'[1,39]
    scalar `d2' = `at'[1,40]
    scalar `d3' = `at'[1,41]
    scalar `d4' = `at'[1,42]
    scalar `d5' = `at'[1,43]

    ************************************************
    quietly {
    tempvar lnpindex
    gen double `lnqindex' = 5 + `a1'*`lnq1' + `a2'*`lnq2' + `a3'*`lnq3' + `a4'*`lnq4' + `a5'*`lnq5'
    forvalues i = 1/5 {
    forvalues j = 1/5 {
    replace `lnqindex' = `lnqindex' + 0.5*`g`i'`j''*`lnq`i''*`lnq`j''
    }
    }


    **** The b(p,x) term in the QUAIDS model:
    tempvar bofp
    gen double `bofq' = 0
    forvalues i = 1/5 {
    replace `bofq' = `bofq' + `lnq`i''*`b`i''
    }


    replace `bofq' = exp(`bofq')

    ************************************************** ***************************
    replace `w1' = (`a1' + `g11'*`lnq1' + `g12'*`lnq2' + `g13'*`lnq3' + `g14'*`lnq4' + `g15'*`lnq5' + ///
    `b1'*(`lnexp' - `lnqindex') + `l1'/`bofq'*(`lnexp' - `lnqindex')^2 + `x1'*`eta11' + `x2'*`eta21'+`x3'*`eta31' + `x4'*`eta41')*`cdf1' + `d1'*`pdf1'


    replace `w2' = (`a2' + `g21'*`lnq1' + `g22'*`lnq2' + `g23'*`lnq3' + `g24'*`lnq4' + `g25'*`lnq5' + ///
    `b2'*(`lnexp' - `lnqindex') + `l2'/`bofq'*(`lnexp' - `lnqindex')^2 + `x1'*`eta12' + `x2'*`eta22'+`x3'*`eta32' + `x4'*`eta42')*`cdf2' + `d2'*`pdf2'


    replace `w3' = (`a3' + `g31'*`lnq1' + `g32'*`lnq2' + `g33'*`lnq3' + `g34'*`lnq4' + `g35'*`lnq5' + ///
    `b3'*(`lnexp' - `lnqindex') + `l3'/`bofq'*(`lnexp' - `lnqindex')^2 + `x1'*`eta13' + `x2'*`eta23'+`x3'*`eta33' + `x4'*`eta43')*`cdf3' + `d3'*`pdf3'


    replace `w4' = (`a4' + `g41'*`lnq1' + `g42'*`lnq2' + `g43'*`lnq3' + `g44'*`lnq4' + `g45'*`lnq5' + ///
    `b4'*(`lnexp' - `lnqindex') + `l4'/`bofq'*(`lnexp' - `lnqindex')^2 + `x1'*`eta14' + `x2'*`eta24'+`x3'*`eta34' + `x4'*`eta44')*`cdf4' + `d4'*`pdf4'


    replace `w5' = (`a5' + `g51'*`lnq1' + `g52'*`lnq2' + `g53'*`lnq3' + `g54'*`lnq4' + `g55'*`lnq5' + ///
    `b5'*(`lnexp' - `lnqindex') + `l5'/`bofq'*(`lnexp' - `lnqindex')^2 + `x1'*`eta15' + `x2'*`eta25'+`x3'*`eta35' + `x4'*`eta45')*`cdf5' + `d5'*`pdf5'

    }


    end

    nlsur quaids @ w1 w2 w3 w4 w5 lnq1 lnq2 lnq3 lnq4 lnq5 lnexp x1 x2 x3 x4 pdf1 pdf2 pdf3 pdf4 pdf5 cdf1 cdf2 cdf3 cdf4 cdf5, ifgnls nequations(5)parameters(a1 a2 a3 a4 a5 b1 b2 b3 b4 b5 g11 g12 g13 g14 g15 g22 g23 g24 g25 g33 g34 g35 g44 g45 g55 l1 l2 l3 l4 eta11 eta12 eta13 eta14 eta15 eta21 eta22 eta23 eta24 eta25 eta31 eta32 eta33 eta34 eta35 eta41 eta42 eta43 eta44 eta45 d1 d2 d3 d4 d5)nolog


Working...
X