Run a list of analyses
runSccsAnalyses(
connectionDetails,
cdmDatabaseSchema,
tempEmulationSchema = getOption("sqlRenderTempEmulationSchema"),
exposureDatabaseSchema = cdmDatabaseSchema,
exposureTable = "drug_era",
outcomeDatabaseSchema = cdmDatabaseSchema,
outcomeTable = "cohort",
customCovariateDatabaseSchema = cdmDatabaseSchema,
customCovariateTable = "cohort",
nestingCohortDatabaseSchema = cdmDatabaseSchema,
nestingCohortTable = "cohort",
cdmVersion = "5",
outputFolder = "./SccsOutput",
sccsAnalysisList,
exposuresOutcomeList,
analysesToExclude = NULL,
combineDataFetchAcrossOutcomes = FALSE,
sccsMultiThreadingSettings = createSccsMultiThreadingSettings(),
controlType = "outcome"
)
An R object of type ConnectionDetails
created using
the function DatabaseConnector::createConnectionDetails()
.
The name of the database schema that contains the OMOP CDM instance. Requires read permissions to this database. On SQL Server, this should specify both the database and the schema, so for example 'cdm_instance.dbo'.
Some database platforms like Oracle and Impala do not truly support temp tables. To emulate temp tables, provide a schema with write privileges where temp tables can be created.
The name of the database schema that is the location where
the exposure data used to define the exposure cohorts is
available. If exposureTable = "DRUG_ERA"
,
exposureDatabaseSchema
is not used but assumed to be
cdmDatabaseSchema
. Requires read permissions to this database.
The table name that contains the exposure cohorts. If
exposureTable <> "DRUG_ERA"
, then expectation is exposureTable
has format of COHORT table: cohort_concept_id, SUBJECT_ID,
COHORT_START_DATE, COHORT_END_DATE.
The name of the database schema that is the location where the data used to define the outcome cohorts is available. Requires read permissions to this database.
The table name that contains the outcome cohorts.
The name of the database schema that is the location where the custom covariate data is available.
Name of the table holding the custom covariates. This table should have the same structure as the cohort table.
The name of the database schema that is the location where the nesting cohort is defined.
Name of the table holding the nesting cohort. This table should have the same structure as the cohort table.
Define the OMOP CDM version used: currently supports "5".
Name of the folder where all the outputs will written to.
A list of objects of SccsAnalysis
as created
using the createSccsAnalysis()
function.
A list of objects of type ExposuresOutcome
as created
using the createExposuresOutcome()
function.
Analyses to exclude. See the Analyses to Exclude section for details.
Should fetching data from the database be done one outcome at a time, or for all outcomes in one fetch? Combining fetches will be more efficient if there is large overlap in the subjects that have the different outcomes.
An object of type SccsMultiThreadingSettings
as created using
the createSccsMultiThreadingSettings()
or
createDefaultSccsMultiThreadingSettings()
functions.
Type of negative (and positive) controls. Can be "outcome" or "exposure". When set to "outcome", controls with the same exposure (and nesting cohort) are grouped together for calibration. When set to "exposure", controls with the same outcome are grouped together.
A tibble describing for each exposure-outcome-analysisId combination where the intermediary and
outcome model files can be found, relative to the outputFolder
.
Run a list of analyses for the exposures-outcomes of interest. This function will run all
specified analyses against all hypotheses of interest, meaning that the total number of outcome
models is length(sccsAnalysisList) * length(exposuresOutcomeList)
When you provide several analyses
it will determine whether any of the analyses have anything in common, and will take advantage of
this fact.
Normally, runSccsAnalyses
will run all combinations of exposures-outcome-analyses settings.
However, sometimes we may not need all those combinations. Using the analysesToExclude
argument,
we can remove certain items from the full matrix. This argument should be a data frame with at least
one of the following columns:
exposureId
outcomeId
nestingCohortId
analysisId
This data frame will be joined to the outcome model reference table before executing, and matching rows will be removed. For example, if one specifies only one exposure ID and analysis ID, then any analyses with that exposure and that analysis ID will be skipped.