You are here

Derivative Estimation Methods for 3 time occasions?

14 posts / 0 new
Last post
amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
Derivative Estimation Methods for 3 time occasions?

I am planning on using on using multivariate latent differential equation modeling for my MA thesis. I will have the opportunity to plan for the parameters, methods, and measurements required to do so. But currently, I am attempting to utilize one of these derivative estimation methods on some data I currently have. Specifically, I have 3 measurements of PTSD, Cortisol, and Coping Self-Efficacy. The downside is that there are 50 participants and the occasions are not equally spaced (e.g., Time 1 is 1 week after traumatic event, Time 2 is 1 month, and Time 3 is 3 months). Is there a way I can still use this data to create a dynamic (DiffEq) multivariate model to better understand the process of this system of variables?

If not, I understand. From my understanding of reading Boker's and Deboeck's articles and book chapters, this should not work. I just felt like it could not hurt to ask. Any help is appreciated :)

mhunter's picture
Offline
Joined: 07/31/2009 - 15:26
A function for it

Always worth asking. I've had a function sitting around that computes the loadings matrix (L matrix) for a latent differential equation with unequal time intervals. Here it is.

LMatrix2 <- function(embedDim=3, tau=1, deltaT=1, order=2, steps=NA){
    if(all(is.na(steps))){
        m <- (embedDim-1)/2
        steps <- (-m:m)*deltaT*tau
    }
    L <- outer(steps, 0:order, "^")/rep(factorial(0:order), each=length(steps))
    return(L)
}
 
#Example usage
times <- c(1, 4, 12) #measurement at weeks 1, 4, and 12 (i.e. 1 week, 1 month, and 3 months)
times <- times - mean(times) # center
LMatrix2(steps=times)
#     [,1]      [,2]      [,3]
#[1,]    1 -4.666667 10.888889
#[2,]    1 -1.666667  1.388889
#[3,]    1  6.333333 20.055556

The function basically has two interfaces. You can either give it the "embedding dimension", "tau", and "deltaT" where it creates the "steps" for you based on equal time intervals; or you can give it the actual times of measurement where is uses those.

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
This is extremely helpful!

Thanks, I really appreciate you taking the time to share this with me! I will definitely work with this today :)

