Extension of McNemar's test

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

Extension of McNemar's test

Anton-24
Dear SPSS List Members,

We are looking for an extension of McNemar's test in order to detect
differences in pre-post changes between two groups.

Here's what the data look like:

(1) Group: Treatment & Control
The control group members were eligible for treatment but put on a waiting
list.  The members were not matched individually to any treatment group
cases.

(2) We measured employment status (Yes/No) at two points in time.

We have assessed change in employment status (time 1 to time 2) *within*
each group separately via McNemar's.  We'd now like to see if the pattern or
rate of change is different between the two groups.

I've read that the Breslow-Day test is appropriate for testing for
differences between two odds ratios, however, I'm not certain that forming
odds ratios on a pre-post group even makes sense.

Any suggestions are truly welcome.

Hunter

=====================
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: Extension of McNemar's test

Bruce Weaver
Administrator
This reminds me of something I helped a colleague with a couple years ago.  They had a binary outcome measured at 3 time points.  The conventional approach in the field was to do a separate logistic regression model at each time point.  But with GENLIN, we were able to include all 3 time points in one model.  If I left out the interaction with Time, I was able to duplicate exactly the results of the individual logistic regressions.  But the advantage was we could then throw in a Treatment x Time interaction to ask if the effect of Treatment varied over time.  

Here's a modification of the code I used for that, with 2 time points instead of 3.  I think the Treat*T2 term in this model addresses your question.


* Data file has 2 rows per subject (times 1 and 2).
* T2 = a 0/1indicator for time point 2.
* Treat = the treatment variable (with two values).
* EmpStat = employment status (2 values).

* Generalized Estimating Equations.
GENLIN EmpStat (REFERENCE=FIRST) WITH treat t2
  /MODEL treat t2 treat*t2 INTERCEPT=YES
 DISTRIBUTION=BINOMIAL LINK=LOGIT
  /CRITERIA METHOD=FISHER(1) SCALE=1 MAXITERATIONS=100 MAXSTEPHALVING=5 PCONVERGE=1E-006(ABSOLUTE)
    SINGULAR=1E-012 ANALYSISTYPE=3(WALD) CILEVEL=95 LIKELIHOOD=FULL
  /REPEATED SUBJECT=mrnum WITHINSUBJECT=t2 SORT=YES CORRTYPE=unstructured ADJUSTCORR=YES
    COVB=ROBUST MAXITERATIONS=100 PCONVERGE=1e-006(ABSOLUTE) UPDATECORR=1
  /MISSING CLASSMISSING=EXCLUDE
  /PRINT CPS DESCRIPTIVES MODELINFO FIT SUMMARY SOLUTION (EXPONENTIATED).


HTH.


Anton-24 wrote
Dear SPSS List Members,

We are looking for an extension of McNemar's test in order to detect
differences in pre-post changes between two groups.

Here's what the data look like:

(1) Group: Treatment & Control
The control group members were eligible for treatment but put on a waiting
list.  The members were not matched individually to any treatment group
cases.

(2) We measured employment status (Yes/No) at two points in time.

We have assessed change in employment status (time 1 to time 2) *within*
each group separately via McNemar's.  We'd now like to see if the pattern or
rate of change is different between the two groups.

I've read that the Breslow-Day test is appropriate for testing for
differences between two odds ratios, however, I'm not certain that forming
odds ratios on a pre-post group even makes sense.

Any suggestions are truly welcome.

Hunter

=====================
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
--
Bruce Weaver
bweaver@lakeheadu.ca
http://sites.google.com/a/lakeheadu.ca/bweaver/

"When all else fails, RTFM."

