pcalg: Methods for Graphical Models and Causal Inference

Functions for causal structure learning and causal inference using graphical models. The main algorithms for causal structure learning are PC (for observational data without hidden variables), FCI and RFCI (for observational data with hidden variables), and GIES (for a mix of data from observational studies (i.e. observational data) and data from experiments involving interventions (i.e. interventional data) without hidden variables). For causal inference the IDA algorithm, the Generalized Backdoor Criterion (GBC) and the Generalized Adjustment Criterion (GAC) are implemented.

Install the latest version of this package by entering the following in R:
AuthorMarkus Kalisch [aut, cre], Alain Hauser [aut], Martin Maechler [aut], Diego Colombo [ctb], Doris Entner [ctb], Patrik Hoyer [ctb], Antti Hyttinen [ctb], Jonas Peters [ctb], Nicoletta Andri [ctb], Emilija Perkovic [ctb], Preetam Nandy [ctb], Philipp Ruetimann [ctb], Daniel Stekhoven [ctb], Manuel Schuerch [ctb]
Date of publication2017-02-22 09:57:28
MaintainerMarkus Kalisch <kalisch@stat.math.ethz.ch>
LicenseGPL (>= 2)

View on CRAN

Man pages

amatType: Types and Display of Adjacency Matrices in Package 'pcalg'

backdoor: Find Set Satisfying the Generalized Backdoor Criterion (GBC)

beta.special: Compute set of intervention effects

beta.special.pcObj: Compute set of intervention effects in a fast way

binCItest: G square Test for (Conditional) Independence of Binary...

checkTriple: Check Consistency of Conditional Independence for a Triple of...

compareGraphs: Compare two graphs in terms of TPR, FPR and TDR

condIndFisherZ: Test Conditional Independence of Gaussians via Fisher's Z

corGraph: Computing the correlation graph

dag2cpdag: Convert a DAG to a CPDAG

dag2essgraph: Convert a DAG to an Essential Graph

dag2pag: Convert a DAG with latent variables into a PAG

disCItest: G square Test for (Conditional) Independence of Discrete...

dreach: Compute D-SEP(x,y,G)

dsep: Test for d-separation in a DAG

dsepTest: Test for d-separation in a DAG

EssGraph-class: Class '"EssGraph"'

fci: Estimate a PAG by the FCI Algorithm

fciAlgo-class: Class "fciAlgo" of FCI Algorithm Results

fciPlus: Estimate a PAG by the FCI+ Algorithm

find.unsh.triple: Find all Unshielded Triples in an Undirected Graph

gac: Test If Set Satisfies Generalized Adjustment Criterion (GAC)

gAlgo-class: Class '"gAlgo"'

GaussL0penIntScore-class: Class '"GaussL0penIntScore"'

GaussL0penObsScore-class: Class '"GaussL0penObsScore"'

GaussParDAG-class: Class '"GaussParDAG"' of Gaussian Causal Models

gds: Greedy DAG Search to Estimate Markov Equivalence Class of DAG

ges: Estimate the Markov equivalence class of a DAG using GES

getGraph: Get the "graph" Part or Aspect of R Object

getNextSet: Iteration through a list of all combinations of choose(n,k)

gies: Estimate Interventional Markov Equivalence Class of a DAG by...

gmB: Graphical Model 5-Dim Binary Example Data

gmD: Graphical Model Discrete 5-Dim Example Data

gmG: Graphical Model 8-Dimensional Gaussian Example Data

gmI: Graphical Model 7-dim IDA Data Examples

gmInt: Graphical Model 8-Dimensional Interventional Gaussian Example...

gmL: Latent Variable 4-Dim Graphical Model Data Example

ida: Estimate Multiset of Possible Total Causal Effects

idaFast: Multiset of Possible Total Causal Effects for Several Target...

iplotPC: Plotting a pcAlgo object using the package igraph

jointIda: Estimate Multiset of Possible Total Joint Effects

legal.path: Check if a 3-node-path is Legal

LINGAM: Linear non-Gaussian Acyclic Models (LiNGAM)

mat2targets: Conversion between an intervention matrix and a list of...

mcor: Compute (Large) Correlation Matrix

pag2mag: Transform a PAG into a MAG in the Corresponding Markov...

ParDAG-class: Class '"ParDAG"' of Parametric Causal Models

pc: Estimate the Equivalence Class of a DAG using the PC...

pcalg-internal: Internal Pcalg Functions

pcAlgo: PC-Algorithm [OLD]: Estimate Skeleton or Equivalence Class of...

pcAlgo-class: Class "pcAlgo" of PC Algorithm Results, incl. Skeleton

pc.cons.intern: Utility for conservative and majority rule in PC and FCI

pcorOrder: Compute Partial Correlations

