Dot Charts with single dot per line a la Bill Cleveland

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Dot Charts with single dot per line a la Bill Cleveland

Art Kendall
Is there a way to make the kind of dot plot that is sort of like a horizontal bar chart but only the end of the bar is indicated.
http://www.b-eye-network.com/view/2468

I have seen talks on meta analysis where they have something analogous to the above but adding horizontal wings to indicate the confidence interval.
I think of this as a "winged dot chart".
Each row is a study.
the horizontal axis is effect size.
Each dot has horizontal wings for the confidence interval
an example in fixed width font

study1...................|.........---O---................................
study1...................|..--O--.........................................
study1...................|........-----O-----.............................
study1..................-|-O---...........................................
study1..............----O|---.............................................
                
                                     0.0

A chart similar to this would be useful in ANOVA where each row was cell, the vertical bar the grand mean, the dot the cell mean, and the wings the confidence interval.

If these already exist in SPSS what names are used.  If they do not exist in SPSS, has anybody cobbled them together?

Art Kendall
Social Research Consultants

===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD
Art Kendall
Social Research Consultants
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Thomas MacFarland
Everyone:

The dotchart() function in R will accommodate this action fairly
easily if you can not find a SPSS fix.

A simple set of R syntax (about baseball, of course!) follows:

>
> On1stBase <- c(3,4,1,2,4,2,3,6,1,0,
+                6,3,3,5,2,1,3,7,1,3,
+                5,3)
> On1stBase
  [1] 3 4 1 2 4 2 3 6 1 0 6 3 3 5 2 1 3 7 1 3 5 3
>
> par(ask=TRUE)
> dotchart(On1stBase,
+          main="Dotchart of On1stBase",
+          xlab="On1stBase",
+          font.lab=2,
+          col="red")
Waiting to confirm page change...
>

Going beyond this simple example, look at
http://polisci.msu.edu/jacoby/research/dotplots/tpm/Jacoby,%20Dotplots,%20TPM%20Draft.pdf and give attention to Figure 4 (R syntax begin on p. 11 and Figure 4 is on the last page of this
document).

Best wishes.

Tom



--
Thomas W. MacFarland, Ed.D.
Office of Institutional Effectiveness; Senior Research Associate and
Associate Professor
Nova Southeastern University
Voice 954-262-5395  Fax 954-262-3970  [hidden email]



Quoting Art Kendall <[hidden email]>:

>      Is there a way to make the kind of dot plot that is sort of like
> a horizontal bar chart but only the end of the bar is indicated.
> http://www.b-eye-network.com/view/2468
>
> I have seen talks on meta analysis where they have something
> analogous to the above but adding horizontal wings to indicate the
> confidence interval.
> I think of this as a "winged dot chart".
> Each row is a study.
> the horizontal axis is effect size.
> Each dot has horizontal wings for the confidence interval
> an example in fixed width font
>
> study1...................|.........---O---................................
> study1...................|..--O--.........................................
> study1...................|........-----O-----.............................
> study1..................-|-O---...........................................
> study1..............----O|---.............................................
>                                                       0.0
>
> A chart similar to this would be useful in ANOVA where each row was
> cell, the vertical bar the grand mean, the dot the cell mean, and the
> wings the confidence interval.
>
> If these already exist in SPSS what names are used.  If they do not
> exist in SPSS, has anybody cobbled them together?
>
> Art Kendall
> Social Research Consultants
>
>  ===================== To manage your subscription to SPSSX-L, send a
> message to [hidden email] (not to SPSSX-L), with no body
> text except the command. To leave the list, send the command SIGNOFF
> SPSSX-L For a list of commands to manage subscriptions, send the
> command INFO REFCARD

=====================
To manage your subscription to SPSSX-L, send a message to
[hidden email] (not to SPSSX-L), with no body text except the
command. To leave the list, send the command
SIGNOFF SPSSX-L
For a list of commands to manage subscriptions, send the command
INFO REFCARD
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Art Kendall
Thank you.  Those are those are the kinds of graphs I had in mind,

