Skip to content

Commit a6f8e17

Browse files
Examples for queries
1 parent 63458e9 commit a6f8e17

9 files changed

Lines changed: 238 additions & 0 deletions

File tree

R/queries.R

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,22 @@ edge_types <- function(cg) {
429429
#' @returns Either a character vector of node names (if a single node is
430430
#' requested) or a list of character vectors (if multiple nodes are requested).
431431
#'
432+
#' @examples
433+
#' cg <- caugi_graph(
434+
#' A %-->% B,
435+
#' B %-->% C,
436+
#' class = "DAG"
437+
#' )
438+
#' parents(cg, "A") # NULL
439+
#' parents(cg, index = 2) # "A"
440+
#' parents(cg, "B") # "A"
441+
#' parents(cg, c("B", "C"))
442+
#' #> $B
443+
#' #> [1] "A"
444+
#' #>
445+
#' #> $C
446+
#' #> [1] "B"
447+
#'
432448
#' @family queries
433449
#' @concept queries
434450
#'
@@ -479,6 +495,22 @@ parents <- function(cg, nodes = NULL, index = NULL) {
479495
#' @returns Either a character vector of node names (if a single node is
480496
#' requested) or a list of character vectors (if multiple nodes are requested).
481497
#'
498+
#' @examples
499+
#' cg <- caugi_graph(
500+
#' A %-->% B,
501+
#' B %-->% C,
502+
#' class = "DAG"
503+
#' )
504+
#' children(cg, "A") # "B"
505+
#' children(cg, index = 2) # "C"
506+
#' children(cg, "B") # "C"
507+
#' children(cg, c("B", "C"))
508+
#' #> $B
509+
#' #> [1] "C"
510+
#' #>
511+
#' #> $C
512+
#' #> NULL
513+
#'
482514
#' @family queries
483515
#' @concept queries
484516
#'
@@ -529,6 +561,22 @@ children <- function(cg, nodes = NULL, index = NULL) {
529561
#' @returns Either a character vector of node names (if a single node is
530562
#' requested) or a list of character vectors (if multiple nodes are requested).
531563
#'
564+
#' @examples
565+
#' cg <- caugi_graph(
566+
#' A %-->% B,
567+
#' B %-->% C,
568+
#' class = "DAG"
569+
#' )
570+
#' neighbors(cg, "A") # "B"
571+
#' neighbors(cg, index = 2) # "A" "C"
572+
#' neighbors(cg, "B") # "A" "C"
573+
#' neighbors(cg, c("B", "C"))
574+
#' #> $B
575+
#' #> [1] "A" "C"
576+
#' #>
577+
#' #> $C
578+
#' #> [1] "B"
579+
#'
532580
#' @family queries
533581
#' @concept queries
534582
#'
@@ -583,6 +631,22 @@ neighbours <- neighbors
583631
#' @returns Either a character vector of node names (if a single node is
584632
#' requested) or a list of character vectors (if multiple nodes are requested).
585633
#'
634+
#' @examples
635+
#' cg <- caugi_graph(
636+
#' A %-->% B,
637+
#' B %-->% C,
638+
#' class = "DAG"
639+
#' )
640+
#' ancestors(cg, "A") # NULL
641+
#' ancestors(cg, index = 2) # "A"
642+
#' ancestors(cg, "B") # "A"
643+
#' ancestors(cg, c("B", "C"))
644+
#' #> $B
645+
#' #> [1] "A"
646+
#' #>
647+
#' #> $C
648+
#' #> [1] "A" "B"
649+
#'
586650
#' @family queries
587651
#' @concept queries
588652
#'
@@ -633,6 +697,22 @@ ancestors <- function(cg, nodes = NULL, index = NULL) {
633697
#' @returns Either a character vector of node names (if a single node is
634698
#' requested) or a list of character vectors (if multiple nodes are requested).
635699
#'
700+
#' @examples
701+
#' cg <- caugi_graph(
702+
#' A %-->% B,
703+
#' B %-->% C,
704+
#' class = "DAG"
705+
#' )
706+
#' descendants(cg, "A") # "B" "C"
707+
#' descendants(cg, index = 2) # "C"
708+
#' descendants(cg, "B") # "C"
709+
#' descendants(cg, c("B", "C"))
710+
#' #> $B
711+
#' #> [1] "C"
712+
#' #>
713+
#' #> $C
714+
#' #> NULL
715+
#'
636716
#' @family queries
637717
#' @concept queries
638718
#'
@@ -683,6 +763,22 @@ descendants <- function(cg, nodes = NULL, index = NULL) {
683763
#' @returns Either a character vector of node names (if a single node is
684764
#' requested) or a list of character vectors (if multiple nodes are requested).
685765
#'
766+
#' @examples
767+
#' cg <- caugi_graph(
768+
#' A %-->% B,
769+
#' B %-->% C,
770+
#' class = "DAG"
771+
#' )
772+
#' markov_blanket(cg, "A") # "B"
773+
#' markov_blanket(cg, index = 2) # "A" "C"
774+
#' markov_blanket(cg, "B") # "A" "C"
775+
#' markov_blanket(cg, c("B", "C"))
776+
#' #> $B
777+
#' #> [1] "A" "C"
778+
#' #>
779+
#' #> $C
780+
#' #> [1] "B"
781+
#'
686782
#' @family queries
687783
#' @concept queries
688784
#'
@@ -735,6 +831,14 @@ markov_blanket <- function(cg, nodes = NULL, index = NULL) {
735831
#' @returns Either a character vector of node names (if a single node is
736832
#' requested) or a list of character vectors (if multiple nodes are requested).
737833
#'
834+
#' @examples
835+
#' cg <- caugi_graph(
836+
#' A %-->% B,
837+
#' B %-->% C,
838+
#' class = "DAG"
839+
#' )
840+
#' exogenous(cg) # "A"
841+
#'
738842
#' @family queries
739843
#' @concept queries
740844
#'
@@ -760,6 +864,17 @@ exogenous <- function(cg, undirected_as_parents = FALSE) {
760864
#'
761865
#' @returns A new `caugi_graph` that is a subgraph of the selected nodes.
762866
#'
867+
#' @examples
868+
#' cg <- caugi_graph(
869+
#' A %-->% B,
870+
#' B %-->% C,
871+
#' class = "DAG"
872+
#' )
873+
#' sub_cg <- subgraph(cg, c("B", "C"))
874+
#' cg2 <- caugi_graph(B %-->% C, class = "DAG")
875+
#' all(nodes(sub_cg) == nodes(cg2)) # TRUE
876+
#' all(edges(sub_cg) == edges(cg2)) # TRUE
877+
#'
763878
#' @family queries
764879
#' @concept queries
765880
#'

man/ancestors.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/children.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/descendants.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/exogenous.Rd

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/markov_blanket.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/neighbors.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/parents.Rd

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

man/subgraph.Rd

Lines changed: 12 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)