Package: PCBN 0.1.1

PCBN: Inference of Pair-Copula Bayesian Networks

Creates, fits and samples Pair-Copula Bayesian Networks (PCBN) under some restrictions on the underlying Directed Acyclic Graph (DAG), that is, no active cycles nor interfering v-structures, following Derumigny, Horsman and Kurowicka (2025) <doi:10.48550/arXiv.2510.03518>.

Authors:Alexis Derumigny [aut, cre], Niels Horsman [aut], Dorota Kurowicka [aut], Johan Larsson [ctb]

PCBN_0.1.1.tar.gz
PCBN_0.1.1.zip(r-4.7-any)PCBN_0.1.1.zip(r-4.6-any)PCBN_0.1.1.zip(r-4.5-any)
PCBN_0.1.1.tgz(r-4.6-any)PCBN_0.1.1.tgz(r-4.5-any)
PCBN_0.1.1.tar.gz(r-4.7-any)PCBN_0.1.1.tar.gz(r-4.6-any)
PCBN_0.1.1.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
PCBN/json (API)

# Install 'PCBN' in R:
install.packages('PCBN', repos = c('https://alexisderumigny.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/alexisderumigny/pcbn/issues

On CRAN:

Conda:

5.48 score 2 stars 5 scripts 251 downloads 40 exports 18 dependencies

Last updated from:41bad12ee7. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-develOK125
source / vignettesOK226
linux-releaseOK113
macos-releaseOK90
macos-oldrelOK103
windows-develOK118
windows-releaseOK73
windows-oldrelOK75
wasm-releaseOK96

Exports:active_cyclesB_sets_are_increasingB_sets_cut_incrementsB_sets_make_uniqueBiCopCondFitcomplete_and_check_orderscompute_sample_marginComputeCondMargincreate_empty_DAGDAG_to_restrictedDAGdefault_envirdsep_setextend_ordersfind_all_ordersfind_all_orders_vfind_B_setsfind_B_sets_vfind_cond_copula_specifiedfind_interfering_v_from_B_setsfit_all_ordersfit_copulasfix_active_cyclesfix_interfering_vstructshas_active_cycleshas_interfering_vstrucsis_cond_copula_specifiedis_order_abiding_Bsetsis_order_abiding_Bsets_vis_restrictedDAGnew_PCBNpath_hasChordspath_hasConvergingConnectionsPCBN_PDFPCBN_simplot_active_cyclespossible_candidate_incoming_arcpossible_candidate_outgoing_arcpossible_candidatesremove_CondIndset_arc

Dependencies:ADGofTestbnlearnclicpp11digestglueigraphlatticelifecyclemagrittrMASSMatrixmvtnormpkgconfigr2rrlangvctrsVineCopula

B-sets and interfering v-structures
What are B-sets? | Interfering v-structures | B-sets cuts

Last update: 2026-10-15
Started: 2024-03-17

How to use the estimation procedures
Data simulation | Estimation | Copula of U1 and U2 | Copulas related to U3 and U4 | Corresponding computation trees of the copulas | Corresponding computation trees of the margins | Conditional marginal pseudo-observations | Fitting the rest of the DAG | Copulas related to the node U6 | Copulas related to the node U7

Last update: 2026-10-15
Started: 2024-02-14

Readme and manuals

Help Manual

Help pageTopics
Checks if a graph contains active cyclesactive_cycles has_active_cycles plot_active_cycles
Checks if the B-sets for a particular node form an increasing sequence.B_sets_are_increasing
Find the decomposition of B-setsB_sets_cut_increments
Compress a given collection of B-setsB_sets_make_unique
Complete an order and check whether these are valid orders on parents setscomplete_and_check_orders
Computes a conditional margin during samplingcompute_sample_margin
Create empty DAGcreate_empty_DAG
Turns a general graph into a restricted graph.DAG_to_restrictedDAG fix_active_cycles fix_interfering_vstructs
Fits the copula joining w and v given cond_set abiding by the conditional independencies of the graphBiCopCondFit ComputeCondMargin default_envir
D-separation of two nodes given a set in a DAGdsep_set
Fills in all possible orders for the next node for each possible orderextend_orders
Finds all possible copula assignments given a DAGfind_all_orders
Finds all possible orders of node v given previous copula assignmentsfind_all_orders_v
Find all the B-sets of a given DAGfind_B_sets find_B_sets_v
Find among parents of a node, the one that has a conditional copula specifiedfind_cond_copula_specified
Find all interfering v-structures for a given collection of B-setsfind_interfering_v_from_B_sets
Fit the copulas of a PCBN given datafit_all_orders fit_copulas
Checks if graph has interfering v-structureshas_interfering_vstrucs
Checks if a given (conditional) copula has already been specifiedis_cond_copula_specified
Check whether a certain order abides by the B-setsis_order_abiding_Bsets is_order_abiding_Bsets_v
Does a DAG satisfy the restrictions of no active cycle and no interfering v-structuresis_restrictedDAG
Log-likelihood of a PCBN objectlogLik.PCBN
Initializes PCBN classnew_PCBN
Checks a path for converging connections and chords.path_hasChords path_hasConvergingConnections
PDF of a PCBN modelPCBN_PDF
Simulate data from a specified PCBNPCBN_sim
Print and plot PCBN objectsplot.PCBN print.PCBN
Possible candidates to be added to a partial orderpossible_candidates possible_candidate_incoming_arc possible_candidate_outgoing_arc
Remove elements from a conditioning set by using conditional independenceremove_CondInd
Add a directed arc to a graphset_arc