CausalKinetiX.modelranking {CausalKinetiX} | R Documentation |
Applies CausalKinetiX framework to rank a list models according to their stability.
CausalKinetiX.modelranking(D, times, env, target, models, pars = list())
D |
data matrix. Should have dimension n x (L*d), where n is the number of repetitions (over all experiments), L is the number of time points and d is the number of predictor variables. |
times |
vector of length L specifying the time points at which data was observed. |
env |
integer vector of length n encoding to which experiment each repetition belongs. |
target |
integer specifing which variable is the target. |
models |
list of models. Each model is specified by a list of vectors specifiying the variables included in the interactions of each term. |
pars |
list of the following parameters: |
This function scores a specified list of models and does not include a variable ranking.
returns a list with the entries "scores" and "parameter"
Niklas Pfister, Stefan Bauer and Jonas Peters
Pfister, N., S. Bauer, J. Peters (2018). Identifying Causal Structure in Large-Scale Kinetic Systems ArXiv e-prints (arXiv:1810.11776).
The function CausalKinetiX
is a wrapper for
this function that also computes the variable ranking and
generates sensible classes of models.
## Generate data from Maillard reaction simulation.obj <- generate.data.maillard(target=1, env=rep(1:5, 3), L=20, par.noise=list(noise.sd=1)) D <- simulation.obj$simulated.data time <- simulation.obj$time env <- simulation.obj$env target <- simulation.obj$target ## Fit data to the following two models using CausalKinetiX: ## 1: dy = theta_1*x_1 + theta_2*x_2 + theta_3*x_1*x_10 (true model) ## 2: dy = theta_1*x_2 + theta_2*x_4 + theta_3*x_3*x_10 (wrong model) ck.fit <- CausalKinetiX.modelranking(D, time, env, target, list(list(1, 2, c(1, 10)), list(2, 4, c(3, 10)))) print(ck.fit$scores)