pcSelect: PC-Select: Estimate subgraph around a response variable

pcSelect.presel: Estimate Subgraph around a Response Variable using...

pdag2allDags: Enumerate All DAGs in a Markov Equivalence Class

pdag2dag: Extend a Partially Directed Acyclic Graph (PDAG) to a DAG

pdsep: Estimate Final Skeleton in the FCI algorithm

plotAG: Plot partial ancestral graphs (PAG)

plotSG: Plot the subgraph around a Specific Node in a Graph Object

possibleDe: Find possible descendants on definite status paths.

qreach: Compute Possible-D-SEP(x,G) of a node x in a PDAG G

randDAG: Random DAG Generation

randomDAG: Generate a Directed Acyclic Graph (DAG) randomly

rfci: Estimate an RFCI-PAG using the RFCI Algorithm

r.gauss.pardag: Generate a Gaussian Causal Model Randomly

rmvDAG: Generate Multivariate Data according to a DAG

rmvnorm.ivent: Simulate from a Gaussian Causal Model

Score-class: Virtual Class "Score"

shd: Compute Structural Hamming Distance (SHD)

showAmat: Show Adjacency Matrix of pcAlgo object

showEdgeList: Show Edge List of pcAlgo object

simy: Estimate Interventional Markov Equivalence Class of a DAG

skeleton: Estimate (Initial) Skeleton of a DAG using the PC / PC-Stable...

trueCov: Covariance matrix of a DAG.

udag2apag: Last step of RFCI algorithm: Transform partially oriented...

udag2pag: Last steps of FCI algorithm: Transform Final Skeleton into...

udag2pdag: Last PC Algorithm Step: Extend Object with Skeleton to...

unifDAG: Uniform Sampling of Directed Acyclic Graphs (DAG)

visibleEdge: Check visible edge.

wgtMatrix: Weight Matrix of a Graph, e.g., a simulated DAG


adj.check Man page
allDags Man page
amat2dag Man page
amat.cpdag Man page
amat.pag Man page
amatType Man page
ancTS Man page
backdoor Man page
beta.special Man page
beta.special.pcObj Man page
binCItest Man page
causalEffect Man page
caus.inf Man page
checkEdges Man page
checkTriple Man page
ci.test Man page
coerce,fciAlgo,amat-method Man page
coerce,fciAlgo,matrix-method Man page
coerce,LINGAM,amat-method Man page
coerce,pcAlgo,amat-method Man page
coerce,pcAlgo,matrix-method Man page
compareGraphs Man page
condIndFisherZ Man page
corGraph Man page
dag2cpdag Man page
dag2essgraph Man page
dag2pag Man page
dep.triple Man page
disCItest Man page
dreach Man page
dsep Man page
dsepTest Man page
EssGraph-class Man page
faith.check Man page
fci Man page
fciAlgo-class Man page
fciPlus Man page
find.sink Man page
find.unsh.triple Man page
flipEdges Man page
gac Man page
gAlgo-class Man page
gaussCItest Man page
gaussCItest.fast Man page
GaussL0penIntScore-class Man page
GaussL0penObsScore-class Man page
GaussParDAG-class Man page
gds Man page
ges Man page
getGraph Man page
getGraph,ANY-method Man page
getGraph,fciAlgo-method Man page
getGraph,matrix-method Man page
getGraph-methods Man page
getGraph,pcAlgo-method Man page
getNextSet Man page
gies Man page
global.mle,GaussL0penIntScore-method Man page
global.mle,GaussL0penObsScore-method Man page
global.score,GaussL0penIntScore-method Man page
global.score,GaussL0penObsScore-method Man page
gmB Man page
gmD Man page
gmG Man page
gmG8 Man page
gmI Man page
gmI7 Man page
gmInt Man page
gmL Man page
gSquareBin Man page
gSquareDis Man page
has.new.coll Man page
ida Man page
idaFast Man page
iplotPC Man page
jointIda Man page
legal.path Man page
lingam Man page
LINGAM Man page
lm.cov Man page
local.mle,GaussL0penIntScore-method Man page
local.mle,GaussL0penObsScore-method Man page
local.score,GaussL0penIntScore-method Man page
local.score,GaussL0penObsScore-method Man page
mat2targets Man page
mcor Man page
minDiscrPath Man page
minUncovCircPath Man page
minUncovPdPath Man page
my.SpecialDag Man page
pag2magAM Man page
ParDAG-class Man page
pc Man page
pcAlgo Man page
pcAlgo-class Man page
pcAlgo.Perfect Man page
pc.cons.intern Man page
pcorOrder Man page
pcSelect Man page
pcSelect.presel Man page
pdag2allDags Man page
pdag2dag Man page
pdsep Man page
plotAG Man page
plot,EssGraph,ANY-method Man page
plot,fciAlgo,ANY-method Man page
plot,ParDAG,ANY-method Man page
plot,pcAlgo,ANY-method Man page
plotSG Man page
possibleDe Man page
print.fciAlgo Man page
print.pcAlgo Man page
qreach Man page
randDAG Man page
randomDAG Man page
reach Man page
rfci Man page
rfci.vStruc Man page
r.gauss.pardag Man page
rmvDAG Man page
rmvnorm.ivent Man page
Score-class Man page
shd Man page
showAmat Man page
showEdgeList Man page
show,fciAlgo-method Man page
show.fci.amat Man page
show,pcAlgo-method Man page
show.pc.amat Man page
simy Man page
skeleton Man page
skeleton.dag2pag Man page
summary,fciAlgo-method Man page
summary,pcAlgo-method Man page
targets2mat Man page
triple2numb Man page
trueCov Man page
udag2apag Man page
udag2pag Man page
udag2pdag Man page
udag2pdagRelaxed Man page
udag2pdagSpecial Man page
unifDAG Man page
unifDAG.approx Man page
updateList Man page
visibleEdge Man page
wgtMatrix Man page
zStat Man page