Since R can be called from SPSS, do you have SPSS syntax to do this task?

Art

On 6/25/2011 2:11 PM, Thomas MacFarland wrote:
Everyone:

The dotchart() function in R will accommodate this action fairly easily if you can not find a SPSS fix.

A simple set of R syntax (about baseball, of course!) follows:


On1stBase <- c(3,4,1,2,4,2,3,6,1,0,
+                6,3,3,5,2,1,3,7,1,3,
+                5,3)
On1stBase
 [1] 3 4 1 2 4 2 3 6 1 0 6 3 3 5 2 1 3 7 1 3 5 3

par(ask=TRUE)
dotchart(On1stBase,
+          main="Dotchart of On1stBase",
+          xlab="On1stBase",
+          font.lab=2,
+          col="red")
Waiting to confirm page change...


Going beyond this simple example, look at http://polisci.msu.edu/jacoby/research/dotplots/tpm/Jacoby,%20Dotplots,%20TPM%20Draft.pdf and give attention to Figure 4 (R syntax begin on p. 11 and Figure 4 is on the last page of this document).

Best wishes.

Tom



===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD
Art Kendall
Social Research Consultants
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Jon K Peck
Have you considered the error bar or dropline charts in Statistics?  They default to vertical lines, but that is easy to reverse.

Jon Peck
Senior Software Engineer, IBM
[hidden email]
new phone: 720-342-5621




From:        Art Kendall <[hidden email]>
To:        [hidden email]
Date:        06/25/2011 12:19 PM
Subject:        Re: [SPSSX-L] Dot Charts with single dot per line a la Bill              Cleveland
Sent by:        "SPSSX(r) Discussion" <[hidden email]>




Thank you.  Those are those are the kinds of graphs I had in mind,

Since R can be called from SPSS, do you have SPSS syntax to do this task?

Art

On 6/25/2011 2:11 PM, Thomas MacFarland wrote:

Everyone:

The dotchart() function in R will accommodate this action fairly easily if you can not find a SPSS fix.

A simple set of R syntax (about baseball, of course!) follows:


On1stBase <- c(3,4,1,2,4,2,3,6,1,0,

+                6,3,3,5,2,1,3,7,1,3,
+                5,3)

On1stBase
 [1] 3 4 1 2 4 2 3 6 1 0 6 3 3 5 2 1 3 7 1 3 5 3

par(ask=TRUE)
dotchart(On1stBase,

+          main="Dotchart of On1stBase",
+          xlab="On1stBase",
+          font.lab=2,
+          col="red")
Waiting to confirm page change...



Going beyond this simple example, look at
http://polisci.msu.edu/jacoby/research/dotplots/tpm/Jacoby,%20Dotplots,%20TPM%20Draft.pdf and give attention to Figure 4 (R syntax begin on p. 11 and Figure 4 is on the last page of this document).

Best wishes.

Tom



===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

ViAnn Beadle
In reply to this post by Art Kendall

The first example in the link is just a dot plot and a transposed axis. Here’s how to get that one using GPL:

 

GET

  FILE='C:\Users\Vi\Documents\spss17 testing\world95.sav'.

DATASET NAME world95  WINDOW=FRONT.

 

SORT CASES by log_pop.

 

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country log_pop MISSING=LISTWISE REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: log_pop=col(source(s), name("log_pop"))

  PAGE: begin(scale(300px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"))

  GUIDE: axis(dim(2), label("Population (log)"))

  SCALE: linear(dim(2), include(0))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*log_pop))

  PAGE: end()

END GPL.

 

Comments:

 

I sort by the variable I’m plotting and then specify the sort.data() on the SCALE statement for the categorical variable. This orders the category by their position in the file.

 

Since I’ve got many discrete categories I use the PAGE block to set the scale to long and skinny to avoid omitting some of the categories which would be hidden by collision.  Since the margins are specified as percentages in the formatting template, this results in lots of space at the top and bottom of the inner frame. I could specify a template to override it to something like 1% instead of 5%.

 

