LISTSERV at the University of Georgia
Menubar Imagemap
Home Browse Manage Request Manuals Register
Previous messageNext messagePrevious in topicNext in topicPrevious by same authorNext by same authorPrevious page (October 2002)Back to main SPSSX-L pageJoin or leave SPSSX-L (or change settings)ReplyPost a new messageSearchProportional fontNon-proportional font
Date:         Tue, 1 Oct 2002 09:56:43 +0200
Reply-To:     Asesoría Bioestadística
              <bioestadistica@eresmas.net>
Sender:       "SPSSX(r) Discussion" <SPSSX-L@LISTSERV.UGA.EDU>
From:         Asesoría Bioestadística
              <bioestadistica@eresmas.net>
Subject:      Re: Betreff: Re: Re: elementary questions about using syntax in
              SPSSfor theBreusch-Pagan text
Content-Type: text/plain; charset=us-ascii

Hi Isabell

As you replied to my private account, I sent you the reply to your private account too.

If anybody in the list is interested in this topic, I can send the message again to the whole list.

Marta

Isabell Ottfried ha escrito:

> Hi Marta! > > First of all, thousand thanks for your help and the paper. And I want to say sorry in advance to bother you again. However, I still have some difficulties to run the syntax (it's my fault!). It seems I need a bit more experience with the syntax. :) > > You wrote: > ... > a) Second, you open your dataset, or create dummy data as in section (2) > .... > b) I recommend you to organize your dataset so the dependent is not among the predictors (or any other variable you don't want to include in the analysis). > ________________________ > a) This means, I have to open either my dataset or create a dummy data with help of section (2) after I run section (1). With other words, if I use my own dataset I can skip section (2) and can go directly to section (3). Am I right? Another question is about the dummy data. Why should one use a dummy data? Where is the sense of a such a dataset and where does the data come from? > > b) Why should I exclude my dependent variable? I thought the test is based on the squared residuals form the regression of the "original" dv and iv. How does the syntax get the corresponding residuals? If I don`t exclude the dv, I get a lot of error statements. I only get "correct" results if I run first section (2) and then section (3). But if I do so, the data is NOT my own dataset. It seems that I have to change section (2) but I don't what and how!? > > I apologize for further questions but I am bit confused. Thousand thanks for your help in advance. > > Best regards, > > Isabell > > So, if you have a dataset consisting in one dependent (X1) and 19 independent (x2 TO x20), the syntax will be: > > BPKTEST x1 19 x2 TO x20. > > Select and run the line. > > ----- original Nachricht -------- > > Hi Isabell: > > As I wrote part of the code, I feel responsible ;). > > - I downloaded the Gwilym Price's paper, and I will send you a copy later (to your mail, not the whole list) > > - MACRO use: > > First, you must select and run all the code between DEFINE... !ENDDEFINE (section (1) of the code). This will create a new command called BPKTEST. This part of the code is run only once, as the command will last as long as you have SPSS running. > > Second, you open your dataset, or create dummy data as in section (2) > > To run the test, you write the following: > > BPKTEST Depvar Nr. of predictors List of predictors (ordered AND consecutive in the dataset) > > I recommend you to organize your dataset so the dependent is not among the predictors (or any other variable you don't want to include in the analysis). > > So, if you have a dataset consisting in one dependent (X1) and 19 independent (x2 TO x20), the syntax will be: > > BPKTEST x1 19 x2 TO x20. > > Select and run the line. > > I am sending you a newer version of the code, with more output and an item corrected. Also, I have adapted the example to fit your data (19 predictors). I have tested it and it runs OK. > > Best regards > > Marta > ---------------------------------------------------------- > > * BREUSCH-PAGAN & KOENKER TEST MACRO * > * See 'Heteroscedasticity: Testing and correcting in SPSS' > * by Gwilym Pryce, for technical details. > > * The MACRO needs 3 arguments: > * the dependent, the number of predictors and the list of predictors > * (if they are consecutive, the keyword TO can be used) . > > * (1) MACRO definition (select an run just ONCE). > > DEFINE bpktest(!POSITIONAL !TOKENS(1) /!POSITIONAL !TOKENS(1) /!POSITIONAL !CMDEND). > * Regression to get the residuals and residual plots. > REGRESSION > /STATISTICS R ANOVA > /DEPENDENT !1 > /METHOD=ENTER !3 > /SCATTERPLOT=(*ZRESID,*ZPRED) > /RESIDUALS HIST(ZRESID) NORM(ZRESID) > /SAVE RESID(residual) . > do if $casenum=1. > print /"Examine the scatter plot of the residuals to detect" > /"model misspecification and/or heteroscedasticity" > /"" > /"Also, check the histogram and np plot of residuals " > /"to detect non normality of residuals " > /"Skewness and kurtosis more than twice their SE indicate non-normality ". > end if. > * Checking normality of residuals. > DESCRIPTIVES > VARIABLES=residual > /STATISTICS=KURTOSIS SKEWNESS . > * New dependent variable (g) creation. > COMPUTE sq_res=residual**2. > compute constant=1. > AGGREGATE > /OUTFILE='tempdata.sav' > /BREAK=constant > /rss = SUM(sq_res) > /N=N. > MATCH FILES /FILE=* > /FILE='tempdata.sav'. > EXECUTE. > if missing(rss) rss=lag(rss,1). > if missing(n) n=lag(n,1). > compute g=sq_res/(rss/n). > execute. > * BP&K tests. > * Regression of g on the predictors. > REGRESSION > /STATISTICS R ANOVA > /DEPENDENT g > /METHOD=ENTER !3 > /SAVE RESID(resid) . > *Final report. > do if $casenum=1. > print /" BP&K TESTS" > /" ==========". > end if. > * Routine adapted from Gwilym Pryce. > matrix. > compute p=!2. > get g /variables=g. > get resid /variables=resid. > compute sq_res2=resid&**2. > compute n=nrow(g). > compute rss=msum(sq_res2). > compute ii_1=make(n,n,1). > compute i=ident(n). > compute m0=i-((1/n)*ii_1). > compute tss=transpos(g)*m0*g. > compute regss=tss-rss. > print regss > /format="f8.4" > /title="Regression SS". > print rss > /format="f8.4" > /title="Residual SS". > print tss > /format="f8.4" > /title="Total SS". > compute r_sq=1-(rss/tss). > print r_sq > /format="f8.4" > /title="R-squared". > print n > /format="f4.0" > /title="Sample size (N)". > print p > /format="f4.0" > /title="Number of predictors (P)". > compute bp_test=0.5*regss. > print bp_test > /format="f8.3" > /title="Breusch-Pagan test for Heteroscedasticity" > + " (CHI-SQUARE df=P)". > compute sig=1-chicdf(bp_test,p). > print sig > /format="f8.4" > /title="Significance level of Chi-square df=P (H0:" > + "homoscedasticity)". > compute k_test=n*r_sq. > print k_test > /format="f8.3" > /title="Koenker test for Heteroscedasticity" > + " (CHI-SQUARE df=P)". > compute sig=1-chicdf(k_test,p). > print sig > /format="f8.4" > /title="Significance level of Chi-square df=P (H0:" > + "homoscedasticity)". > end matrix. > !ENDDEFINE. > > * (2) Sample data (replace by your own)*. > > INPUT PROGRAM. > - VECTOR x(20). > - LOOP #I = 1 TO 50. > - LOOP #J = 1 TO 20. > - COMPUTE x(#J) = NORMAL(1). > - END LOOP. > - END CASE. > - END LOOP. > - END FILE. > END INPUT PROGRAM. > execute. > > * x1 is the dependent and x2 TO x20 the predictors. > > * (3) MACRO CALL (select and run). > > BPKTEST x1 19 x2 TO x20. > > --- original Nachricht Ende ---- > > -- > Werden Sie Millionaer > - im freenet.de Lottokiosk, rund um die Uhr geoeffnet. > http://lottokiosk.freenet.de/?flx013lotto=54 > > -- > freenet Grusskarten: > Schicken Sie Ihren Freunden einen Gruss. > Jetzt mit Sound: http://www.freenet.de/tipp/gruss


Back to: Top of message | Previous page | Main SPSSX-L page