Step 5: Visualise temporal symmetry"

knitr::opts_chunk$set(
  warning = FALSE,
  message = FALSE,
  collapse = TRUE,
  comment = "#>",
  fig.width = 7,
  fig.height = 5,
  eval = Sys.getenv("$RUNNER_OS") != "macOS"
)
if (Sys.getenv("EUNOMIA_DATA_FOLDER") == "") Sys.setenv("EUNOMIA_DATA_FOLDER" = tempdir())
if (!dir.exists(Sys.getenv("EUNOMIA_DATA_FOLDER"))) dir.create(Sys.getenv("EUNOMIA_DATA_FOLDER"))
if (!CDMConnector::eunomiaIsAvailable()) 
  CDMConnector::downloadEunomiaData()

Introduction

In this vignette we will explore the functionality and arguments of a set of functions that will help us to understand and visualise the temporal symmetry results (produced Step 4: Obtain aggregated data on temporal symmetry). In particular, we will delve into the following function:

This function builds-up on previous functions, such as generateSequenceCohortSet() and summariseTemporalSymmetry() function.

# Load libraries
library(CDMConnector)
library(dplyr)
library(DBI)
library(CohortSymmetry)
library(duckdb)
library(DrugUtilisation)

# Connect to the database
db <- DBI::dbConnect(duckdb::duckdb(), 
                     dbdir = CDMConnector::eunomiaDir())
cdm <- cdmFromCon(
  con = db,
  cdmSchema = "main",
  writeSchema = "main"
)

# Generate cohorts
cdm <- DrugUtilisation::generateIngredientCohortSet(
  cdm = cdm,
  name = "aspirin",
  ingredient = "aspirin")

cdm <- DrugUtilisation::generateIngredientCohortSet(
  cdm = cdm,
  name = "acetaminophen",
  ingredient = "acetaminophen")

# Generate a sequence cohort
cdm <- generateSequenceCohortSet(
  cdm = cdm,
  indexTable = "aspirin",
  markerTable = "acetaminophen",
  name = "intersect",
  combinationWindow = c(0,Inf))

Let's regather the output from summariseTemporalSymmetry()

temporal_symmetry <- summariseTemporalSymmetry(cohort = cdm$intersect)

With this established, much like summariseSequenceRatios(), the object temporal_symmetry could then be fed into tableTemporalSymmetry() or plotTemporalSymmetry() to visualise the results:

tableTemporalSymmetry(result = temporal_symmetry)
plotTemporalSymmetry(result = temporal_symmetry)

Note that the $x$ axis is the time, which we recall to be the initiation of the marker minus the initiation of the index. The unit of the time difference here is month as this is the default from summarisTemporalSymmetry().

CDMConnector::cdmDisconnect(cdm = cdm)

That would be the end of the vignette, have fun with the package!



Try the CohortSymmetry package in your browser

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

CohortSymmetry documentation built on April 3, 2025, 5:26 p.m.