I transpose the plot via the transpose function on the COORD statement.

 

I’ll take a look at the rest of the plots in this article to see how doable they are later.

 

From: SPSSX(r) Discussion [mailto:[hidden email]] On Behalf Of Art Kendall
Sent: Saturday, June 25, 2011 11:05 AM
To: [hidden email]
Subject: Dot Charts with single dot per line a la Bill Cleveland

 

Is there a way to make the kind of dot plot that is sort of like a horizontal bar chart but only the end of the bar is indicated.
http://www.b-eye-network.com/view/2468

I have seen talks on meta analysis where they have something analogous to the above but adding horizontal wings to indicate the confidence interval.
I think of this as a "winged dot chart".
Each row is a study.
the horizontal axis is effect size.
Each dot has horizontal wings for the confidence interval
an example in fixed width font

study1...................|.........---O---................................
study1...................|..--O--.........................................
study1...................|........-----O-----.............................
study1..................-|-O---...........................................
study1..............----O|---.............................................
                
                                     0.0

A chart similar to this would be useful in ANOVA where each row was cell, the vertical bar the grand mean, the dot the cell mean, and the wings the confidence interval.

If these already exist in SPSS what names are used.  If they do not exist in SPSS, has anybody cobbled them together?

Art Kendall
Social Research Consultants

===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD

Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Art Kendall
Thanks.

That is great.

Art

On 6/25/2011 4:23 PM, ViAnn Beadle wrote:

GET

  FILE='C:\Users\Vi\Documents\spss17 testing\world95.sav'.

DATASET NAME world95  WINDOW=FRONT.

 

SORT CASES by log_pop.

 

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country log_pop MISSING=LISTWISE REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: log_pop=col(source(s), name("log_pop"))

  PAGE: begin(scale(300px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"))

  GUIDE: axis(dim(2), label("Population (log)"))

  SCALE: linear(dim(2), include(0))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*log_pop))

  PAGE: end()

END GPL.

 

===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD
Art Kendall
Social Research Consultants
Reply | Threaded
Open this post in threaded view
|

Question about non-normal data

stace swayne
Dear list,
 
I have depression scores (continuous variable) and a gender variable from five different countries (country variable: 1=chile, 2=cuba, 3=mexico, 4=argentina, 5=uruguay).
 
I wanted to find out whether there was a difference in depression scores based on gender, so I ran t-tests within each country.
 
I received a critique which stated that I had not controlled for multiple comparisons.
 
To address the critique I decided to run a univariate GLM, but my levene's test is significant and I have been trying to transform the depression scores but to no avail.
 
Does anyone have any advice on how to deal with a situation like this?
 
All suggestions are welcomed,
 
Thanks
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

ViAnn Beadle
In reply to this post by Art Kendall

Here’s another one of the examples from that paper in which multiple measures are plotted. I use a dual axis chart which handles measures with very different scales. I also turned on the gridlines for the categories which makes the chart look kinda bad out of the box but which can be edited in the editor to create a less heavy effect:

 

SORT CASES by literacy.

* Chart Builder.

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country literacy babymort MISSING=LISTWISE

    REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: literacy=col(source(s), name("literacy"))

  DATA: babymort=col(source(s), name("babymort"))

  PAGE: begin(scale(500px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"), gridlines())

  GUIDE: axis(scale(y1), label("People who read (%)"), color(color."3E58AC"))

  GUIDE: axis(scale(y2), label("Infant mortality (deaths per 1000 live births)"),

    color(color."2EB848"), opposite())

  SCALE: y1 = linear(dim(2))

  SCALE: y2 = linear(dim(2))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*literacy), color(color."3E58AC"), scale(y1), shape(shape.circle))

  ELEMENT: point(position(country*babymort), color(color."2EB848"), scale(y2), shape(shape.square))

  PAGE: end()

END GPL.

 