Also, is there a way to look at multiple variables? This is where I have been confused with some of Boker's and Deboeck's articles on these methods. They generally look at the oscillating process of one variable (e.g., Widow's well-being, positive affect, etc). But at times it seems like they are able to look at the oscillation of one variable and see how other variables influence this process. An example is the chapter Differential Structural Equation Modeling that Boker wrote for "New Methods for the Analysis of Change" (2001). He describes how the process of the infant's movement was, or was not, influenced by the movement of the room. Specifically, how the moving room (an environmental force/factor) in the system was potentially influencing the child's movement.

I am interested in looking at how other factors may influence the oscillation of traumatic stress over time, and whether these factors influence a dampening effect (i.e., resiliency) or amplification (i.e., leading to PTSD). Any thoughts?

mhunter's picture
Offline
Joined: 07/31/2009 - 15:26
More recent research

There are several approaches to working with multiple variables. You could create composites with factor scores or sum scores if it's really a single underlying dimension. Otherwise you could create "coupled" latent differential equations. The basic idea there is to have an standard LDE oscillator for each trait and then couple the position, velocity, and acceleration of each of the LDEs with regression weights. If you pursue this route, it would be good to either be familiar with differential equations or closely follow some pre-existing work. Here's some pre-existing work.

Boker, S. M.; Leibenluft, E.; Deboeck, P. R.; Virk, G. & Postolache, T. T. Mood Oscillations and Coupling Between Mood and Weather in Patients with Rapid Cycling Bipolar Disorder International Journal of Child Health and Human Development, 2008, 1, 181-203.

Hu, Y.; Boker, S.; Neale, M. & Klump, K. L. Coupled latent differential equation with moderators: Simulation and application. Psychological Methods, 2014, 19, 56-71.

Hu, Y. & Boker, S. M. Abstract: Permutation Tests of Coupled Latent Differential Equations Multivariate Behavioral Research, Informa UK Limited, 2013, 48, 160.

Montpetit, M. A.; Bergeman, C. S.; Deboeck, P. R.; Tiberio, S. S. & Boker, S. M. Resilience-as-process: Negative affect, stress, and coupled dynamical systems. Psychology and Aging, 2010, 25, 631-640.

Nicholson, J. S.; Deboeck, P. R.; Farris, J. R.; Boker, S. M. & Borkowski, J. G. Maternal depressive symptomatology and child behavior: Transactional relationship with simultaneous bidirectional coupling. Developmental Psychology, 2011, 47, 1312-1323.

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
Thanks! Last question!

Thanks for your response, and I will read these articles.

I have not had any classes on differential equations, but have learned some of the concepts through reading on Damping as well as work from Boker, Deboeck, and Levy. I feel comfortable following these articles you sent to hopefully be capable of performing the analyses.

My main fear is my lack of knowledge on the limits of Dynamic Systems Theory with a specified amount of time series data. Specifically, the data for my thesis is around 120 participants with 3 time measurement occasions. Do you know if this is enough to get accurate estimates using these "coupled" latent differential equation models?

jpritikin's picture
Offline
Joined: 05/24/2012 - 00:35
sample size

It is not impossible to get something from 3 measurement occasions, but your model isn't going to be very stable. With 3 time points, you might develop a hypothesis that you can test with more time points.

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
sample size cont.

Joshua,

Thanks for taking the time to reply my question. I appreciate it, a lot.

This was my fear- that 3 time measurement occasions would not be enough. I know that Boker was able to utilize 3 measurement occasions for a chapter he wrote for New Methods of for Analysis of Change by Collins and Sayer in 2001. However, in a later paper of his and from Deboeck he said that the estimation methods required a minimum of 4 time occasions, but preferably at least 10+.

Would you think it is possible to still use a coupled latent differential equation model for my thesis, and it still have a chance to be published afterwards? I am very new to dynamic system models and trying to understand the parameters and limits I have to work within for these models to get accurate estimations and stable models.

mhunter's picture
Offline
Joined: 07/31/2009 - 15:26
Possible but not recommended

You can do a coupled LDE with 3 time points in the sense that the model can be set up, it will run, and estimate parameters. However, I would be extremely skeptical of any conclusions drawn from such a model. Personally, I wouldn't recommend it. Ten time points might be okay; 100 time points would be better.

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
Thanks

Michael,

Thanks for the clarification! I did not feel comfortable attempting this without making sure whether the estimations would be accurate or not.

I am very interesting in dynamic systems theory and was really hoping that I could use one of these methods for my thesis, but I am assuming that it be best I do something else. I can at least use some of these methods with other data that we have over 100 time occasions with. Do you know if the articles you sent me have the syntax used for the coupling LDE?

Again, I appreciate you taking time out of your day to answer my questions. Thanks.

CharlesD's picture
Offline
Joined: 04/30/2013 - 11:05
ctsem

I've been working on a separate R package, ctsem, that interfaces to OpenMx to do this sort of thing. I'm going to submit the general article / guide to it in the next day or two, so it should hopefully be out soon, but your model is relatively straightforward so you should be able to make some progress just with the help files and examples... you can install by running:

source(file='https://bitbucket.org/charles_driver/ctsem_public/raw/master/installctsem.R')

within R, or download from http://bitbucket.org/charles_driver/ctsem_public/src/master/ctsem_current.tar.gz

It's based on the approach in these articles: http://www.ncbi.nlm.nih.gov/pubmed/22486576 , http://www.ncbi.nlm.nih.gov/pubmed/22420323 .

the main functions are ctModel and ctFit, then you can summary and plot the output from ctFit.

3 time points is possible, though certainly at the minimum end of the scale! If you have a lot of variability in measurement intervals and data with strong relationships this can help, though with this few time points the estimates of stable between subject differences are difficult to estimate accurately, in turn affecting other parameter estimates. The ctFit function includes the possibility to implement an equilibrium constraint, which roughly halves the number of parameters estimated at the expense of assuming the processes are stationary (which we may or may not need to do anyway to draw valid inferences). This can help identifying the various parameters, but needs some thought as to whether it's a good approach :)

For your case I'd suggest you can basically copy the first example listed in the ctFit help, just changing variable names and Tpoints. Get univariate and bivariate models working and see how things progress when a third process is added - parameters can sometimes explode, you'll probably need to fix some to 0, or somebody could think about how to regularise the estimates...

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
Thanks

Charles,

I have been trying to download your package for awhile now it it will not allow me. I think it is because I am using Windows and the package is tar.gz. Do you by chance have a .zip version of the file?

CharlesD's picture
Offline
Joined: 04/30/2013 - 11:05
The install script failed

The install script failed too?

http://bitbucket.org/charles_driver/ctsem_public/src/master/ctsem_1.0.zip

amullings09's picture
Offline
Joined: 12/21/2014 - 17:45
Installed

Charles,

Surprisingly, the install script failed too. I am new to R still (about 3ish months) so do not know why. However, the .zip you sent worked just fine. I am working with it now, thanks!

CharlesD's picture
Offline
Joined: 04/30/2013 - 11:05
No worries, I'm new to

No worries, I'm new to install scripts, but it's been working elsewhere...