"GaussL0penIntScore"
This class represents a score for causal inference from jointly interventional
and observational Gaussian data; it is used in the causal inference functions
gies
and simy
.
The class GaussL0penIntScore
has the same fields as '>Score
.
They need not be accessed by the user.
new("GaussL0penIntScore", data = matrix(1, 1, 1), targets = list(integer(0)), target.index = rep(as.integer(1), nrow(data)), lambda = 0.5*log(nrow(data)), intercept = FALSE, use.cpp = TRUE, ...)
data
Data matrix with
targets
List of mutually exclusive intervention targets that have been used for data generation.
target.index
Vector of length targets
under which the data
was measured.
lambda
Penalization constant (cf. details)
intercept
Indicates whether an intercept is allowed in the linear structural equations, or, equivalently, if a mean different from zero is allowed for the observational distribution.
use.cpp
Indicates whether the calculation of the score should be done
by the C++ library of the package, which speeds up calculation. This
parameter should only be set to FALSE
in the case of problems.
local.score(vertex, parents, ...)
Calculates the local score of a vertex and its parents. Since this score has no obvious interpretation, it is rather for internal use.
global.score.int(edges, ...)
Calculates the global score of a DAG, represented as a list of in-edges: for each vertex in the DAG, this list contains a vector of parents.
global.score(dag, ...)
Calculates the global score of a DAG,
represented as an object of a class derived from
'>ParDAG
.
local.mle(vertex, parents, ...)
Calculates the local MLE of a vertex and its parents. The result is a vector of parameters encoded as follows:
First element: variance of the Gaussian error term
Second element: intercept
Following elements: regression coefficients; one per parent vertex
global.mle(dag, ...)
Calculates the global MLE of a DAG,
represented by an object of a class derived from
'>ParDAG
.
The result is a list of vectors, one per vertex, each in the same format
as the result vector of local.mle
.
The class implements an lambda
in the constructor) times the number of
parameters of the DAG model. By default, the constant
# NOT RUN {
##################################################
## Using Gaussian Data
##################################################
## Load predefined data
data(gmInt)
## Define the score object
score <- new("GaussL0penIntScore", gmInt$x, gmInt$targets, gmInt$target.index)
## Score of the true underlying DAG
score$global.score(as(gmInt$g, "GaussParDAG"))
## Score of the DAG that has only one edge from 1 to 2
A <- matrix(0, ncol(gmInt$x), ncol(gmInt$x))
A[1, 2] <- 1
score$global.score(as(A, "GaussParDAG"))
## (Note: this is lower than the score of the true DAG.)
# }
Run the code above in your browser using DataLab