[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