Skip to contents

Computes F1 score from two caugi::caugi objects. It converts the caugi::caugi objects to adjacency matrices and computes F1 score as \(2 \cdot TP/(2 \cdot TP + FP + FN)\), where TP are truth positives, FP are false positives, and FN are false negatives. If TP + FP + FN = 0, 1 is returned. Only supports caugi::caugi objects with these edge types present -->, <-->, --- and no edge.

Usage

f1_score(truth, est, type = c("adj", "dir"))

Arguments

truth

A caugi::caugi object representing the truth graph.

est

A caugi::caugi object representing the estimated graph.

type

Character string specifying the comparison type:

  • "adj": adjacency comparison.

  • "dir": orientation comparison conditional on shared adjacencies.

Value

A numeric in [0,1].

Examples

cg1 <- caugi::caugi(A %-->% B + C)
cg2 <- caugi::caugi(B %-->% A + C)
f1_score(cg1, cg2, type = "adj")
#> [1] 0.5
f1_score(cg1, cg2, type = "dir")
#> [1] 0