[R-sig-ME] Non-parametric, multivariate, repeated measures analysis. CLM?

peter dalgaard pdalgd at gmail.com
Mon Jul 8 12:14:52 CEST 2013


On Jul 7, 2013, at 13:16 , Torvon wrote:

> Dear all,
> 
> I need to run a non-parametric, multivariate, repeated measures analysis. I
> have 9 ordered DVs (depression symptoms) on a scale between 0 and 3, and 2
> measurement points.

Ahem. There is nothing nonparametric about these models. You have to be very much aware of the (parametric) assumptions that are being made.

> 
> What I want to find out is whether there is an interaction between time *
> symptoms, that is, whether symptoms differ in their change over time.
> 
> I have not found a proper way to do this yet (for metric variables you
> could run a simple multivariate repeated measures GLM, even SPSS can do
> that in 3 clicks).


Again, "simple" and "multivariate repeated" do not go well together. Do you use an unspecified covariance, or a compound symmetry one? With or without epsilon corrections.  3 clicks may get you one of them, but are you sure you understand all implications?

> 
> While searching for a solution I found a "trick" that I stumbled across in
> Joop Hox' book "Multilevel Analysis" (second edition, 2010), pp. 189.
> 
> The trick is to reformat your long data into a long long dataset in which
> you create a new DV that includes all your DV responses, and use an index
> variable that holds information about the nature of the DVs to predict this
> outcome.
> 
> In this dataset, I have participants * time * symptom rows. The variable
> "symptoms" contains the symptom severity of participants on 9 symptoms ( 0
> - 3), the variables "index" contains the information about the nature of
> the symptom (1 to 9), and finally I have the variable "time".
> 
> data<-read.csv("data_long_long.csv", head=T)
> 
> data$symptoms <- factor(data$symptoms)
> data$time <- factor(data$time)
> data$index <-factor(data$index)
> 
> m1<-clm(symptoms ~ index*time, data = data)
> 
> link  threshold nobs  logLik    AIC      niter max.grad cond.H
> logit flexible  26100 -20279.24 40598.47 6(0)  2.32e-12 9.1e+02
> 
> Coefficients:
>                 Estimate Std. Error z value Pr(>|z|)
> index2        0.23664    0.09239   2.561 0.010426 *
> index3        1.18456    0.08527  13.892  < 2e-16 ***
> index4        1.25951    0.08452  14.903  < 2e-16 ***
> index5        0.50797    0.09022   5.630  1.8e-08 ***
> index6       -0.05645    0.09716  -0.581 0.561219
> index7       -0.33821    0.10261  -3.296 0.000980 ***
> index8       -1.46011    0.14010 -10.422  < 2e-16 ***
> index9       -1.76944    0.15673 -11.290  < 2e-16 ***
> time2             1.58636    0.08392  18.904  < 2e-16 ***
> index2:time2 -0.42100    0.11578  -3.636 0.000277 ***
> index3:time2 -1.01586    0.11053  -9.191  < 2e-16 ***
> index4:time2  0.16148    0.10865   1.486 0.137213
> index5:time2 -0.09218    0.11438  -0.806 0.420298
> index6:time2 -0.33049    0.12068  -2.738 0.006172 **
> index7:time2 -0.25286    0.12599  -2.007 0.044749 *
> index8:time2 -0.11819    0.16347  -0.723 0.469675
> index9:time2 -0.66872    0.18918  -3.535 0.000408 ***
> ---
> Signif. codes:  0 Œ***‚ 0.001 Œ**‚ 0.01 Œ*‚ 0.05 Œ.‚ 0.1 Œ ‚ 1
> 
> Threshold coefficients:
>    Estimate Std. Error z value
> 0|1  1.52104    0.06799   22.37
> 1|2  3.27583    0.07102   46.13
> 2|3  4.86367    0.07925   61.37

Shouldn't there be a (random) effect of participant somewhere? I.e. a clmm() model? Possibly also random interactions between participant:time
and participant:symptoms.

> 
> Now, what I am looking for is the overall "symptom * time" interaction
> term. How do I obtain this value?

If you have the correct error model (and enough participants), it should be a matter of comparing the model with deterministic part index*time to 
the one with index+time. Presumably, anova() is your friend.

> Thank you
> T-
> 
> 	[[alternative HTML version deleted]]
> 
> _______________________________________________
> R-sig-mixed-models at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models

-- 
Peter Dalgaard, Professor
Center for Statistics, Copenhagen Business School
Solbjerg Plads 3, 2000 Frederiksberg, Denmark
Phone: (+45)38153501
Email: pd.mes at cbs.dk  Priv: PDalgd at gmail.com



More information about the R-sig-mixed-models mailing list