semID {SEMID} | R Documentation |
Identifiability of linear structural equation models.
Description
This function can be used to check global and generic identifiability of
linear structural equation models (L-SEMs). In particular, this function
takes a MixedGraph
object corresponding to the L-SEM and
checks different conditions known for global and generic identifiability.
Usage
semID(
mixedGraph,
testGlobalID = TRUE,
testGenericNonID = TRUE,
genericIdStepFunctions = list(htcIdentifyStep),
tianDecompose = TRUE
)
Arguments
mixedGraph |
a |
testGlobalID |
TRUE or FALSE if the graph should be tested for global
identifiability. This uses the |
testGenericNonID |
TRUE of FALSE if the graph should be tested for
generic non-identifiability, that is, if for every generic choice
of parameters for the L-SEM there are infinitely many
other choices that lead to the same covariance matrix. This currently
uses the |
genericIdStepFunctions |
a list of the generic identifier step functions
that should be used for testing generic identifiability. See
|
tianDecompose |
TRUE or FALSE if the mixed graph should be Tian decomposed before running the identification algorithms (when appropriate). In general letting this be TRUE will make the algorithm faster and more powerful. Note that this is a version of the Tian decomposition that works also with cyclic graphs. |
Value
returns an object of class 'SEMIDResult
,' this
object is just a list with 6 components:
isGlobalID
If testGlobalID == TRUE, then TRUE or FALSE if the graph is globally identifiable. If testGlobalID == FALSE then NA.
isGenericNonID
If testGenericNonID == TRUE, then TRUE if the graph is generically non-identifiable or FALSE the test is inconclusive. If testGenericNonID == FALSE then NA.
genericIDResult
If length(genericIdStepFunctions) != 0 then a
GenericIDResult
object as returned bygeneralGenericID
. Otherwise a list of length 0.mixedGraph
the inputted mixed graph object.
tianDecompose
the argument tianDecompose.
call
the call made to this function.
Examples
## Not run:
L = t(matrix(
c(0, 1, 0, 0, 0,
0, 0, 1, 0, 0,
0, 0, 0, 1, 0,
0, 0, 0, 0, 1,
0, 0, 0, 0, 0), 5, 5))
O = t(matrix(
c(0, 0, 1, 1, 0,
0, 0, 0, 1, 1,
0, 0, 0, 0, 0,
0, 0, 0, 0, 0,
0, 0, 0, 0, 0), 5, 5))
O = O + t(O)
graph = MixedGraph(L,O)
semID(graph)
## Examples from Foygel, Draisma & Drton (2012)
demo(SEMID)
## End(Not run)