Este relatório documenta o processo completo de preparação e análise dos dados de repetibilidade de medições de hemoglobina (HGB) em amostras com valores críticos (< 70 g/L), realizadas nos analisadores hematológicos. O objectivo é avaliar a consistência das medições intra- e inter-analisador.
Os dados foram lidos a partir de 7 ficheiros CSV exportados dos analisadores, e unidos numa única tabela.
| Métrica | Valor |
|---|---|
| Total de linhas lidas | 624335 |
| Total de colunas | 288 |
| Ficheiro | Analisadores | Data início | Data fim | Nº registos |
|---|---|---|---|---|
| Ficheiro 1 | XN-9100-3 | 08/09/2021 | 11/10/2022 | 99996 |
| Ficheiro 2 | XN-9100-1, XN-9100-2 | 20/12/2021 | 10/10/2022 | 99997 |
| Ficheiro 3 | XN-9100-3 | 19/09/2023 | 22/12/2023 | 24355 |
| Ficheiro 4 | XN-9100-1, XN-9100-2 | 10/03/2023 | 22/12/2023 | 99999 |
| Ficheiro 5 | XN-9100-1, XN-9100-2 | 15/03/2025 | 06/12/2025 | 99994 |
| Ficheiro 6 | XN-9100-3 | 29/11/2024 | 06/12/2025 | 99994 |
| Ficheiro 7 | XN-9100-1, XN-9100-2 | 13/01/2025 | 04/10/2025 | 100000 |
A data e hora foram combinadas numa coluna datetime e o
valor de HGB foi convertido para número. De seguida, foram removidos
registos duplicados com o mesmo nickname e
datetime.
| Métrica | Valor |
|---|---|
| Linhas antes da remoção de duplicados | 624335 |
| Linhas removidas (duplicados) | 75740 |
| Linhas após remoção de duplicados | 548595 |
FREE SELECT nas
amostras com HGB < 70 g/L, por número de análises. Foram mantidos
todos os registos com FREE SELECT.
| Nº Análises | Total Amostras | Com FREE SELECT | % FREE SELECT |
|---|---|---|---|
| 2 | 2344 | 44 | 1.9 |
| 3 | 592 | 475 | 80.2 |
| 4 | 92 | 73 | 79.3 |
| 5 | 38 | 31 | 81.6 |
| 6 | 7 | 5 | 71.4 |
| 7 | 1 | 1 | 100.0 |
Foram mantidos apenas os registos cujo sample_no começa
pelos prefixos definidos: IU, IR, SU, CU, CR, CS.
| Métrica | Valor |
|---|---|
| Linhas antes do filtro | 548595 |
| Linhas removidas (CQ/Background) | 48630 |
| Linhas restantes | 499965 |
Foram removidos registos com HGB ausente ou inferior a 10 g/L (valores clinicamente impossíveis).
| Métrica | Valor |
|---|---|
| Linhas após filtro de códigos | 499965 |
| Linhas removidas (HGB ausente ou < 1 g/L) | 3012 |
| Linhas restantes | 496953 |
Foram excluídos manualmente 5 registos identificados como problemáticos (mesma id, anos diferentes).
excluir <- tibble(
sample_no = c(
"CU187810124", "CU187916124", "CU191280124",
"CU192465124", "IU576952124"
),
datetime = dmy_hms(c(
"26-02-2025 09:23:46", "25-08-2022 11:09:26", "05-09-2022 10:25:08",
"07-09-2022 09:57:46", "10-06-2022 10:58:42"
))
)
dados_clean <- dados_clean %>%
anti_join(excluir, by = c("sample_no", "datetime"))
| Métrica | Valor |
|---|---|
| Registos excluídos manualmente | 5 |
| Linhas restantes | 496948 |
Foi identificada a primeira leitura cronológica de cada amostra. Foram incluídas apenas as amostras cuja primeira leitura apresentou HGB < 70 g/L. De seguida, foram recuperadas todas as leituras associadas a essas amostras (incluindo repetições).
| Métrica | Valor |
|---|---|
| Amostras únicas com HGB crítico (< 70 g/L) | 3154 |
| Total de leituras dessas amostras | 6983 |
Das 3154 amostras com HGB < 70 g/L, 2990 (94.8%) foram repetidas e 164 (5.2%) não tiveram repetição registada.
O delta é a maior diferença absoluta encontrada entre a medição inicial de Hb e as repetições subsequentes.49% das repetições foram idênticas (ΔHb = 0 g/L) e 92% apresentaram uma variação ≤ 1 g/L. O gráfico abaixo mostra a distribuição dos deltas até >4 g/L.
| Tipo | N | % |
|---|---|---|
| Inter-Analyzer | 999 | 33.4 |
| Intra-Analyzer | 1991 | 66.6 |
Estas amostras apresentaram uma diferença superior a 4 g/L entre repetições e foram excluídas do cálculo do Bias. É recomendada a revisão clínica destes casos.
| sample_no | nickname | datetime | hgb | order_type |
|---|---|---|---|---|
| CS642370124 | XN-9100-2 | 2022-06-14 13:54:05 | 5.1 | Initial |
| CS642370124 | XN-9100-3 | 2022-06-14 14:08:47 | 5.6 | Initial |
| CS642370124 | XN-9100-3 | 2022-06-14 14:28:09 | 13.6 | Manual (Open) |
| IR558258124 | XN-9100-2 | 2022-01-14 10:38:09 | 5.4 | Initial |
| IR558258124 | XN-9100-2 | 2022-01-14 10:39:57 | 6.6 | Reflex |
| IR558258124 | XN-9100-3 | 2022-01-14 10:57:02 | 6.7 | Initial |
| IR614779124 | XN-9100-2 | 2023-05-12 10:43:38 | 5.5 | Initial |
| IR614779124 | XN-9100-1 | 2023-05-12 10:45:40 | 8.0 | Reflex |
| IU425530124 | XN-9100-3 | 2022-01-05 11:55:45 | 6.1 | Initial |
| IU425530124 | XN-9100-3 | 2022-01-05 11:57:33 | 10.2 | Initial/Repeat |
| IU567566124 | XN-9100-3 | 2024-12-22 08:52:16 | 6.7 | Initial |
| IU567566124 | XN-9100-3 | 2024-12-22 08:54:51 | 6.8 | Reflex |
| IU567566124 | XN-9100-3 | 2024-12-22 11:02:52 | 11.1 | Manual (Open) |
| IU584684124 | XN-9100-3 | 2025-04-22 19:50:27 | 6.2 | Initial |
| IU584684124 | XN-9100-3 | 2025-04-22 19:52:51 | 6.8 | Reflex |
| IU603647124 | XN-9100-1 | 2025-09-07 10:32:49 | 4.7 | Initial |
| IU603647124 | XN-9100-3 | 2025-09-07 10:41:48 | 6.4 | Initial |
| IU603647124 | XN-9100-3 | 2025-09-07 10:43:36 | 6.4 | Reflex |
| IU603647124 | XN-9100-3 | 2025-09-07 10:52:53 | 6.4 | Manual |
| SU133765124 | XN-9100-2 | 2022-09-15 08:22:31 | 6.3 | Initial |
| SU133765124 | XN-9100-2 | 2022-09-15 08:24:34 | 9.2 | Initial/Repeat |
| SU133765124 | XN-9100-3 | 2022-09-15 08:36:32 | 9.1 | Manual |
| SU133765124 | XN-9100-1 | 2022-09-15 08:42:16 | 9.2 | Manual |
| SU441778124 | XN-9100-3 | 2025-02-09 16:31:42 | 6.4 | Initial |
| SU441778124 | XN-9100-3 | 2025-02-09 16:34:05 | 6.4 | Reflex |
| SU441778124 | XN-9100-3 | 2025-02-09 18:01:53 | 5.8 | Initial |
| SU441778124 | XN-9100-3 | 2025-02-09 18:03:42 | 5.7 | Reflex |
| sample_no | nickname | datetime | hgb | order_type |
|---|---|---|---|---|
| CS876067124 | XN-9100-2 | 2023-04-24 13:14:12 | 6.8 | Initial |
| CS876067124 | XN-9100-1 | 2023-04-24 13:15:42 | 7.2 | Reflex |
| IR697292124 | XN-9100-1 | 2025-07-25 14:26:45 | 6.7 | Initial |
| IR697292124 | XN-9100-3 | 2025-07-25 14:31:38 | 6.7 | Initial |
| IR697292124 | XN-9100-3 | 2025-07-25 14:33:27 | 7.1 | Reflex |
| IU581010124 | XN-9100-3 | 2025-03-27 15:29:15 | 6.7 | Initial |
| IU581010124 | XN-9100-3 | 2025-03-27 15:31:03 | 7.1 | Reflex |
| IU596704124 | XN-9100-3 | 2025-07-16 20:31:36 | 5.1 | Manual (Open) |
| IU596704124 | XN-9100-3 | 2025-07-16 20:33:29 | 4.7 | Manual (Open) |
| SU284062124 | XN-9100-1 | 2023-11-26 08:13:23 | 6.5 | Initial |
| SU284062124 | XN-9100-2 | 2023-11-26 08:15:04 | 6.9 | Reflex |
| SU471361124 | XN-9100-2 | 2025-04-28 08:28:16 | 6.1 | Initial |
| SU471361124 | XN-9100-3 | 2025-04-28 08:35:06 | 6.5 | Initial |
As amostras com delta > 4 g/L foram excluídas desta análise, por apresentarem coágulo/fibrina. Para cada amostra, o par de medições usado foi a primeira leitura vs. a leitura com maior diferença absoluta em relação à primeira.
| Grupo | N | Mean bias (g/L) | SD (g/L) | LoA superior | LoA inferior | IC95 inf | IC95 sup | CV% médio |
|---|---|---|---|---|---|---|---|---|
| Global | 2981 | -0.12 | 0.89 | 1.62 | -1.86 | -0.15 | -0.09 | 0.96 |
| Inter-Analyzer | 994 | -0.19 | 1.20 | 2.17 | -2.55 | -0.26 | -0.11 | 1.53 |
| Intra-Analyzer | 1987 | -0.09 | 0.68 | 1.24 | -1.41 | -0.12 | -0.06 | 0.67 |
| Grupo | N | Mean ΔHb (g/L) | SD ΔHb (g/L) |
|---|---|---|---|
| Global | 2981 | 0.60 | 0.67 |
| Inter-Analyzer | 994 | 0.95 | 0.76 |
| Intra-Analyzer | 1987 | 0.42 | 0.54 |
Os gráficos de Bland-Altman mostram a diferença entre as duas leituras (eixo Y) em função da média das duas leituras (eixo X). A linha preta representa o mean bias e as linhas vermelhas os limits of agreement (±1.96 SD).
Das 3154 amostras com HGB < 70 g/L:
Relatório gerado automaticamente em R. Data: 23/04/2026.