tests/test_displayAmat.R tests/test_pdag2dag.R tests/test_idaFast.R tests/test_arges.R tests/test_randomDAG.R tests/test_fci.R tests/test_amat2dag.R tests/test_LINGAM.R tests/test_rmvDAG.R tests/test_getNextSet.R tests/test_pc.R tests/test_ida.R tests/test_mat2targets.R tests/test_dsep.R tests/test_randDAG.R tests/test_jointIda.R tests/test_udag2pdag.R tests/test_pdag2allDags.R tests/test_shd.R tests/test_fciPlus.R tests/test_backdoor.R tests/test_pcorOrder.R
tests/test_dag2cpdag.R tests/test_gac.R tests/test_compareGraphs.R tests/test_skeleton.R tests/test_unifDAG.R tests/test_pcSelect.R tests/test_causalEffect.R
tests/test_rfci.R tests/test_udag2pag.R tests/test_bicscore.R tests/test_dag2essgraph.R tests/test_wgtMatrix.R tests/test_gies.R tests/test_gSquareDis.R
R/AllClasses.R R/jointIda.R R/gies.R
R/gacFuns.R R/lingamFuns.R R/deprecated.R R/pcalg.R R/Aaux.R R/zzz.R R/genRandDAG.R
man/dreach.Rd man/EssGraph-class.Rd man/getNextSet.Rd man/dag2essgraph.Rd man/rmvDAG.Rd man/pcSelect.Rd man/legal.path.Rd man/getGraph.Rd man/unifDAG.Rd man/pcSelect.presel.Rd man/trueCov.Rd man/visibleEdge.Rd man/checkTriple.Rd man/udag2apag.Rd man/pcorOrder.Rd man/possibleDe.Rd man/wgtMatrix.Rd man/pcAlgo-class.Rd man/find.unsh.triple.Rd man/mat2targets.Rd man/compareGraphs.Rd man/GaussL0penIntScore-class.Rd man/gAlgo-class.Rd man/GaussL0penObsScore-class.Rd man/gmInt.Rd man/pc.cons.intern.Rd man/backdoor.Rd man/idaFast.Rd man/udag2pag.Rd man/gmG.Rd man/plotAG.Rd man/r.gauss.pardag.Rd man/dag2cpdag.Rd man/gmD.Rd man/gmL.Rd man/ParDAG-class.Rd man/showEdgeList.Rd man/gac.Rd man/condIndFisherZ.Rd man/amatType.Rd man/corGraph.Rd man/GaussParDAG-class.Rd man/fciAlgo-class.Rd man/shd.Rd man/pdsep.Rd man/qreach.Rd man/ges.Rd man/Score-class.Rd man/dsep.Rd man/gmB.Rd man/randDAG.Rd man/mcor.Rd man/skeleton.Rd man/rfci.Rd man/LINGAM.Rd man/pc.Rd man/udag2pdag.Rd man/pcAlgo.Rd man/randomDAG.Rd man/ida.Rd man/jointIda.Rd man/gds.Rd man/beta.special.pcObj.Rd man/beta.special.Rd man/fciPlus.Rd man/fci.Rd man/pdag2dag.Rd man/dag2pag.Rd man/pag2mag.Rd man/plotSG.Rd man/gmI.Rd man/dsepTest.Rd man/binCItest.Rd man/showAmat.Rd man/disCItest.Rd man/rmvnorm.ivent.Rd man/pdag2allDags.Rd man/simy.Rd man/gies.Rd man/pcalg-internal.Rd man/iplotPC.Rd

Questions? Problems? Suggestions? or email at ian@mutexlabs.com.

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.