PLEASE NOTE THE FOLLOWING: 
1. My Hotmail account is not monitored regularly. To send me an e-mail, please use the address shown above.
2. The SPSSX Discussion forum on Nabble is no longer linked to the SPSSX-L listserv administered by UGA (https://listserv.uga.edu/).
Reply | Threaded
Open this post in threaded view
|

Re: Extension of McNemar's test

Ryan
In reply to this post by Anton-24
To be clear, Bruce is proposing that you test the difference between
groups in log(odds) change from time 1 to time 2 by fitting a
generalized linear model. On a side note, if you wanted the GENLIN
procedure to output the log(odds) change from time 1 to time 2 for
each group in the "Parameter Estimates" table, you could parameterize
the model with the fixed effects, group (categorical variable) and
group-BY-time, excluding the grand intercept.

Ryan

On Thu, Mar 31, 2011 at 1:08 PM, Hunter <[hidden email]> wrote:

> Dear SPSS List Members,
>
> We are looking for an extension of McNemar's test in order to detect
> differences in pre-post changes between two groups.
>
> Here's what the data look like:
>
> (1) Group: Treatment & Control
> The control group members were eligible for treatment but put on a waiting
> list.  The members were not matched individually to any treatment group
> cases.
>
> (2) We measured employment status (Yes/No) at two points in time.
>
> We have assessed change in employment status (time 1 to time 2) *within*
> each group separately via McNemar's.  We'd now like to see if the pattern or
> rate of change is different between the two groups.
>
> I've read that the Breslow-Day test is appropriate for testing for
> differences between two odds ratios, however, I'm not certain that forming
> odds ratios on a pre-post group even makes sense.
>
> Any suggestions are truly welcome.
>
> Hunter
>
> =====================
> 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: Extension of McNemar's test

Anton-24
In reply to this post by Anton-24
Many thanks to Bruce & Ryan for their help.  It looks like the GEE procedure
is going to work well.

I created* the following syntax that produces the same results as Bruce's
syntax below:

genlin EmpStat (reference = first) with Time Treat
 /model Time Treat Treat*Time distribution = binomial link = logit
 /repeated subject = mrnum corrtype = unstructured
 /print solution (exponentiated) modelinfo.

My question is this:  Will the above approach properly assess the Time by
Treatment interaction when there are more than 2 time periods involved?  I
believe the above is treating the Time periods as if they are continuous,
rather than categorical.

Again, I'm grateful for any and all advice.

Hunter


* The above syntax was modified from an example on UCLA's fantastic website:

http://www.ats.ucla.edu/stat/spss/library/gee.htm


On Thu, 31 Mar 2011 11:45:16 -0700, Bruce Weaver <[hidden email]>
wrote:

>This reminds me of something I helped a colleague with a couple years ago.
>They had a binary outcome measured at 3 time points.  The conventional
>approach in the field was to do a separate logistic regression model at each
>time point.  But with GENLIN, we were able to include all 3 time points in
>one model.  If I left out the interaction with Time, I was able to duplicate
>exactly the results of the individual logistic regressions.  But the
>advantage was we could then throw in a Treatment x Time interaction to ask
>if the effect of Treatment varied over time.
>
>Here's a modification of the code I used for that, with 2 time points
>instead of 3.  I think the Treat*T2 term in this model addresses your
>question.
>
>
>* Data file has 2 rows per subject (times 1 and 2).
>* T2 = a 0/1indicator for time point 2.
>* Treat = the treatment variable (with two values).
>* EmpStat = employment status (2 values).
>
>* Generalized Estimating Equations.
>GENLIN EmpStat (REFERENCE=FIRST) WITH treat t2
>  /MODEL treat t2 treat*t2 INTERCEPT=YES
> DISTRIBUTION=BINOMIAL LINK=LOGIT
>  /CRITERIA METHOD=FISHER(1) SCALE=1 MAXITERATIONS=100 MAXSTEPHALVING=5
>PCONVERGE=1E-006(ABSOLUTE)
>    SINGULAR=1E-012 ANALYSISTYPE=3(WALD) CILEVEL=95 LIKELIHOOD=FULL
>  /REPEATED SUBJECT=mrnum WITHINSUBJECT=t2 SORT=YES CORRTYPE=unstructured
>ADJUSTCORR=YES
>    COVB=ROBUST MAXITERATIONS=100 PCONVERGE=1e-006(ABSOLUTE) UPDATECORR=1
>  /MISSING CLASSMISSING=EXCLUDE
>  /PRINT CPS DESCRIPTIVES MODELINFO FIT SUMMARY SOLUTION (EXPONENTIATED).
>
>
>HTH.
>
>
>
>Anton-24 wrote:
>>
>> Dear SPSS List Members,
>>
>> We are looking for an extension of McNemar's test in order to detect
>> differences in pre-post changes between two groups.
>>
>> Here's what the data look like:
>>
>> (1) Group: Treatment & Control
>> The control group members were eligible for treatment but put on a waiting
>> list.  The members were not matched individually to any treatment group
>> cases.
>>
>> (2) We measured employment status (Yes/No) at two points in time.
>>
>> We have assessed change in employment status (time 1 to time 2) *within*
>> each group separately via McNemar's.  We'd now like to see if the pattern
>> or
>> rate of change is different between the two groups.
>>
>> I've read that the Breslow-Day test is appropriate for testing for
>> differences between two odds ratios, however, I'm not certain that forming
>> odds ratios on a pre-post group even makes sense.
>>
>> Any suggestions are truly welcome.
>>
>> Hunter
>>
>> =====================
>> 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
>>
>
>
>-----
>--
>Bruce Weaver
>[hidden email]
>http://sites.google.com/a/lakeheadu.ca/bweaver/
>
>"When all else fails, RTFM."
>
>NOTE: My Hotmail account is not monitored regularly.
>To send me an e-mail, please use the address shown above.
>
>--
>View this message in context:
http://spssx-discussion.1045642.n5.nabble.com/Extension-of-McNemar-s-test-tp4273803p4273945.html
>Sent from the SPSSX Discussion mailing list archive at Nabble.com.
>
>=====================
>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: Extension of McNemar's test

Bruce Weaver
Administrator
Hi Hunter.  In SPSS lingo, it is BY factor and WITH covariate, where factor = a categorical variable, and covariate = a continuous variable.  So you are right, your syntax treats Time as continuous.  Try this instead:

genlin EmpStat (reference = first) by Time Treat
 /model Time Treat Treat*Time distribution = binomial link = logit
 /repeated subject = mrnum corrtype = unstructured
 /print solution (exponentiated) modelinfo.

Assuming Treat has only two levels, you should get the same results with:

genlin EmpStat (reference = first) by Time with Treat
 /model Time Treat Treat*Time distribution = binomial link = logit
 /repeated subject = mrnum corrtype = unstructured
 /print solution (exponentiated) modelinfo.

Although the signs on the coefficients may be switched--I think the default is to use the last category of a factor as the reference category.

HTH.


Anton-24 wrote
Many thanks to Bruce & Ryan for their help.  It looks like the GEE procedure
is going to work well.

I created* the following syntax that produces the same results as Bruce's
syntax below:

genlin EmpStat (reference = first) with Time Treat
 /model Time Treat Treat*Time distribution = binomial link = logit
 /repeated subject = mrnum corrtype = unstructured
 /print solution (exponentiated) modelinfo.

My question is this:  Will the above approach properly assess the Time by
Treatment interaction when there are more than 2 time periods involved?  I
believe the above is treating the Time periods as if they are continuous,
rather than categorical.

Again, I'm grateful for any and all advice.

Hunter


* The above syntax was modified from an example on UCLA's fantastic website:

http://www.ats.ucla.edu/stat/spss/library/gee.htm


On Thu, 31 Mar 2011 11:45:16 -0700, Bruce Weaver <[hidden email]>
wrote:

>This reminds me of something I helped a colleague with a couple years ago.
>They had a binary outcome measured at 3 time points.  The conventional
>approach in the field was to do a separate logistic regression model at each
>time point.  But with GENLIN, we were able to include all 3 time points in
>one model.  If I left out the interaction with Time, I was able to duplicate
>exactly the results of the individual logistic regressions.  But the
>advantage was we could then throw in a Treatment x Time interaction to ask
>if the effect of Treatment varied over time.
>
>Here's a modification of the code I used for that, with 2 time points
>instead of 3.  I think the Treat*T2 term in this model addresses your
>question.
>
>
>* Data file has 2 rows per subject (times 1 and 2).
>* T2 = a 0/1indicator for time point 2.
>* Treat = the treatment variable (with two values).
>* EmpStat = employment status (2 values).
>
>* Generalized Estimating Equations.
>GENLIN EmpStat (REFERENCE=FIRST) WITH treat t2
>  /MODEL treat t2 treat*t2 INTERCEPT=YES
> DISTRIBUTION=BINOMIAL LINK=LOGIT
>  /CRITERIA METHOD=FISHER(1) SCALE=1 MAXITERATIONS=100 MAXSTEPHALVING=5
>PCONVERGE=1E-006(ABSOLUTE)
>    SINGULAR=1E-012 ANALYSISTYPE=3(WALD) CILEVEL=95 LIKELIHOOD=FULL
>  /REPEATED SUBJECT=mrnum WITHINSUBJECT=t2 SORT=YES CORRTYPE=unstructured
>ADJUSTCORR=YES
>    COVB=ROBUST MAXITERATIONS=100 PCONVERGE=1e-006(ABSOLUTE) UPDATECORR=1
>  /MISSING CLASSMISSING=EXCLUDE
>  /PRINT CPS DESCRIPTIVES MODELINFO FIT SUMMARY SOLUTION (EXPONENTIATED).
>
>
>HTH.
>
>
>
>Anton-24 wrote:
>>
>> Dear SPSS List Members,
>>
>> We are looking for an extension of McNemar's test in order to detect
>> differences in pre-post changes between two groups.
>>
>> Here's what the data look like:
>>
>> (1) Group: Treatment & Control
>> The control group members were eligible for treatment but put on a waiting
>> list.  The members were not matched individually to any treatment group
>> cases.
>>
>> (2) We measured employment status (Yes/No) at two points in time.
>>
>> We have assessed change in employment status (time 1 to time 2) *within*
>> each group separately via McNemar's.  We'd now like to see if the pattern
>> or
>> rate of change is different between the two groups.
>>
>> I've read that the Breslow-Day test is appropriate for testing for
>> differences between two odds ratios, however, I'm not certain that forming
>> odds ratios on a pre-post group even makes sense.
>>
>> Any suggestions are truly welcome.
>>
>> Hunter
>>
>> =====================
>> 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
>>
>
>
>-----
>--
>Bruce Weaver
>[hidden email]
>http://sites.google.com/a/lakeheadu.ca/bweaver/
>
>"When all else fails, RTFM."
>
>NOTE: My Hotmail account is not monitored regularly.
>To send me an e-mail, please use the address shown above.
>
>--
>View this message in context:
http://spssx-discussion.1045642.n5.nabble.com/Extension-of-McNemar-s-test-tp4273803p4273945.html
>Sent from the SPSSX Discussion mailing list archive at Nabble.com.
>
>=====================
>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
--
Bruce Weaver
bweaver@lakeheadu.ca
http://sites.google.com/a/lakeheadu.ca/bweaver/

"When all else fails, RTFM."

PLEASE NOTE THE FOLLOWING: 
1. My Hotmail account is not monitored regularly. To send me an e-mail, please use the address shown above.
2. The SPSSX Discussion forum on Nabble is no longer linked to the SPSSX-L listserv administered by UGA (https://listserv.uga.edu/).