Skip to content

Commit b26c91e

Browse files
author
Katy Sadowski
committed
release prep
1 parent 54921ab commit b26c91e

File tree

88 files changed

+1206
-175
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

88 files changed

+1206
-175
lines changed

DESCRIPTION

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
Package: DataQualityDashboard
22
Type: Package
33
Title: Execute and View Data Quality Checks on OMOP CDM Database
4-
Version: 2.6.0
5-
Date: 2024-02-21
4+
Version: 2.6.1
5+
Date: 2024-07-12
66
Authors@R: c(
77
person("Katy", "Sadowski", email = "[email protected]", role = c("aut", "cre")),
88
person("Clair", "Blacketer", role = c("aut")),

NEWS.md

+32
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,35 @@
1+
DataQualityDashboard 2.6.1
2+
==========================
3+
This release includes:
4+
5+
### Bugfixes
6+
7+
- Checks
8+
- `plausibleStartBeforeEnd` was failing if SOURCE_RELEASE_DATE was before CDM_RELEASE_DATE in the CDM_SOURCE table. This is the opposite of the correct logic! The check is now updated to fail if the CDM_RELEASE_DATE is before the SOURCE_RELEASE_DATE
9+
- `plausibleTemporalAfter` was throwing a syntax error in BigQuery due to the format of a hardcoded date in the SQL query. This query has now been updated to be compliant with SqlRender and the issue has been resolved
10+
- A dependency issue was causing `viewDqDashboard` to error out in newer versions of R. This has now been resolved
11+
- `SqlOnly` mode was failing due to the format of the new check `plausibleGenderUseDescendants`, which takes multiple concepts as an input. This has now been fixed
12+
13+
### New Results Field
14+
15+
- A new field has been added to the DQD results output - `executionTimeSeconds`. This field stores the execution time in seconds of each check in numeric format. (The existing `executionTime` field stores execution time as a string, making it difficult to use in analysis.)
16+
17+
### Check Threshold Updates
18+
19+
The default thresholds for 2 checks were discovered to be inconsistently populated and occasionally set to illogical levels. These have now been fixed as detailed below.
20+
21+
- The default thresholds for `sourceValueCompleteness` have been updated as follows:
22+
- 10% for `_source_value` columns in condition_occurrence, measurement, procedure_occurrence, drug_exposure, and visit_occurrence tables
23+
- 100% for all other `_source_value` columns
24+
- The default thresholds for `sourceConceptRecordCompleteness` have been updated as follows:
25+
- 10% for `_source_concept_id` columns in condition_occurrence, drug_exposure, measurement, procedure_occurrence, device_exposure, and observation tables
26+
- 100% for all other `_source_concept_id` columns
27+
28+
### New Documentation
29+
We have continued (and nearly completed) our initiative to add more comprehensive user documentation at the data quality check level. A dedicated documentation page is being created for each check type. Each check's page includes detailed information about how its result is generated and what to do if it fails. Guidance is provided for both ETL developers and data users.
30+
31+
Check out the newly added pages [here](https://ohdsi.github.io/DataQualityDashboard/articles/checkIndex.html) and please reach out with feedback as we continue improving our documentation!
32+
133
DataQualityDashboard 2.6.0
234
==========================
335
This release includes:

R/calculateNotApplicableStatus.R

+8-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright 2023 Observational Health Data Sciences and Informatics
1+
# Copyright 2024 Observational Health Data Sciences and Informatics
22
#
33
# This file is part of DataQualityDashboard
44
#
@@ -151,8 +151,12 @@
151151
checkResults$notApplicable <- NA
152152
checkResults$notApplicableReason <- NA
153153

154-
conditionOccurrenceIsMissing <- missingTables %>% dplyr::filter(.data$cdmTableName == "CONDITION_OCCURRENCE") %>% dplyr::pull(tableIsMissing)
155-
conditionOccurrenceIsEmpty <- emptyTables %>% dplyr::filter(.data$cdmTableName == "CONDITION_OCCURRENCE") %>% dplyr::pull(tableIsEmpty)
154+
conditionOccurrenceIsMissing <- missingTables %>%
155+
dplyr::filter(.data$cdmTableName == "CONDITION_OCCURRENCE") %>%
156+
dplyr::pull(.data$tableIsMissing)
157+
conditionOccurrenceIsEmpty <- emptyTables %>%
158+
dplyr::filter(.data$cdmTableName == "CONDITION_OCCURRENCE") %>%
159+
dplyr::pull(.data$tableIsEmpty)
156160
for (i in seq_len(nrow(checkResults))) {
157161
# Special rule for measureConditionEraCompleteness, which should be notApplicable if CONDITION_OCCURRENCE is empty
158162
if (checkResults[i, "checkName"] == "measureConditionEraCompleteness") {
@@ -178,7 +182,7 @@
178182
.data$tableIsEmpty ~ sprintf("Table %s is empty.", .data$cdmTableName),
179183
.data$fieldIsEmpty ~ sprintf("Field %s.%s is not populated.", .data$cdmTableName, .data$cdmFieldName),
180184
.data$conceptIsMissing ~ sprintf("%s=%s is missing from the %s table.", .data$cdmFieldName, .data$conceptId, .data$cdmTableName),
181-
.data$conceptAndUnitAreMissing ~ sprintf("Combination of %s=%s, unitConceptId=%s and VALUE_AS_NUMBER IS NOT NULL is missing from the %s table.", .data$cdmFieldName, .data$conceptId, .data$unitConceptId, .data$cdmTableName) #nolint
185+
.data$conceptAndUnitAreMissing ~ sprintf("Combination of %s=%s, unitConceptId=%s and VALUE_AS_NUMBER IS NOT NULL is missing from the %s table.", .data$cdmFieldName, .data$conceptId, .data$unitConceptId, .data$cdmTableName) # nolint
182186
),
183187
NA
184188
),

R/executeDqChecks.R

+1-1
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,7 @@ executeDqChecks <- function(connectionDetails,
327327
startTimestamp = startTime,
328328
endTimestamp = endTime,
329329
executionTime = sprintf("%.0f %s", delta, attr(delta, "units")),
330-
#new variable executionTimeSeconds added to store execution time in seconds
330+
# new variable executionTimeSeconds added to store execution time in seconds
331331
executionTimeSeconds = as.numeric(delta),
332332
CheckResults = checkResults,
333333
Metadata = metadata,

R/sqlOnly.R

+2-2
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@
232232
)
233233
} else if (checkLevel == "CONCEPT") {
234234
if (is.na(unitConceptId) &&
235-
grepl(",", conceptId)) {
235+
grepl(",", conceptId)) {
236236
thresholdFilter <- sprintf(
237237
"conceptChecks$%s[conceptChecks$cdmTableName == '%s' &
238238
conceptChecks$cdmFieldName == '%s' &
@@ -243,7 +243,7 @@
243243
conceptId
244244
)
245245
} else if (is.na(unitConceptId) &&
246-
!grepl(",", conceptId)) {
246+
!grepl(",", conceptId)) {
247247
thresholdFilter <- sprintf(
248248
"conceptChecks$%s[conceptChecks$cdmTableName == '%s' &
249249
conceptChecks$cdmFieldName == '%s' &

docs/404.html

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/LICENSE-text.html

+2-2
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/AddNewCheck.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/CheckStatusDefinitions.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/CheckTypeDescriptions.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/DataQualityDashboard.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/DqdForCohorts.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/SqlOnly.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/articles/Thresholds.html

+6-3
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)