From: Art Kendall [mailto:[hidden email]]
Sent: Saturday, June 25, 2011 3:27 PM
To: ViAnn Beadle
Cc: [hidden email]
Subject: Re: [SPSSX-L] Dot Charts with single dot per line a la Bill Cleveland

 

Thanks.

That is great.

Art

On 6/25/2011 4:23 PM, ViAnn Beadle wrote:

GET

  FILE='C:\Users\Vi\Documents\spss17 testing\world95.sav'.

DATASET NAME world95  WINDOW=FRONT.

 

SORT CASES by log_pop.

 

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country log_pop MISSING=LISTWISE REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: log_pop=col(source(s), name("log_pop"))

  PAGE: begin(scale(300px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"))

  GUIDE: axis(dim(2), label("Population (log)"))

  SCALE: linear(dim(2), include(0))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*log_pop))

  PAGE: end()

END GPL.

 

Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Art Kendall
Great. 

Does developer central have a section for things like this until they get into the base SPSS and the GPL manual?

Art

On 6/25/2011 11:14 PM, ViAnn Beadle wrote:

Here’s another one of the examples from that paper in which multiple measures are plotted. I use a dual axis chart which handles measures with very different scales. I also turned on the gridlines for the categories which makes the chart look kinda bad out of the box but which can be edited in the editor to create a less heavy effect:

 

SORT CASES by literacy.

* Chart Builder.

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country literacy babymort MISSING=LISTWISE

    REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: literacy=col(source(s), name("literacy"))

  DATA: babymort=col(source(s), name("babymort"))

  PAGE: begin(scale(500px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"), gridlines())

  GUIDE: axis(scale(y1), label("People who read (%)"), color(color."3E58AC"))

  GUIDE: axis(scale(y2), label("Infant mortality (deaths per 1000 live births)"),

    color(color."2EB848"), opposite())

  SCALE: y1 = linear(dim(2))

  SCALE: y2 = linear(dim(2))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*literacy), color(color."3E58AC"), scale(y1), shape(shape.circle))

  ELEMENT: point(position(country*babymort), color(color."2EB848"), scale(y2), shape(shape.square))

  PAGE: end()

END GPL.

 

From: Art Kendall [[hidden email]]
Sent: Saturday, June 25, 2011 3:27 PM
To: ViAnn Beadle
Cc: [hidden email]
Subject: Re: [SPSSX-L] Dot Charts with single dot per line a la Bill Cleveland

 

Thanks.

That is great.

Art

On 6/25/2011 4:23 PM, ViAnn Beadle wrote:

GET

  FILE='C:\Users\Vi\Documents\spss17 testing\world95.sav'.

DATASET NAME world95  WINDOW=FRONT.

 

SORT CASES by log_pop.

 

GGRAPH

  /GRAPHDATASET NAME="graphdataset" VARIABLES=country log_pop MISSING=LISTWISE REPORTMISSING=NO

  /GRAPHSPEC SOURCE=INLINE.

BEGIN GPL

  SOURCE: s=userSource(id("graphdataset"))

  DATA: country=col(source(s), name("country"), unit.category())

  DATA: log_pop=col(source(s), name("log_pop"))

  PAGE: begin(scale(300px,2000px))

  COORD: transpose()

  GUIDE: axis(dim(1), label("country"))

  GUIDE: axis(dim(2), label("Population (log)"))

  SCALE: linear(dim(2), include(0))

  SCALE: cat(dim(1), sort.data())

  ELEMENT: point(position(country*log_pop))

  PAGE: end()

END GPL.

 

===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD
Art Kendall
Social Research Consultants
Reply | Threaded
Open this post in threaded view
|

Re: Dot Charts with single dot per line a la Bill Cleveland

Jon K Peck
The SPSS Community site has a forum where things like this can be posted, but we would also like to add more downloadable graphics materials and examples.

BTW, Professor Hans Grüner has recently updated his regression diagnostic plots dialog available from the Community site (www.ibm.com/developerworks/spssdevcentral).

Jon Peck
Senior Software Engineer, IBM
[hidden email]
new phone: 720-342-5621




