This package implements the tPC algorithm for causal discovery. The
‘t’ stands for ‘temporal’ or ‘tiers’ and indicates that background
knowledge in the form of a partial node/variable ordering is available.
Our implementation is a modified version of pc from the
pcalg package (Kalisch et al. 2012) with the following
additional options:
Using the tiers argument, the user can allocate each
node/variable to a tier. Specifying tiers has two effects: First,
conditional independence testing is restricted such that the variables
in the conditioning set do not lie in the future of the variables whose
independence is being tested. This reduces the number of unnecessary
conditional independence tests and thus makes the algorithm more
reliable. Second, edges between nodes in different tiers are oriented
from the earlier tier to the later tier. This usually results in a more
informative output. Both modifications were suggested in Spirtes et
al. (2000), p. 93.
Additionally, further directed edges may be blacklisted using the
forbEdges argument. In contrast to pcalg, this
allows the user to forbid one direction of an edge, but allow the other
one. The arguments context.all and
context.tier function as whitelists. Variables in
context.all are glocal context variables; as such, they are
parents of all other non-context nodes in the graphs (examples are
variables encoding batch effect in gene expression data, or ‘sex’ and
‘country’ in a cohort study). Variables in context.tier are
tier-specific context variables, which are parents of all non-context
nodes in the same tier (e.g. ‘calender year’ if the tiers encode
different years).
The package also includes a function called ida_invalid,
which determines possibly valid adjustment sets from a graph that is not
a valid CPDAG or MPDAG.
Install graph and RBGL from Bioconductor
and devtools from CRAN, and make sure that Rtools40 is
installed on your computer. Then run the following commands:
devtools::install_github("bips-hb/tpc")
library(tpc)Markus Kalisch, Martin Maechler, Diego Colombo, Marloes H. Maathuis, Peter Buehlmann (2012). Causal Inference Using Graphical Models with the R Package pcalg. Journal of Statistical Software, 47(11), 1-26. URL https://www.jstatsoft.org/article/view/v047i11.
Peter Spirtes, Clark Glymour, Richard Scheines (2000). Causation, Prediction, and Search. Second Edition. MIT Press, Cambridge, Massachusetts, USA.