get_nodesplits function

Direct and indirect evidence

Direct and indirect evidence

Determine whether two treatments in a network are connected by direct and/or indirect evidence, and generate a list of comparisons with both direct and indirect evidence (i.e. potential inconsistency) for node-splitting.

get_nodesplits(network, include_consistency = FALSE) has_direct(network, trt1, trt2) has_indirect(network, trt1, trt2)

Arguments

  • network: An nma_data object, as created by the functions set_*() or combine_network().
  • include_consistency: Logical, whether to include a row of NAs to indicate that a consistency model (i.e. a model with no node-splitting) should also be fitted by the nma() function. Default is FALSE when calling get_nodesplits() by hand, and nma() sets this to TRUE by default.
  • trt1, trt2: Treatments, each as a single integer, string, or factor

Returns

For has_direct() and has_indirect(), a single logical value. For get_nodesplits(), a data frame with two columns giving the comparisons for node-splitting.

Details

The list of comparisons for node-splitting is generated following the algorithm of \insertCite Valkenhoef2016;textualmultinma. A comparison between two treatments has the potential for inconsistency, and is thus considered for node-splitting, if the comparison has both direct evidence and independent indirect evidence.

The notion of independent indirect evidence is necessary when multi-arm trials are present, since by design these trials are internally consistent. A comparison between two treatments has independent indirect evidence if, after removing all studies comparing the two treatments from the network, the two treatments are still connected by a path of evidence. This is the criterion considered by the has_indirect() function.

Examples

# Parkinsons example park_net <- set_agd_arm(parkinsons, study = studyn, trt = trtn, y = y, se = se, trt_ref = 1) # View the network plot plot(park_net) # The 4 vs. 5 comparison is a spur on the network has_direct(park_net, 4, 5) has_indirect(park_net, 4, 5) # 1 and 5 are not directly connected has_direct(park_net, 1, 5) has_indirect(park_net, 1, 5) # The 1 vs. 2 comparison does not have independent indirect evidence, since # the 1-2-4 loop is a multi-arm study has_indirect(park_net, 1, 2) # Get a list of comparisons with potential inconsistency for node-splitting get_nodesplits(park_net) # See van Valkenhoef (2016) for a discussion of this example

References

\insertAllCited