From:        Art Kendall <[hidden email]>
To:        [hidden email]
Date:        06/26/2011 06:12 AM
Subject:        Re: [SPSSX-L] Dot Charts with single dot per line a la Bill                Cleveland
Sent by:        "SPSSX(r) Discussion" <[hidden email]>




Great.  

Does developer central have a section for things like this until they get into the base SPSS and the GPL manual?

Art


On 6/25/2011 11:14 PM, ViAnn Beadle wrote:

Here’s another one of the examples from that paper in which multiple measures are plotted. I use a dual axis chart which handles measures with very different scales. I also turned on the gridlines for the categories which makes the chart look kinda bad out of the box but which can be edited in the editor to create a less heavy effect:
 
SORT CASES by literacy.
* Chart Builder.
GGRAPH
  /GRAPHDATASET NAME="graphdataset" VARIABLES=country literacy babymort MISSING=LISTWISE
    REPORTMISSING=NO
  /GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
  SOURCE: s=userSource(id("graphdataset"))
  DATA: country=col(source(s), name("country"), unit.category())
  DATA: literacy=col(source(s), name("literacy"))
  DATA: babymort=col(source(s), name("babymort"))
  PAGE: begin(scale(500px,2000px))
  COORD: transpose()
  GUIDE: axis(dim(1), label("country"), gridlines())
  GUIDE: axis(scale(y1), label("People who read (%)"), color(color."3E58AC"))
  GUIDE: axis(scale(y2), label("Infant mortality (deaths per 1000 live births)"),
    color(color."2EB848"), opposite())
  SCALE: y1 = linear(dim(2))
  SCALE: y2 = linear(dim(2))
  SCALE: cat(dim(1), sort.data())
  ELEMENT: point(position(country*literacy), color(color."3E58AC"), scale(y1), shape(shape.circle))
  ELEMENT: point(position(country*babymort), color(color."2EB848"), scale(y2), shape(shape.square))
  PAGE: end()
END GPL.
 
From: Art Kendall [mailto:Art@...]
Sent:
Saturday, June 25, 2011 3:27 PM
To:
ViAnn Beadle
Cc:
[hidden email]
Subject:
Re: [SPSSX-L] Dot Charts with single dot per line a la Bill Cleveland

 
Thanks.

That is great.

Art


On 6/25/2011 4:23 PM, ViAnn Beadle wrote:

GET
  FILE='C:\Users\Vi\Documents\spss17 testing\world95.sav'.
DATASET NAME world95  WINDOW=FRONT.
 
SORT CASES by log_pop.
 
GGRAPH
  /GRAPHDATASET NAME="graphdataset" VARIABLES=country log_pop MISSING=LISTWISE REPORTMISSING=NO
  /GRAPHSPEC SOURCE=INLINE.
BEGIN GPL
  SOURCE: s=userSource(id("graphdataset"))
  DATA: country=col(source(s), name("country"), unit.category())
  DATA: log_pop=col(source(s), name("log_pop"))
  PAGE: begin(scale(300px,2000px))
  COORD: transpose()
  GUIDE: axis(dim(1), label("country"))
  GUIDE: axis(dim(2), label("Population (log)"))
  SCALE: linear(dim(2), include(0))
  SCALE: cat(dim(1), sort.data())
  ELEMENT: point(position(country*log_pop))
  PAGE: end()
END GPL.
 

===================== To manage your subscription to SPSSX-L, send a message to [hidden email] (not to SPSSX-L), with no body text except the command. To leave the list, send the command SIGNOFF SPSSX-L For a list of commands to manage subscriptions, send the command INFO REFCARD

Reply | Threaded
Open this post in threaded view
|

Re: Question about non-normal data

Swank, Paul R
In reply to this post by stace swayne

If the depression variable is positively skewed, you could run a generalized linear model with a Poisson or negative binomial link function. But I suggest a two factor design to determine if the effect of gender is consistent across countries.

 

Dr. Paul R. Swank,

Professor

Children's Learning Institute

