Slides

A copy of the slides can be found here.

Exercises

Shared slides

Again, please share your results with us and the other participants along the way by adding them to the shared slideshow here. We will use this slideshow to discuss our findings together.

4. Using the FCI algorithm

We will now use the FCI algorithm on the data, thereby dropping the assumption of no unobserved confounding. This algorithm is much slower than PC, which is perhaps not so surprising, since its task is a lot more difficult. If you want to skip the computation time for exercises 4.1 and 4.2, you may load in the prerun models instead:

# Load model from 4.1:
load(url("https://biostatistics.dk/teaching/eurocim/data/fcires.rda"))

# Load model from 4.2:
load(url("https://biostatistics.dk/teaching/eurocim/data/tfcires.rda"))

4.1 Run the FCI algorithm

Use this code to run the FCI algorithm on nlsdata (takes several minutes!):

fcires <- fci(nlsdata, sparsity = 0.05)

Plot the PAG along with temporal information using the tplot() function:

tplot(tamat(amat(fcires), order = c("r1", "r6", "r12")))

Look at the result and consider the following questions:

  • Pick out some edges to focus on, and make sure you understand what they each mean. Do you find these edges to be plausible? Informative?
  • Identify a few pairs of variables that do not have an edge between them. How should this be interpreted? Consider again whether you find the missing adjacencies plausible.

5. Using the TFCI algorithm

We will now make use of a version of the FCI algorithm that utilizes the temporal information in our dataset.

5.1 Run the TFCI algorithm

Use this code to run the FCI algorithm on nlsdata (takes several minutes!):

tfcires <- tfci(nlsdata, sparsity = 0.05, order = c("r1", "r6", "r12"))

Now, plot the resulting TPAG:

tplot(tfcires)

Look at the result and consider the following questions:

  • Go through each edge and think about how it is interpreted. Consider also whether you find the edge to be plausible.
  • Compare the graph visually with the result from exercise 4.1. Which is more informative? Which do you find to be more plausible?

5.2 Compare with TPC

Compare the graph from 5.1 (TFCI) visually with the result from exercise 3.1 (the TPDAG obtained from using the TPC algorithm). Which of the two graphs do you find to be the most plausible? Do you think the assumption of no unobserved confounding was reasonable?

5.3 Compare with our expert latent DAG

Load in and plot our jointly made expert latent DAG using this code:

load(url("https://biostatistics.dk/teaching/eurocim/data/expert_ldag.rda"))
tplot(expert_ldag)

Compare the graph visually with the result from 5.1 (TFCI):

  • Can you identify some causal statements that the two graphs agree on (e.g., presence of unobserved confounding between a pair of variables)?
  • Can you identify some causal statements that the two graphs do not agree on (e.g., an ancestral causal relationship that one claims but the other does not propose)?
  • Which graph do you find to be the most plausible?

5.4 Conclude and update your latent DAG

Conclude on your results from 5.1-5.3:

  • What do you think about the TFCI result all in all? Is it plausible? Is it useful?

Now, consider whether you want to change any parts of our first attempt at an expert latent DAG for these data, based on what you found using TFCI.

  • Draw a new updated latent DAG. You can take a photo of it and share it in our joint slideshow.

5.5 Vary test, sparsity level, choice of variables or tiers

Go back to exercises 2.1, 2.3, 2.4, or 3.2, and rerun them using the TFCI algorithm.