Stata The Stata listserver
[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

st: programming question

From   "Maureen Paul" <[email protected]>
To   [email protected]
Subject   st: programming question
Date   Wed, 3 Jul 2002 14:12:59 +0100

Hi all

I am writing a programme where I would like the user to input a 
variable for which they would like a test for heteroscedasticity. I 
am trying to match that variable to a a corresponding e2var?q, then 
generate a variable equal to that e2var?q which I will then use in 
the heteroscedasticity test. I have tried so many things and what 
follows is my lastest attempt. I suppose using the if statement 
within the while loop may be a problem but I have tried various other 
things. Any suggestions?

local k=2
  while "``k''" ~= "" {
	local kless1 = `k' - 1
	tempvar e2var`kless1'q  hetvar
	ge `e2var`kless1'q' = `e2qq' * ``k'' `if'
      if "`heteroscedasticity'" ~= "" { parse "`heteroscedasticity'", 
parse(" ") 
	    local namevar "`1'" 
 	    foreach var of varlist `varlist' {
	          if "`var'"=="``k''" {ge `hetvar'=`e2var`kless1'q'' `if'} 

local k = `k'+1


if "`heteroscedasticity'" ~= "" {
	quietly regress x  y  `hetvar'  z  `if' [`weight' `exp'], noconstant
	if e(N) ~= `obs' { display "ERROR " e(N) "observations, when should 
be " `obs' }
	display in text "Heteroscedasticity w.r.t. `namevar'" _col(48) "{c 
|}" %11.7f as result e(r2)*e(N) %18.7f chi2tail(1,e(r2)*e(N)) 


Miss Maureen Paul
Department of Economics
University of Warwick
Coventry CV4 7AL

Phone: +44 (0)2476528418
Email: [email protected]
Web page:
*   For searches and help try:

© Copyright 1996–2024 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index