University of Texas Health Science Center-Houston

 

From: SPSSX(r) Discussion [mailto:[hidden email]] On Behalf Of stace swayne
Sent: Saturday, June 25, 2011 5:15 PM
To: [hidden email]
Subject: Question about non-normal data

 

Dear list,

 

I have depression scores (continuous variable) and a gender variable from five different countries (country variable: 1=chile, 2=cuba, 3=mexico, 4=argentina, 5=uruguay).

 

I wanted to find out whether there was a difference in depression scores based on gender, so I ran t-tests within each country.

 

I received a critique which stated that I had not controlled for multiple comparisons.

 

To address the critique I decided to run a univariate GLM, but my levene's test is significant and I have been trying to transform the depression scores but to no avail.

 

Does anyone have any advice on how to deal with a situation like this?

 

All suggestions are welcomed,

 

Thanks

 

Reply | Threaded
Open this post in threaded view
|

Re: Question about non-normal data

Rich Ulrich
In reply to this post by stace swayne
Perhaps you are over-thinking this.

The straight-forward way to "control for multiple comparisons" would
be use a Bonferroni correction (or one of its variations) of the p-values
for the 5 separate t-test.  Thus, your 5 initial 0.05 tests would be performed
at the 0.05/5 = 0.01  nominal alpha. 

Or if you want an overall test, you would use one of the formulas for
combining p-values. 

What Levene's test indicates directly is a difference in variances,
not non-normality in itself.  Why do you see it?  If there is a
ceiling/basement effect, then there might be an underlying
transformation that would help; on the other hand, if that is
the problem, the original F-test is probably robust if the Ns are
reasonably equal and you don't have any *really*  extreme
outliers. (I would not expect such extremes here, since this is
rating-scale data).

I do like to use a transformation to normalize scores, so long as
it comes naturally to the data.  Since you are having trouble there,
I think you should be satisfied with the more basic solutions, suggested
above.

--
Rich Ulrich


Date: Sat, 25 Jun 2011 15:15:02 -0700
From: [hidden email]
Subject: Question about non-normal data
To: [hidden email]

Dear list,
 
I have depression scores (continuous variable) and a gender variable from five different countries (country variable: 1=chile, 2=cuba, 3=mexico, 4=argentina, 5=uruguay).
 
I wanted to find out whether there was a difference in depression scores based on gender, so I ran t-tests within each country.
 
I received a critique which stated that I had not controlled for multiple comparisons.
 
To address the critique I decided to run a univariate GLM, but my levene's test is significant and I have been trying to transform the depression scores but to no avail.
 
Does anyone have any advice on how to deal with a situation like this?
 
All suggestions are welcomed,
 
Thanks
Reply | Threaded
Open this post in threaded view
|

Re: Question about non-normal data

Ryan
In reply to this post by stace swayne
I think a linear model which assumes unequal variances across specific sub-populations can be fit employing the MIXED procedure. The following code should allow the variances to differ across each gender*group combination, if that is what you desire:
 
mixed dep_scores by gender country
 /fixed = gender country gender*country | sstype(3)
 /method = reml
 /print = solution
 /repeated = gender*country | subject(subject_id) covtype(diag).
 
The test associated with the gender*country tells you whether there is a significant interaction between gender and country.
 
HTH,
 
Ryan
 
On Sat, Jun 25, 2011 at 6:15 PM, stace swayne <[hidden email]> wrote:
Dear list,
 
I have depression scores (continuous variable) and a gender variable from five different countries (country variable: 1=chile, 2=cuba, 3=mexico, 4=argentina, 5=uruguay).
 
I wanted to find out whether there was a difference in depression scores based on gender, so I ran t-tests within each country.
 
I received a critique which stated that I had not controlled for multiple comparisons.
 
To address the critique I decided to run a univariate GLM, but my levene's test is significant and I have been trying to transform the depression scores but to no avail.
 
Does anyone have any advice on how to deal with a situation like this?
 
All suggestions are welcomed,
 
Thanks