R/get_parents.R

Defines functions get_parents

#' Get list of parents of all nodes in a model
#'
#' @inheritParams CausalQueries_internal_inherit_params
#' @return A \code{list} of parents in a DAG
#' @noRd
#' @keywords internal

get_parents <- function(model) {
  parents <- list()

  for (i in 1:nrow(model$parents_df)) {
    node <- model$parents_df$node[i]
    parent_nodes <- model$parents_df$parent_nodes[i]

    if (parent_nodes == "") {
      parents[[node]] <- character(0)  # Empty character vector for no parents
    } else {
      parents[[node]] <- strsplit(parent_nodes, ", ")[[1]]  # Split parent nodes by comma and space
    }
  }

  class(parents) <- "list"
  return(parents)

}

Try the CausalQueries package in your browser

Any scripts or data that you put into this service are public.

CausalQueries documentation built on April 3, 2025, 7:46 p.m.