跳转至
For the complete DHIS2 documentation index, see llms.txt.

评估数据质量{ #assessing-data-quality }

DHIS2 有多种评估数据质量的功能,可用于不同的应用项目和功能,本节概述了这些功能。本节按照三类数据质量指标进行阐述:

  • 数据的完整性和及时性
  • 相关变量数据的一致性
  • 数据的长期一致性

完整性和及时性{ #completeness-and-timeliness }

报告的******完整性****说明了有多少预期数据已实际报告。在 DHIS2 中,大部分完整性检查都是基于对_数据集_完整性的评估,即有多少数据集(表 格)已按组织单位和时期提交。及时性的计算基于系统设置,即 "期末后符合及时提交数据条件的天数"。

DHIS2 系统内置的完整性和及时性功能,如数据展示台、报告和地图应用项目中内置的功能,指的是*数据集报告率*。不过,我们也可以对 DHIS2 进行配置,以评估_持续报告_的设施比例,以及*单个数据元素*的完整性。

数据集的完整性和及时性{ #data-set-completeness-and-timeliness }

完整性报告还将显示某一地区哪些组织单位按时提交报告,以及某一地区按时提交报告的设施所占的百分比。

数据集的完整性和及时性可在报告应用项目以及核心可视化应用项目(数据可视化器和地图)中进行审查。核心可视化应用项目允许您在多个组织单位和时期内更详细地审查完整性和及时性;但是,与 DHIS2 中的其他应用项目相比,报告应用项目具有简化的用户体验,这一点已通过其广泛使用得到验证。

使用报告应用项目{ #using-the-reports-app }

要在报告应用项目中审查完整性和及时性,请导航至应用项目 -> 报告

从这里,选择报告率汇总标题下的 "获取报告

首先选择输入内容:

  1. 您想查看哪些组织单位。选择父组织单位,该父组织单位中的所有子组织单位都将被选中(以及所选组织单位的总体结果)。

  2. 选择要审查完整性和及时性信息的数据集。

  3. 选择报告期,然后选择报告期本身/

如果选择 "显示更多选项",则可以使用组织单位组设置来选择组织单位组,以进一步筛选报告;但这是可选的。

选择所有输入后,选择 "获取报告 "即可生成报告。

这将生成一份报告,其中包括以下栏目

  1. 名称:组织单位名称

  2. [数据集名称] - 实际报告:这是您所选期间内标记为完成的报告数量

  3. [数据集名称] - 预期报告:这是您所选期间内的预期报告数量。这是根据时间维度和数据集对组织单位的分配自动计算得出的。

  4. [数据集名称] - 报告率:这是报告率:实际报告/预期报告 x 100%

  5. [数据集名称] - 按时提交的实际报告:这是在所选数据集定义为 "准时 "的时间范围内**被标记为完成的报告数量**

  6. [数据集名称] - 按时报告率:该比率 = 按时报告的实际报告数/预期报告数 x 100%

使用数据展示台{ #using-data-visualizer }

在数据可视化器中,您可以查看与报告应用项目类似的数据集完整性和及时性度量;不过,您现在可以同时自由选择多个数据集、时段和组织单位。您还可以在包含其他数据(如医疗服务提供数据)的图表和表格中添加完整性和及时性衡量标准,以验证您正在审查的数据是否能代表您所在国家的情况。与报告应用项目相比,这为您提供了更大的灵活性;然而,与报告应用项目相比,额外的选项可能会使它的可访问性降低。理想情况下,这些可视化数据都是预先制作好的,并放置在仪表板上供用户例行查看;不过,对于一部分用户来说,了解如何使用数据可视化器中的这些指标来创建输出是非常有用的。

在数据可视化器中,选择 "数据 "输入,并将 "数据集 "作为数据类型。这样,您就可以搜索或添加筛选器,选择要添加到可视化中的数据集和度量类型。

以下是卡介苗接种剂量与免疫接种数据集报告率的比较图表示例

我们可以很快注意到,有几个地区的报告率为< 80%,因此显示的数据可能不能完全代表该国的情况。通过对影响该值的设施进行更详细的分析和/或利用数据元素的完整性来验证这一点可能很重要。

我们可以举例说明在数据可视化应用项目中审查完整性和及时性时可能创建的表格和图表。

例 1:比较多个数据集、时期和组织单位完整性和及时性的透视表{ #example-1-pivot-table-comparing-completeness-and-timeliness-over-several-datasets-periods-and-organisation-units }

选择透视表作为输出类型

  • 选择数据并将数据类型修改为数据集
  • 选择要添加到表格中的指标

隐藏或更新数据选择器,然后修改时段和组织单位

完成所有选择后,修改布局并更新表格

现在您应该可以看到选择了输入的表格了。

例 2:比较几个时期完整性和及时性的折线图{ #example-2-line-chart-comparing-completeness-and-timeliness-over-several-periods }

选择行作为输出类型

  • 选择数据并将数据类型修改为数据集
  • 选择要添加到图表中的指标。这里只选择了一个,但您可以根据需要使用任意多个。

  • 隐藏或更新数据选择器,然后修改时段和组织单位。

  • 修改图表布局,并在准备就绪时进行更新

例 3:比较服务数据与数据集完整性的双轴图{ #example-3-a-2-axes-chart-comparing-service-data-with-dataset-completeness }

选择列作为输出类型

  • 选择数据并将数据类型修改为数据集。选择要添加到图表中的指标

  • 更改数据类型。本例中使用的是数据元素,但您可以将完整性和及时性指标与数据可视化器中任何现有的 DHIS2 数据类型相结合

  • 隐藏或更新数据选择器,然后修改时段和组织单位。

  • 修改图表布局,并在准备就绪时进行更新

  • 要将其中一个项目移到第 2 个坐标轴上,请选择选项,然后选择系列。使用正确的可视化类型修改数据项,使其显示在所需的坐标轴上,然后更新图表

  • 然后,可使用可视化应用项目中的选项按钮在图表中添加其他选项,如图表项目排序和添加图表标题等。

配置数据集完整性{ #configuring-data-set-completeness }

数据集完整性基于数据集的组织单位分配。这将根据数据集的周期确定预期报告的值。这在维护应用项目中进行配置

导航至维护 -> 数据集 -> 并选择或创建目标数据集。在该数据集中滚动到最底部,找到组织单位分配

您可以通过单独选择或使用级别或组将数据集分配给组织单位。

这里需要考虑的重要因素是确保数据集**IS NOT**分配给任何预计不会报告数据集的组织单位。这是因为预期报告的数量会一直不正确。例如,在上面的截图中,该数据集被分配给 185 个组织单位。假设该数据集每月报告一次。每个月预计会有 185 份报告。如果只有 160 个组织单位报告此数据集,那么在任何给定月份,您的完成度都不会超过 160/185 x 100% = 86%。这是因为额外的 25 个组织单位永远不会填写数据集,因为它们本来就不应该填写。这是将数据集正确分配给组织单位时需要考虑的关键因素。

配置数据集及时性{ #configuring-data-set-timeliness }

在创建或编辑数据集时,还可在维护应用项目中使用 "符合及时提交条件的期限后的天数 "字段对及时性进行配置。

在上述示例中,数据集按月收集,及时性设置为 15。这意味着 这意味着数据集必须在上个月结束后 15 天内完成,才算及时提交。

数据元素完整性{ #data-element-completeness }

数据集的完整性和及时性是监测系统整体报告性能的有用措施。不过,数据集的完整性需要满足几个条件,才能有代表性地说明数据集内数据的完整性:

  • 输入数据后,用户必须记住将数据集标记为 "完成"。

  • 用户必须在表格中实际输入数据,然后才能标记为完成

  • 将数据集分配给组织单位(设施)必须正确无误

通常情况下,这些条件中的一个或多个都不符合,这意味着有必要对报告的完整性进行额外的分析。在本节中,我们将展示

  • 如何分析在一段时间内_持续报告_数据元素值的设施比例,以及

  • 如何分析单个数据元素的完整性

上述方法的共同点是,它们要求我们为想要评估的每个变量配置额外的元数据。在实践中,这意味着只能对有限的数据元素集实施这些方法。实施部分将对此进行进一步讨论。

持续报告{ #orgunits-consistently-reporting }

与数据集的完整性相比,评估在一段时间内_持续报告_的医疗机构比例是一个完整性指标,它为我们了解数据的完整性增加了另一个维度。如果有一部分医疗机构只是间歇性地报告,那么了解在某个时间段(如一年)内_持续报告_的医疗机构的比例是非常有用的。例如,如果某月药房提交报告,而某地区医院没有提交报告,而下个月情况正好相反,那么完整度数字将保持不变,但该地区内的服务提供数据可能大不相同。

我们将持续报告的设施定义为100 X(在某一时期内每一阶段都提交报告的设施)/(在某一时期内任何阶段都提交报告的设施)

原则上,这种检查既可以根据整个数据集的报告情况进行,也可以根据数据集中的某个数据元素进行。在本文提供的示例中,我们展示了如何进行后一种检查,因为在数据集层面的评估可以通过查看单个设施的年度数据集报告率来实现。

配置报告一致性{ #configuring-reporting-consistency }

我们将展示如何针对一个特定的数据元素,制定一个_持续报告的组织单位(机构)百分比_的指标。由于无法直接将其作为指标进行计算,因此我们将使用预测因子。

这意味着我们将进行配置:

数据元素:

  • 在该时间段内所有时段提交报告的设施
  • 在该时间段内的任何时期提交报告的设施

预测因素

  • 在该时间段内所有时段提交报告的设施
  • 在该时间段内的任何时期提交报告的设施

指标:

  • 在时间段内持续报告数据元素的机构(%),例如 "ANC 1 - 在过去 12 个月内持续报告的机构(%)"。

此外,应制作可视化图表并与用户共享,我们建议按组组织元数据,也可按数据元素组织数据集。至于这些组是应归入专门的数据质量组,还是每个健康计划现有组的一部分(或两者兼而有之),这取决于特定实施中的配置标准和 SoP;为清楚起见,可在演示实例中查看此配置的示例,其中使用了专门的组。

下面,我们将以产前检查 1(即首次接受产前检查的孕妇)为例。

创建数据元素{ #creating-data-elements }

需要用数据元素来保存两个预测器为该指标进行实际计算时产生的汇总数据值。数据元素应根据本地命名规则命名,属于汇总域,(大多数情况下)值类型为正整数或零整数。

对于 ANC 1,我们可以创建这两个数据元素:

  • DQ - 过去 12 个月中报告的 ANC 1 机构
  • DQ - 在过去 12 个月中的任何一个月报告的 ANC 1 机构

创建预测器{ #creating-predictors }

接下来,我们必须设置两个预测器来计算两个数据元素的数据值。有关预测器的文档 此处

  1. 为预测器提供名称(必填)、简称、代码和说明

  1. 指定输出数据元素;这应参考我们在上一步中创建的数据元素

  1. 指定预测因子的周期类型;这应与我们要评估的数据元素的周期类型相匹配。在本例中,我们评估的是 ANC 1,假定该数据每月收集一次。

  2. 指定组织单位级别。对于该数据质量指标,这应该是收集数据的级别,通常是设施级别。 \ 我们还需要在 "提供数据的组织单位 "中进行选择,应为 "仅在所选级别",因为我们仅根据所选的数据收集级别来计算报告的一致性。

  3. 接下来,我们必须指定生成器。我们在这里定义计算报告一致性的实际表达式。

    1. 要计算 "过去 12 个月中_all_报告的组织单位数量 "的预测因子,我们使用公式 "if( sum( if(isNotNull( [数据元素]), 1, 0)) == 12, 1, 0)"
      1. if(isNotNull([数据元素]), 1, 0),如果存在值,则生成 1,否则生成 0
      2. sum( if(isNotNull([data element]), 1, 0)** )** 将 if(isNotNull()) 语句返回 1 的周期数相加。因此,每报告一个值,就增加 1。
      3. if(sum(if(isNotNull([数据元素]), 1, 0))** == 12, 1, 0) **检查 sum() 加起来的周期数是否等于我们要评估的周期数。如果我们评估的是一个为期 1 年的月度数据集,那么我们将其与 12 相比较。如果数值与 12 相匹配,预测器就会产生 1,这表明该组织单位在之前的 12 个月中都提交了报告。

    2.To calculate the predictor for “number of orgunits reported in _any _of the last 12 Months”, we use the formula “if(isNotNull([data element]),1,0)” 4.如果**if**(isNotNull([数据元素]**),1,0)**在任何一个时期都存在数值,则产生 1,否则产生 0。1 表示该组织单位在过去 12 个月中_至少_个月_有报告。

  4. 最后,我们需要指定样本数和跳过数。不应设置样本跳过测试。连续样本计数应设置为我们希望计算报告一致性的期间数。对于要评估一年的月度数据,我们应将连续样本计数设为 12。这意味着我们将检查生成预测因子的期间之前的 12 个月。 \ 年度样本数和连续样本数均应为 0。

创建指标{ #creating-the-indicator }

在定义了两个数据元素和两个预测因子后,我们就可以定义产生我们感兴趣的实际数据质量指标的指标:去年持续报告特定数据元素的机构的百分比。

  1. 指标名称、简称、代码和说明应根据当地的命名和编码惯例来指定。

  1. 指标不应***年化,指标类型应为百分比(系数 = 100)

  2. 分子表达式应为在过去 12 个月中均有报告的设施(假设数据为月度数据)。

  3. 分母表述应为在过去 12 个月中任何一个月内报告过的设施(假定数据为月度数据)

在生成预测因子和运行汇总分析([见下文](#scheduling))后,指标可在数据可视化器和地图应用项目中使用。

计算数据元素完整性{ #calculating-data-element-completeness }

在一些 DHIS2 系统实施过程中,发现数据集中所有数据元素的报告率不一致。DHIS2 默认只评估数据集的报告率,而不评估该数据集中各个数据元素的报告率。数据元素报告率的目的是评估单个值的报告一致性。这仅适用于总体数据元素。

报告率为:100 x(接收值数/预期值数)

要计算一个数据元素的报告率,我们必须定义一个指标,其中包含分子(收到的数值数)和分母(预期数值数),系数为 100(百分比指标类型)。虽然分子始终是数据值的计数,但定义分母有多种选择,必须根据当地情况决定哪种选择合适。

在 DHIS2 中如何配置数据元素的完整性也取决于 DHIS2 的版本:定义分子和分母的某些方法要求将预测器作为计算的中间步骤,特别是在 2.37 及以下版本中。请注意,预测器需要安排在服务器上运行,请参阅最后一节以了解相关说明。

配置分子 - 收到的数值{ #configuring-the-numerator-values-received }

我们首先回顾一下如何定义数据元素完整性指标的计数器。如上所述,这将始终是某个数据元素已报告的数据值的计数。不过,有几件事必须考虑。

零值存储

出于多种原因,除非有明确的理由(例如,"汇总类型 "属于与零相关的类型,如平均值),否则一般建议不存储数据元素报告的零值。这在审核数据元素完整性时会产生影响,因为对于未输入和存储零值的数据元素,我们无法区分有 0 值报告的机构和未报告的机构。一种方法是在需要定义数据元素完整性指标的特定数据元素中启用零值存储。但是,这在实际操作中很难实现,因为数据录入用户必须知道哪些特定的数据输入字段需要 0。一个更实际的选择是,将数据元素完整性的配置重点放在预计所有或几乎所有机构都要报告值 > 0 的数据元素上,并在指标描述和可视化中明确指出,不一定要达到 100% 的数据元素完整性。

分类

如何考虑可能应用于数据元素的任何分类至关重要,因为这会影响到如何配置指标表达式,以及是否需要使用预测因子。例如,如果卡介苗(BCG)等儿童疫苗接种的数据元素按< 1 岁和 1 岁以上进行分类,那么数据元素的完整性是否应基于:

  • 一个特定类别选项组合。例如,"已报告 "表示已报告 "卡介苗剂量< 1 年"。

  • 两个类别选项组合。例如,"已报告 "表示已报告 "卡介苗剂量< 1 年 "或 "卡介苗剂量< 1 年"。

  • 类别选项组合中的任一选项。例如,"已报告 "指已报告 "卡介苗剂量< 1 年 "或 "卡介苗剂量< 1 年"。

这取决于具体的数据元素和分类。就儿童接种疫苗而言,接种疫苗的目标年龄组是< 1 岁,1 岁以上年龄组没有数据报告的情况可能很常见。因此,专门定义< 1 岁的完整性是合理的。另一方面,如果将 "疟疾确诊病例 "分为< 5 岁和 5 岁以上两个年龄组,预计每个年龄组的设施都会有一个值,因此将这两个值都视为预期值是合理的;在这种情况下,必须对分母进行相应的调整。

在使用[属性选项组合](#about-additional-data-dimensions)对数据集进行分类时,也要考虑同样的因素,不过这种情况并不常见。

下表概述了配置分子的备选方法,其中考虑到了数据元素是否已分类、在适用情况下 如何评估分类的完整性,以及是否可直接在指标中配置或首先使用预测因子。

2.38 及以上 2.37 及以下
无分类的数据元素 指标(带子表达式) 预测变量
分类数据要素--分析一个类别选项组合 指标(带子表达式) 预测变量
有分类的数据元素--将每个类别选项组合的值都算作 "已报告"。 指标(带 subExpression);用类别选项组合数乘以分母 预测变量
有分类的数据元素 - 所有类别选项组合必须有值,数据元素才能 "报告"。 预测变量 预测变量
有分类的数据元素--如果任何类别选项组合有一个值,则该数据元素被视为 "已报告"。 预测变量 预测变量

我们首先解释如何配置直接使用指标的选项,然后展示使用预测器的配置、

带有指示符和子表达式的分母配置{ #numerator-configuration-with-indicator-and-subexpressions }

如上所述,分子应是数据元素的数值计数(无论是否分解)。从 2.38 版开始,可以直接在汇总指标中使用带 isNotNull 条件语句的子表达式来实现。只要该数据元素输入了数字(包括零),就会返回 1 值。下面是一个示例。

  • if(isNotNull([数据元素 ID]**), 1, 0) **将为该数据元素的每个值返回 1,否则返回 0。

    • 如果数据元素没有分类,它将根据是否已报告数据返回 1 或 0。

    • 如果 isNotNull() 中指定的 id 包含特定类别选项组合(例如 isNotNull(#{TWWbtMMWD51.JKuWbG5bWAu})),则将根据是否已报告该特定数据元素 + 类别选项组合的数据,返回 1 或 0。

    • 如果数据元素是分类的,但未指定类别选项组合,则对于每个类别选项组合的数据值,它将返回 1。因此,如果一个数据元素有< 1 年、1 年以上的分类,而某个机构同时报告了这两种分类的值,表达式将返回 2。在这种情况下,分母必须进行相应调整。

  • 子表达式 if(isNotNull([data element id])** )**确保 if(isNotNull())语句在数据收集层面执行,然后表达式才会随时间和组织单位层次向上汇总。

总之,分子的表达式应该是

方法 带有示例数据元素的表达式
无分类的数据元素 指示符 subExpression( if( isNotNull(#{TWWbtMMWD51}), 1, 0))
分类数据要素--分析一个类别选项组合 指示符 subExpression( if( isNotNull(#{TWWbtMMWD51.JKuWbG5bWAu}), 1, 0))
有分类的数据元素--将每个类别选项组合的值都算作 "已报告"。 指标;分母必须调整 subExpression( if( isNotNull(#{TWWbtMMWD51}), 1, 0))

分母配置 - 带预测器{ #numerator-configuration-with-predictor }

2.37 及以下版本不支持指标中的 subExpressions。为此,您必须在生成器中使用 isNotNull() 条件语句制作预测器。

如上文所述,数据元素是否分类以及如何从完整性角度考虑分类,决定了生成器表达式的 具体定义方式。下表列出了每种备选方法和相应的生成器表达式:

带有样本数据元素的生成器表达式
无分类的数据元素 if( isNotNull(#{OWk2WulfJYQ}), 1, 0)
分类数据要素--分析一个类别选项组合 if( isNotNull(#{TWWbtMMWD51.JKuWbG5bWAu}), 1, 0)
有分类的数据元素--将每个类别选项组合的值都算作 "已报告"。 if( isNotNull(#{TWWbtMMWD51.JKuWbG5bWAu}), 1, 0) + if( isNotNull(#{TWWbtMMWD51.UIQxmxgioxH}), 1, 0)
有分类的数据元素 - 所有类别选项组合必须有值,数据元素才能 "报告"。 if( isNotNull(#{TWWbtMMWD51.JKuWbG5bWAu}) && isNotNull(#{TWWbtMMWD51.UIQxmxgioxH}), 1, 0)
有分类的数据元素--如果任何类别选项组合有一个值,则该数据元素被视为 "已报告"。 if( isNotNull(#{OWk2WulfJYQ}), 1, 0)

当您决定了合适的方法后,请按照以下步骤制作预测器:

  1. 制作输出数据元素。

  2. 将输出数据元素分配给预测器。

  3. 设置周期类型(通常为月度)。

  4. 为分析指定组织单位级别(通常是设施级别)。

  5. 对信号发生器进行如下配置

  6. 将连续采样次数设为 0

  7. 将年度样本数设为 0

  8. 顺序跳数留空

  9. 使用上述表达式之一定义生成器。

  1. 创建一个预测组,并将该预测因子添加到该组中。

配置分母--预期值{ #configuring-the-denominator-expected-values }

虽然数据元素完整性指标的分子始终是收到的数据值计数(在分类管理方式上有一些变化),但有几种方法可以定义 "预期收到的报告 "分母。这些方法包括

  1. 数据元素所属的数据集被分配给的组织单位数

  2. 数据元素所属数据集已被标记为已完成(报告)的单位数

  3. 属于同一数据集的另一数据元素的报告值计数

  4. 曾就数据元素本身进行过报告的组织单位数

这些选项中哪一个合适取决于多个背景因素,例如数据集分配的正确性和更新程度,以及目的是查看数据元素的整体完整性(我采集了多少真实数字)还是数据集内部的完整性(机构员工和数据录入员填写报告表的完整性如何)。下文概述了每个选项,并提供了 2.38 及以上和 2.37 及以下版本的配置说明。

选项 1--数据元素所属数据集被分配给的组织单位数{ #option-1-count-of-orgunits-to-which-the-data-sets-the-data-element-is-part-of-is-assigned }

第一个选项是使用数据元素所属数据集的分配作为计算完整性的基础。这种测量方法与数据集完整性(报告率)如上所述 的工作方式非常相似。该选项的配置相对简单,因为数据集的 "预期报告 "可直接用于指标表达式。使用数据集预期报告作为数据元素完整性分母的主要局限性在于,它假定数据集分配是正确的,并保持更新。

要将其用作分母,只需在配置指标分母时选择可用的 expected reports 变量即可:

分母表达式为 R{[数据集 id].EXPECTED_REPORTS},例如 R{tQc4Gv2Jwco.EXPECTED_REPORTS} 。

在多个数据集报告同一数据元素时需要特别注意。如果数据集不是在同一组织单位中使用,则将每个数据集的预期报告相加即可得出正确的分母。但是,如果同一组织单位有可能分配到两个包含该数据元素的数据集,则此选项无法提供可靠的分母。

选择 2--已收到数据集的单位数{ #option-2-count-of-orgunits-for-which-the-data-sets-has-been-received }

方案 2 与方案 1 类似,但不是使用预期报告,而是使用实际报告作为分母。选择实际报告将提供一个指标,评估提交报告的组织单位中数据元素的完整性,即衡量特定数据元素在提交的数据集中的填写频率。

同样,在多个数据集报告同一数据元素时需要特别注意。如果数据集不是在同一组织单位中使用,则将每个数据集的预期报告相加即可得出正确的分母。但是,如果同一组织单位有可能分配到两个包含该数据元素的数据集,则此选项无法提供可靠的分母。

选项 3--另一个数据元素的报告值计数{ #option-3-count-of-reported-values-of-another-data-element }

该选项基于在完整性计算中使用另一个数据元素的报告值数量作为预期值。其他数据元素可以根据不同的标准进行选择,详情如下。请注意,在根据其他数据元素查看数据元素完整性时,应将结果与整体数据集完整性一并分析。

Based on data element in the same data set

此方法与上述方法类似,但使用的数据元素与您要计算报告率(分子)的数据元素在同一数据集或数据集部分中报告 - 不一定有逻辑关联。采用这种方法时,应选择数据集中始终(或经常)报告的数据元素。例如,在包含孕产妇健康数据的数据集中,报告 "产前检查初诊 "数据要素的医疗机构可能多于报告 "助产 "数据要素的医疗机构,因此 "产前检查初诊 "将是对预期报告数量的更好估算。

基于核心指标_

如果您要获取报告率的数据元素用于关键绩效指标计算,而分母中包含定期报告的数据,则建议使用分母报告值的计数来计算完整性。如果数据元素不用于指标计算,或者分母基于人口估计值或其他值,而这些值的报告周期与分子的报告周期不同,则此选项不可行。

例如,考虑疟疾检测的疑似病例(%)这一指标:

100 x(疟疾检测病例/疑似病例)

在这种情况下,以疑似病例数为分母来考察疟疾病例检测的完整性可能会有所帮助。

这种方法的优点是可以很好地显示用于计算特定核心指标的数据的完整性/一致性。

基于相关数据元素_

此方法与上述方法类似,但使用与分子中的数据元素密切相关的数据元素来计算分母。例如,如果您要查看 5 岁以下住院疟疾病例的报告率(分子),那么您可以考虑使用 5 岁及以上住院疟疾病例数、住院疟疾死亡数、门诊疟疾病例数或类似数据作为分母。

配置

如果使用相关数据元素作为分母,请参阅 "如何配置分子[LINK]"部分。注意事项和配置步骤完全相同。

选项 4 - 以前报告过数据元素本身的组织单位计数{ #option-4-count-of-orgunits-that-have-previously-reported-on-the-data-element-itself }

最后一个选项是使用在给定时间范围内曾经报告过该数据元素的机构数量作为分母。这与"持续报告的机构"指标所使用的分母类似。这可以很好地估算出预期报告的数量,尤其是在数据集分配不准确的情况下:如果某个机构以前报告过某个特定的数据元素,则通常意味着该机构正在提供该数据元素所代表的服务/诊断,因此可以预期该机构应该对其进行常规报告。但是,分析结果时仍应结合整体数据集的完整性,因为它不包括_应该_报告但在给定时间段内没有报告的机构。

要计算一个组织单位在过去 12 个月中报告您正在评估的数据元素的次数,我们必须使用一个预测因子和额外的数据元素。这与上文[持续报告的组织单位](#orgunits-consistently-reporting)部分所述的分母计算方法相同。总之,带有生成器的预测因子

if(isNotNull([data element]**), 1, 0) **

并将连续抽样计数设置为您要评估的前一期的数量,这样就能得出用作分母的计数。

对多个数据元素完整性的临时分析{ #ad-hoc-analysis-of-completeness-for-multiple-data-elements }

上述计算数据元素完整性的方法在如何准确定义分子和分母方面提供了多种选择,并允许我们生成可用于仪表板上的图表、地图和表格的指标。不过,由于它们要求我们为每一个要评估的变量添加至少一个新的元数据对象,因此它们最适合为关键数据元素的子集进行配置。

为了更好地了解数据集中大量数据元素的完整性,我们可以通过以下步骤在数据可视化应用项目中以透视表或图表的形式相对轻松地生成数据元素完整性:

  1. 打开数据可视化器,选择透视表作为图表类型
  2. 作为数据维度,选择
    1. 特定数据集的预期或实际报告
    2. 同一数据集中的所有或部分数据元素,使用 "仅详细信息 "选项进行分解
  3. 修改布局,将 "期间 "作为列(例如过去 12 个月),将 "数据 "作为行

  1. 打开选项菜单并
  2. 启用行总数
  3. 在 "高级 "部分,将聚合类型更改为 "计数"。

  4. 更新可视化,并可选择将总计列从高到低排序(注意:"预期报告 "的总计将显示为空,但仍位于顶部)

现在生成的表格在最上面一行显示数据元素完整性的 "分母",即基于数据集的预期报告(也可使用实际报告)。其他行显示的是每个数据元素的数据元素完整性 "分子"(带分类)。通过该表,您可以快速查看数据集中大量数据元素的完整性。

按照同样的方法(使用 "计数 "聚合类型),如果查看单个时期,从高到低排序的条形图可快速概括数据元素的完整性。

数据可视化器中的散点图{ #scatter-plots-in-data-visualizer }

这是一张散点图,对设施层面的两个相关变量进行离群值分析。该图中的两个变量相互关联--ANC 1 和 ANC 4,这就是为什么您可以看到许多数值以绿色紧密地聚集在一起。

在数据可视化工具中使用散点图进行离群值分析,可以让您识别相关值是否符合预期模型或存在某种偏差。图表上的红色值不符合预期模型,这些红色值离离群线越远,就越有可能存在导致这些值不能正确符合预期模型的潜在问题。

这些散点图可以使用多种方法来识别这些异常值,每种方法都有不同的灵敏度(即每种方法都会根据其计算结果检测出或多或少的异常值)。目前可用的不同方法有

  • 四分位数区间
  • Z 值
  • 修改后的 Z 值

Z 值是一种广为人知的方法,但它是 3 种方法中灵敏度最低的一种。

创建散点图{ #create-a-scatter-plot }

可以在数据可视化应用项目中创建散点图。

从数据可视化器的可视化选择器中选择散点图,开始操作。

选择此图表类型后,请查看布局。某些项目是锁定的,这使其有别于许多图表。您必须为图表的纵轴(Y)和横轴(X)选择数据项。点也始终是 org 单位。如前所述,您应为此类图表选择相关的数据项。如果您选择的是不相关的数据项,您的输出结果就不可能有用。

选择垂直和水平数据。我们将选择 ANC 1 和 ANC 4,因为它们是相关的(例如,在确定的时间段内,您通常会看到 ANC4 少于 ANC1)。

选择您的组织单位(此处为所有设施)

选择您的时间段

更新您的图表。

现在您将看到这两个相关项目之间的散点图。我们可以看到它们如何紧密地聚集在图表的左下角,因为大部分数值都在这里。我们还没有将离群值信息添加到图表中;下一步我们可以这样做。

添加离群值详细信息{ #add-outlier-details }

要添加离群值详细信息,请选择图表选项和 "离群值 "部分

启用离群值分析和极端线分析。

对于离群值分析,我们将使用四分位数区间法。这是一种可以应用于散点图数据的离群值检测方法。如果您需要更多信息,请参阅:https://medium.com/analytics-vidhya/outliers-in-data-and-ways-to-detect-them-1c3a5f2c6b1e

您不需要完全理解这种离群值检测方法;只需注意,这三种方法都是通过查看离群值是否符合所选不同方法描述的模型来确定离群值的。

您还可以选择 "极端线 "选项。这将帮助您识别可能产生误差的最极端离群值

选择这些选项后,更新图表。

让我们回顾一下如何解释输出结果。首先,让我们放大一组数值,以便更仔细地查看它们。我们可以将鼠标光标拖动到想要放大的区域。

如果需要,我们可以在放大后选择 "重置缩放 "来重置缩放比例

查看其中一个红色标注的离群值

该数据的模型非常窄(即大多数值都紧密地聚集在一起);但是,我们看到有些值远远超出了离群值的边界。这两个值本身都不能被视为离群值(还有其他更高的 ANC 1 值和其他更高的 ANC 4 值);但是,我们在上图中突出显示的这个值对超出了总 y 值(代表 ANC 1)的 1%范围。这是因为,在此范围内的典型 ANC 4 值与大多数其他数据值相比,ANC 1 值要低得多。

因此,在查看此类图表时,您必须查看所比较的两个项目之间的关系,并将这些值与属于离群值模型边界内的群组进行比较。在这种情况下,ANC 1 或 ANC 4 的值都可能不正确(如果我们降低 ANC 1 的值或提高 ANC 4 的值,该设施就可能相应地符合模型);或者这可能只是 ANC 1 和 ANC 4 的不同比率高于已定义的四分位数间阈值 1.5 的异常情况(即这些值是正确的,无需修改)。不过,问题更可能出在 ANC 1 值上,因为在此范围内的大多数 ANC 4 值的 ANC 1 值都较低。然而,由于与其他数据相比,该值是一个较高的离群值(考虑到其与离群值边界的距离,且在 1% y 值线之外),因此确实有必要进行调查,以确定这些值在该设施内是否正确。

验证规则分析{ #validation-rule-analysis }

验证规则已集成到 DHIS2 的数据录入应用项目中,可在数据录入过程中查看[链接至上述部分]。违反验证规则的情况也可在数据质量应用项目的验证规则分析部分查看。这很有用,因为它允许您批量审查违反验证规则的情况;您可以审查任意指定时间段内许多组织单位的违反情况,而不是审查特定组织单位、时期和数据集的违反情况。这也使得不进行数据录入或甚至无法访问数据录入应用项目的用户也可以分析和监控违反验证规则的情况。

使用这种方法审查验证规则时,最好将验证规则划分为验证规则组。有关这些组的配置,请参阅验证规则组部分。

要运行验证规则分析,请进入数据质量应用项目并选择 "运行验证"。

应用项目 -> 数据质量

选择 "验证规则分析 "标题下的运行验证

在这里,您需要选择输入。这包括以下内容:

  • 组织单位
  • 开始和结束日期。这定义了您要审查的时间段。
    • 对于期间,开始和结束日期应完全涵盖您要查看的期间。如果要查看每月的数据,这就意味着开始日期是当月的 1 号,而结束日期应该是下个月的 1 号。例如,在本截图中,正在查看的数据是 2023 年 6 月至 2023 年 8 月的数据。
  • 验证规则组。其中应包含您要查看的验证规则
  • 发送通知:这将根据发现的验证违规行为发送验证通知
  • 坚持新成果

选择输入后,选择 "验证"。运行验证分析可能需要一点时间,这取决于您选择要审查的数据量。如果计划一次审查大量数据(例如,许多组织单位跨越许多时期,包括许多验证规则),则验证规则分析的运行时间将比运行少量数据的时间长。

如果没有违反验证规则,就会显示 "验证成功通过 "的信息。如果有违反验证规则的情况,则会以列表形式显示,如下所示:

要查看验证详细信息,请选择详细信息栏下的信息按钮。

这将打开一个弹出窗口,提供有关违规行为的更多信息

我们可以看到,验证规则分析在同时审查多个组织单位/时间段的违规行为时非常有用,因为我们还可以看到违规行为的所有组成部分。这样,我们就能准确识别哪个值不正确,需要进一步跟进。

验证详细信息显示了违规行为的名称和描述,以及验证规则中的所有数据元素及其值。

您还可以下载这些违反验证规则的内容。如果您想参考此列表并跟进值,以便随着时间的推移对其进行修复,这可能会有所帮助。方法是在运行验证分析后选择右上角的文件类型之一。

长期一致性{ #consistency-over-time }

[稍后部分]

同比图表{ #year-over-year-charts }

这是一张同比(折线)图。同比(折线)图用于评估单一数据类型(数据元素、指标等)在一段时间内的一致性。在本例中,我们显示的是 2023 年、2022 年和 2021 年一年内所有 12 个月的 ANC 1 访问数据。通过该图表,我们可以很容易地识别出明显的异常值,因为与当前和之前的数据相比,我们可以很容易地看到数据的增加或减少(如果存在的话)。例如,通过查看图表中的每一条线,并将它们与各自的历史趋势进行比较,您可以看到 2023 年 1 月、2022 年 5 月和 2023 年 9 月的明显异常值。下一步就是利用这张图表,深入分析这些特定时期的层次结构,以找到这些异常值的来源。可以将这些图表放在工作流程中关键变量的仪表板上,以便员工根据数据收集的频率进行例行审查。

为了创建此可视化效果,您将使用数据可视化器

选择同比(线)开始创建此图表

界面 - 周期选择和过滤器{ #the-interface-period-selection-and-filter }

选择该图表类型后,我们可以看到类别和系列都自动填充了周期类型。左侧菜单中选择其他维度的周期选择也是灰色的。组织单位和数据会自动放入筛选器中。因此,当只选择一个数据项进行比较时,这种图表类型效果最佳。不过,可以在筛选器中使用多个组织单位,这取决于您希望显示什么(它将筛选属于这些组织单位的数据)。

界面 - 类别{ #the-interface-category }

在本例中,类别决定了沿 x 轴显示的时间段,并将数据分组。因此,如果选择 "每年月份",就会显示一年中从 1 月到 12 月的所有月份。如果我们选择 "每年季度",则会沿着 x 轴显示一年中的 4 个季度。

您会注意到,类别中的选择都是相对的时间段,例如,您不能在该图表类型的类别中选择特定的月份。

界面 -{ #the-interface-series } 系列

系列决定了要显示哪些年份的数据。如果我选择了今年和去年,它将根据当前日期分别显示这两年的数据。我也可以指定年份而不是相对时间段,例如 2021 年、2022 年和 2023 年。

选择这两个选项后,我现在创建的图表将沿 x 轴显示 1 月至 12 月的数据(由于选择了类别)。选择 2021 年、2022 年和 2023 年作为我的系列,这三年的数据值将按月显示在同比图表上。

接口 - 数据{ #the-interface-data }

选择数据时,最好只选择一个数据项。不过,由于数据选择会自动添加到筛选器中,且无法移动,因此添加多个数据项不会对图表产生任何影响。

更新和审查图表

现在我们可以更新图表了。在本例中,我们使用的是默认的国家组织单位,但如果有必要,我们也可以进行更改。

我们可以看到图表是如何根据我们选择的类别和序列周期以及我们选择的数据项(在本例中为 ANC 1 次就诊)生成的。

系列决定了我们要显示哪些年份的数据,而类别则决定了如何沿 x 轴对数据进行分组。

时间序列中的统计异常值{ #statistical-outliers-in-time-series }

"极端异常值 "是指非常可疑的数值,需要仔细检查其准确性。这些数值与医疗机构通常报告的数值不同。如果发现极端离群值不正确,则应按照当地概述数据值编辑方法的程序对其进行编辑。在本节中,我们将展示如何在 DHIS2 中使用[预测因子](#manage_predictor)和[离群值分析](#outlier_detection)功能来识别时间维度*的离群值。我们指定*时间*是为了与散点图一节中描述的离群值区分开来,后者识别的是单个时期的离群值组织单位。

用于识别异常值的两种功能各有一些优势。DHIS2 数据质量应用程序*允许进行批量分析(即同时对大量变量进行分析),而无需事先进行任何配置。它允许用户选择不同的统计方法来计算离群值,并在任何数据集和时段组合上运行。因此,它既灵活又强大,但需要用户打开应用程序,选择适当的参数,然后等待分析完成。通过使用*预测器*计算离群值阈值以及相关数据元素和指标,我们可以创建通知,在仪表板上查看这些值,或将其与其他 DHIS2 功能(如验证规则)结合使用。这样一来,如何以不同的方式向用户提供离群值分析结果就有了更大的灵活性,但需要为我们要评估的**个变量配置多个元数据对象。因此,这两种方法应视为互补的。

利用预测因子和指标进行离群值分析{ #outlier-analysis-with-predictors-and-indicators }

在实时实施过程中,预测器可能会占用大量资源,因此需要特别注意对 DHIS2 系统进行压力测试,以确保在实时实施前添加新数据时,该系统能够持续、定期地生成预测器。此外,即使预测器生成了新数据,这些数据也要等到 Analytics 更新后才能看到;这是另一个可能需要大量时间的步骤,具体取决于系统的规模。因此,在首次遵循指导原则时,可能需要极大的耐心,并在工作流程中多次长时间暂停。首先在开发系统上复制和测试预测器非常重要,这样可以在不影响生产系统的情况下对预测器进行全面测试***

预测器在 DHIS2 中提供了通用功能,我们将在此展示如何将其用于异常值检测和分析。虽然创建预测器的初始过程可能比较耗时,但一旦您成功配置了一个数据元素/指标并确认所产生的输出正确无误后,后续每个数据元素或指标的配置过程所需的时间就会减少。

为离群点检测配置预测器需要两套预测器:

  • 一个预测因子来计算*异常值阈值*。这是通过分析以前报告的数据和定义阈值(对于数据元素和组织单位的组合)来确定的,超过阈值的值将被视为异常值。

  • 在进一步计算中使用离群值阈值的一个或多个预测器,例如计算有多少设施报告了离群值,仅将离群值或非离群值分配给不同的数据元素进行分析等。

由于预测器产生的数据值在用于进一步计算之前需要存储,因此每个新的预测器都需要与一个数据元素相关联。这些数据元素可以组织成一个或多个新的数据集。

对于想要分析/监控的每个变量,可以配置哪些预测因子/数据元素和指标,有多种选择:

  • 离群阈值(预测因子/数据元素)

  • 异常值(预测因子/数据元素)的计数

  • 非**异常值(预测值/数据元素)的计数

  • 异常值(%)(指标)

  • 异常值(预测值/数据元素)

  • 非异常值(预测数据元素)

  • 排除异常值的数据值(指标)

下文将对其进行进一步定义和解释。首先,了解这些元数据对象的数据流非常重要,如图所示

预测器必须由系统安排运行,就像*分析*流程一样。因此,调度对其运行至关重要。为了向终端用户提供指标,我们首先需要运行第一组预测器(计算阈值),然后运行第二组预测器,最后运行正常的分析流程,以便在数据可视化器和其他分析工具中提供数据集和指标。此处](#调度)将对此进行进一步讨论。

离群值阈值预测器{ #predictor-for-outlier-threshold }

我们首先配置计算特定变量离群值阈值的预测因子和数据元素,可以是一个数据元素(默认值/总数),也可以是一个特定的分类(类别选项组合)。在下面的示例中,我们将以*疟疾确诊病例*为例。

配置步骤

  1. 创建一个数据元素来存储异常值阈值:

    • 名称:"DQ - 疟疾确诊病例离群阈值(平均值+3 SD)"

    • 描述"由预测因子自动生成。疟疾确诊病例数据元素的异常值阈值(所有分类数据的总和),基于前 12 个月的平均值 + 3 个标准差。这可用于识别潜在的异常值。"

    • 类型骨料

    • 数值类型:正整数或零整数

  2. 创建一个具有基本属性的新预测器:

    • 名称:"DQ - 疟疾确诊病例离群阈值(平均值+3 SD)"

    • 描述"生成疟疾确诊病例的异常值阈值,定义为平均值 + 3 个标准差,不包括上个月的值。

  3. 设置输出数据元素,使其指向步骤 1 中创建的数据元素。

  4. 设置周期类型,使其与我们要评估的数据元素的数据收集频率相匹配。以疟疾确诊病例为例,该数据每月收集一次。

  5. 将组织单位级别设置为收集数据的级别,大多数情况下都是设施级别。

  1. 配置*生成器*,即定义预测器实际计算的表达式。

    • 如果所有值都缺失,则将缺失值策略设为跳过。

    • 在这种情况下,表达式应为

avg({data_element_uid}) + (3 * stddevPop({data_element_uid}))

*avg()*给出我们要评估的数据元素在各个时期的平均值/均值(在下一步中定义)。*stddevPop()*给出我们要评估的数据元素在各个时期的人口标准差,我们将其乘以 3,因为我们希望阈值比平均值高出 3 个标准差。我们在这里使用 3,是因为它经常被用作极端离群值的定义,但也可以使用其他值。

  1. 最后,设置序列样本计数。这定义了在计算中应包含多少期以前的数据。在本例中,数据为月度数据(在步骤 4 中定义),我们希望使用 1 年的以前数据来计算阈值,因此将其设置为 12。年度样本计数和连续跳过计数应为 0(默认值)

离群指标的预测因子{ #predictors-for-outlier-metrics }

当离群值阈值被定义并存储为数据元素值时,我们就可以创建额外的预测器来进行更具体的计算。除了实际的生成器表达式外,这些生成器的配置方式相同。我们将概述一次创建预测器的一般步骤,而每个特定预测器的实际表达式将在下表中提供。

我们将回顾如何使用离群值阈值创建四种不同的预测器/数据元素:

排除异常值的数据元素 非异常值的数据元素值。
数据元素异常值 属于异常值的数据元素值。
数据元素非异常值计数 非异常值数据元素值的计数。
数据元素离群计数 属于异常值的数据元素值的计数。

下面的示例(以 ANC 1 次就诊作为我们要评估的数据元素)显示了不同预测因子在时间序列中的预期输出结果

**2月**日 ****年3月 四月 五月 **六月**日 **七月**日
ANC 1 165 196 214 204 219 4243 195
ANC 1 离群值阈值 253 265 253 244 242 246 4716
ANC 1 不包括异常值 165 196 214 204 219 195
ANC 1 异常值 4243
ANC 1 非离群计数 1 1 1 1 1 1
ANC 1 异常值计数 1

要配置这些预测器,首先要创建可赋值的数据元素,然后按照以下一般步骤操作:

  1. 创建一个新的预测器

  2. 设置输出数据元素,使其指向已创建的数据元素

  3. 设置周期类型,使其与我们要评估的数据元素的数据收集频率相匹配。

  4. 将组织单位级别设置为收集数据的级别,大多数情况下是设施级别。

  5. 使用下表中的适当表达式配置 Generator

  6. 将连续采样计数设为 1,年度采样计数设为 0,连续跳过计数设为 0。

该表提供了在生成不同预测因子时应使用的表达式:

预测变量 以目标取代源 说明
排除异常值的数据元素 if( {DE} <= {DE 临界值}, {DE}, 0) if(#{KV1LlPytf4f} <=#{dx8Y0ZrHji7}, #{KV1LlPytf4f}, 0) 如果数据元素值低于阈值,则使用该数据元素值,否则返回 0。
数据元素异常值 if( {DE} > {DE 临界值}, {DE}, 0) if(#{KV1LlPytf4f} > #{dx8Y0ZrHji7}, #{KV1LlPytf4f}, 0) 如果数据元素值高于阈值,则使用该数据元素值,否则返回 0。
数据元素非异常值计数 if( {DE} <= {DE 临界值}, 1, 0) if(#{KV1LlPytf4f} <=#{dx8Y0ZrHji7}, 1, 0) 如果数据元素值低于阈值,则返回 1,否则返回 0。
数据元素离群计数 if( {DE} > {DE 临界值}, 1, 0) if(#{KV1LlPytf4f}>#{dx8Y0ZrHji7}, 1, 0) 如果数据元素值高于阈值,则返回 1,否则返回 0。

这些预测器生成的数据元素可直接用于可视化和仪表板,例如,对照阈值显示报告值,对上个月标记的异常值数量进行简单计数,或制作表格突出显示各设施的具体异常值。

离群值分析指标{ #indicators-for-outlier-analysis }

如上所述,在为这些核心数据质量度量配置了预测因子和数据元素后,我们可以定义两个指标:

特定数据元素的**离群值百分比**:

分母:离群值计数

分母:离群值计数 + 非离群值计数

系数:100

目的:衡量数据质量,可用于查看地域比较或随时间推移发生的变化

**不包括异常值的数值占特定数据元素总体数值**的百分比:

分母:不属于异常值的数据元素值

分母:数据元素的所有数值

系数:100

目的:衡量离群值对数据元素整体值的*显著性,可用于时间趋势和地域比较。还可以显示离群值对整体数据的影响程度,这在分析数据时是一个重要的考虑因素。

一旦有了基本预测因素/数据要素,这些指标的配置就变得简单明了(以下选项 a 和 b 指的是上述各项指标)

  1. 创建一个新指标,并赋予适当的名称和说明。描述在这里很重要,因为对于大多数用户来说,这些指标可能是新的。

  2. 将指标类型设为百分比(具体名称可以不同,但指标类型的系数应为 100)

  3. 配置分子

    a. 异常值计数(例如:疟疾确诊病例异常值计数)

    b. 剔除异常值的数值(例如:剔除异常值的疟疾确诊病例)

  4. 配置分母

    a. 离群值计数 + 非离群值计数(例如:疟疾确诊病例离群值计数 + 疟疾确诊病例非离群值计数):疟疾确诊病例离群值计数 + 非离群值疟疾确诊病例计数)

    b. 数据元素值(例如:疟疾确诊病例)

  5. 保存指标并将其分配给适当的组

这些指标现在可用于可视化和仪表板,使用户能够轻松监控异常值的趋势,进行地域比较,并监控异常值对相关数据元素的总体影响。

DHIS2 异常值分析{ #dhis2-outlier-analysis }

为每个数据元素配置一套预测因子、数据元素和指标是不现实的。数据质量中的离群值分析可以对整个数据集进行离群值分析,因此是对基于预测因子的离群值检查的有益补充。

要运行离群值分析,请打开数据质量应用项目,然后单击离群值检测下的分析。

首先选择分析的关键参数:

  • 数据集 - 选择一个或多个数据集以纳入分析

  • 组织单位 - 选择要包括的一个或多个组织单位;所选单位下面的所有组织单位都将包括在内。

  • 开始和结束日期 - 将包括此日期范围内的时段。请注意,这些时间段是我们分析异常值的时间段。在计算平均值/中位数和标准差时,除非另有说明(见下文的高级选项),否则会包括特定组织单位和数据元素的*所有*期间的数据。

然后,指定用于分析的统计方法和参数。

  • 算法

    • Z-score--根据平均值的标准偏差检测异常值。更多信息[关于 Z-score]{.ul}

    • 修正的 z 分数--根据与中位数的标准差来检测异常值。

    • 最小-最大 - 基于最小-最大值,[此处](#review-min-max-values-in-the-data-quality-app)已讨论过。

  • 阈值 - 一个值在被视为离群值之前必须与均值/中值相差的标准差个数。默认值为 3,通常用作 "极端 "离群值的默认定义。

  • 最大结果 - 结果表中包含的离群值的最大数量。

可选择更改高级选项:

  • 数据开始和结束日期--允许您限制用于计算平均数/中位数和标准差的数据,覆盖默认选项(包括所有数据)。请注意,统计计算需要一定数量的周期才有意义。

  • 排序方式 - 指定结果的排序方式,有两个选项

    • 与中位数/均值的绝对偏差(默认)--这将根据离群值与中位数/均值的绝对偏差对所得到的离群值表格进行排序。一般来说,这意味着首先显示对结果影响最大的异常值。

    • Z 分数/修正 Z 分数 - 根据 Z 分数(即离群值的 "极端程度")对生成的表格进行排序。这意味着,如果较小的数值离平均值/中位数较远,则可能会在较大的数值(即来自小机构的数值)之前显示一个相对较小的数值。

最后,单击 "开始 "运行分析。根据所选参数和数据库大小,这可能需要一些时间。生成的表格会列出所有已检测到的异常值(最多为允许的最大结果),并提供以下信息:

  • 数据元素

  • 组织单位

  • 值 - 确定为离群值的值

  • Z 分数 - 离群值的 Z 分数

  • 偏差 - 离群值的偏差,即平均值/中值与实际值之间的差值

  • Std Dev - 一个标准差的值。

  • 中位数/平均值 - 中位数/平均值,取决于所使用的方法

  • 最小和最大 - 数据元素的最小值和最大值,基于参数部分设置的指定标准偏差数。

  • 后续行动 - 复选框,允许标记为后续行动的值,这意味着可以使用数据质量应用项目的 "后续分析 "功能列出这些值。

离群值表{ #outlier-tables }

离群值表是 DHIS2 第 41 版的一项新功能,其部分目的是复制和扩展世卫组织数据质量工具中的离群值表功能。

与世卫组织数据质量工具中的离群值表类似,离群值表显示数据,并使用标准 Z 值或修正 Z 值(默认使用修正 Z 值)分析离群值。

在数据可视化应用项目中,离群值表可以作为一种可视化类型进行访问。

制作离群值表非常简单:

  1. 从数据可视化应用项目的可视化选择器中选择离群值表可视化类型
  2. 离群值表有 3 个固定维度,您必须为其选择输入:
  3. 数据
  4. 组织单位
  5. 选择这些项目的输入,然后选择 "更新"。

从数据可视化应用项目的可视化选择器中选择离群值表可视化类型

选择数据、周期和组织单位的输入,然后 "更新 "表格。这 3 个输入项是锁定的,也就是说,所有 3 个输入项都需要,而且必须******为它们选择输入项。请注意,您可以在该表中选择多个数据项。

更新后,您将看到如下表格:

点击此处查看该表中的可用项目:

  1. 数据 :本栏显示您选择的数据项。您可以根据需要选择任意多个数据项。
  2. 类别选项组合:这是数值所代表的具体分类(如果有的话)。在我们的例子中,ANC 第 4 次或更多次访问被分解为固定访问和外联访问(见下面的数据集)。在离群值表中,我们发现了来自非急诊科第四次或更多次就诊 ***固定***值的离群值。

  1. 周期 :这是发现离群值的时间段。
  2. 组织单位:这是发现离群值的组织单位。请注意,它显示的是源组织单位。因此,当您在层次结构中选择一个组织单位时,它将在该组织单位的所有子组织单位中查找异常值。
  3. 值:这是 DHIS2 中记录的值
  4. 中位数:中位数是在数据元素、类别选项组合、期间和组织单位组合中所选期间的中间值。当记录值明显高于中位数时,说明数据不符合预期模式。
  5. 修正的 z 评分:修正的 z 评分是一种标准化评分,用于衡量离群值的强弱或特定评分与典型评分的差异程度。它使用标准差单位,近似于分数与中位数的差异。我们可以使用修正 Z 值来定义用于识别离群值的临界值。该值越高,记录值与中位数的偏差越大。
  6. 中位数绝对偏差:这是数据值与中位数之间的平均距离。其目的是用数字描述数据集的数值分布情况。以第一行为例,中位数绝对偏差仅为 2.5,中位数为 9,记录值为 854,偏离中位数 845。
  7. 最小值:为数据元素、分类和组织单位组合设定的最小值阈值。这并不局限于某一特定时期。
  8. 最大值 :为数据元素、分类和组织单位组合设定的最大值阈值。这并不局限于某一特定时期。

修改离群值表*

您可以使用表格选项修改离群值表格。您可以修改 3 个项目:

  1. 数据
  2. 风格
  3. 异常值

  1. 数据:在数据选项卡中,您可以跳过四舍五入,也可以选择要显示的最大结果数。您最多可以在表格中显示 500 个异常值。

  1. 样式:在样式选项卡中,您可以修改显示密度、字体大小、数字组分隔符,并选择在组织单位栏中显示组织单位层次结构。

  1. 异常值:在异常值选项卡中,您可以选择异常值检测方法并设置阈值因子。默认情况下,设置修改后的 z 分数和 3 的阈值因子来检测异常值。 z 分数/标准分数法使用平均值而不是中位数来检测异常值,这可能会降低检测的灵敏度。

世卫组织数据质量工具{ #who-data-quality-tool }

世卫组织数据质量工具是DHIS2 App Hub中的一个应用项目,支持基于世卫组织数据质量审查框架的一系列数据质量分析功能。在 2016 年左右发布该工具时,DHIS2 核心应用项目中还没有提供许多数据质量分析功能。多年来,这种情况已有所改变,现在大多数分析功能都可以在 DHIS2 核心应用项目中完成。在未来 1-2 年内,世卫组织数据质量应用项目将不再为新版 DHIS2 更新。目前正在开发一个新的现代化应用项目,以填补剩余的功能空白,主要涉及自动生成年度数据质量报告。

下表概述了世卫组织数据质量工具提供的功能和 DHIS2 核心系统提供的功能(截至 2.38 版)。

分析功能 世卫组织数据质量工具 DHIS2 核心应用项目
数据集的完整性和及时性 支持的 支持的
数据元素的完整性和及时性 有限支持(仅在年度报告中) 支持的
验证规则分析 不支持 支持的
最小-最大离群值分析 不支持 支持的
使用散点图显示相关数据的一致性 支持的 支持的
负辍学率分析 支持的 支持的
同比图表 支持的 支持的
离群值分析(时间序列) 支持的 支持的
用散点图表示随时间变化的一致性 支持的 不支持
自动生成年度数据质量报告 支持的 不支持(注:数据质量年度报告应用项目支持此功能)

世卫组织数据质量工具有专门的用户手册培训包,因此本指南不讨论其功能。