flowchart LR B(可比性) --> b1(发病日期的定义) B --> b2(多原发判断) B --> b3(分类与编码) B --> b4(死亡证明)
如何快速发布质控报告和年度报告?
陈琼
April 17, 2024
主要内容
质量控制应该怎么做?
可视化批量化的质控报告?
自动化的肿瘤登记年报输出
谢谢关注!
确保肿瘤登记准确、完整、可靠, 从而为癌症防控、科学研究、医疗质量评估等提供真实、完整、有效、具有科学价值的基础数据。
肿瘤登记的质量控制是获取高质量数据的核心
使不同地区之间的数据具有可比性
代表登记处所在地区的癌症人群
使癌症数据真实有效
肿瘤登记收集的变量或者变量组合之间存在一定的逻辑关系,通过对单个变量或变量组合之间的逻辑关系进行审查,以提高肿瘤登记数据有效性。
单个项目
项目组合
校验结果
可比性、有效性、时效性1和完整性是当前肿瘤登记质量控制的主要指标2
flowchart LR B(可比性) --> b1(发病日期的定义) B --> b2(多原发判断) B --> b3(分类与编码) B --> b4(死亡证明)
flowchart LR D(有效性) --> d1(组织学确诊比例) D --> d2(只有死亡医学证明书比例) D --> d3(部位不明比例) D --> d4(数据内部一致性)
flowchart LR C(完整性) --> c1(死亡发病比) C --> c3(组织学确诊比例) C --> c4(不同时间发病率的稳定性) C --> c5(年龄别发病率曲线)
癌症的发生是一个可能需要数十年的过程,而发病日期的定义则相对武断,因此,遵循统一的标准特别重要.
部位 | ICD10 |
---|---|
口腔和咽 (除外鼻咽癌和喉) | C00-10,C12-14(除外C10.1) |
鼻咽癌 | C11 |
食管 | C15 |
胃 | C16 |
结直肠肛门 | C18-21 |
肝脏 | C22 |
胆囊及其他 | C23-C24 |
胰腺 | C25 |
喉 | C32,C10.1 |
气管、支气管、肺 | C33-C34 |
骨 | C40-C41 |
乳房 | C50 |
子宫颈 | C53 |
子宫体及子宫部位不明 | C54-55 |
卵巢 | C56 |
前列腺 | C61 |
睾丸 | C62 |
肾及泌尿系统不明 | C64-66,68 |
膀胱 | C67 |
脑,神经系统 | C70-C72 |
甲状腺 | C73 |
淋巴瘤 | C81-85,88,90,96 |
白血病 | C91-C95 |
其它 | Other(除外以上) |
所有部位合计 | ALL |
个体有发生一个以上癌症的可能,多部位原发癌纪录为新发病病例,与登记地区医疗水平有关,也与登记质量有关,登记处应注意多部位原发肿瘤病例资料的收集
全球大部分地区采取了IARC的多原发癌判断规则
ICDO3-Topo | Site |
---|---|
C01, C02 | C02.9 |
C00, C03, C04, C05, C06 | C06.9 |
C09, C10, C12, C13, C14 | C14.0 |
C19, C20 | C20.9 |
C23, C24 | C24.9 |
C33, C34 | C34.9 |
C40, C41 | C41.9 |
C65, C66, C67, C68 | C68.9 |
MV%的绝对值可能没有意义, 只有通过与“预期值”进行比较才能除非与合理的“预期”值进行比较才有意义。
如何判断登记处的MV%与区域内的均值是否存在差异?
基于二项分布, 存在 \(E(y_i)=pd_i\) 和 \(Var(y_i)=p(1p)d_i\), 参数可以做如下估计:
\(Z^2 = \frac{(y_j - \hat{p} d_j)^2}{\hat{\phi} \hat{p}(1- \hat{p}) d_j} \approx \chi_1^2\)
\(\hat{p}=\frac{\sum_{i=1}^n y_i}{\sum_{i=1}^n d_i}\)
\(\hat(\phi)=\frac{1}{n-1}\sum_{i=1}^n \frac{(y_i-pd_i)^2}{d_ip(1-p)}\)
如果\(Z^2 \geq 3.84\) 则认为登记处MV%与区域均值存在有统计学意义的差异。
标记为DCO的记录指示该记录的数据质量较差,诸多信息存在缺失,比如诊断时间以死亡时间来代替,无法在生存分析时被利用。
肿瘤登记收集到的癌症病人数占一定区域内所有诊断癌症病人的比例
癌症患者
诊断患者
肿瘤登记
肿瘤登记收集到的癌症病人数占一定区域内所有诊断癌症病人的比例
癌症患者
诊断患者
肿瘤登记
通过对比历史数据发病率发现异常波动,从而体现可能登记处完整性的变化。
假设: 来自同一地区特定癌症的发病率倾向于相似。
M:I是反映完整的重要指标,它反映癌症生存情况,与该地区的经济、医疗等发展水平有关,当它预期值1存在差异时,往往提示完整性存在问题。
\[M:I=\frac{Mortality}{Incidence} \approx1-5Survial\]
MV%是有效性评估的指标, 但是通过与预期值比较,也可以判断其完整性,过高的MV%提示数据过度依赖病理诊断,可能存在完整性不足。
如何判断MV%与预期值是否存在差异?
\(Z^2 = \frac{(m_j - \hat{\theta} d_j)}{\hat{\phi}n_j\hat{\theta}} \approx \chi_1^2\)
\(\hat{\theta}=\frac{\sum_{i=1}^n m_i}{\sum_{i=1}^n d_i}\)
\(\hat(\phi)=\frac{1}{n-1}\sum_{i=1}^n \frac{(m_i-\hat{\theta}d_i)^2}{n_i\hat{\theta}}\)
主要内容
质量控制应该怎么做?
可视化批量化的质控报告?
自动化的肿瘤登记年报输出
谢谢关注!
通过可视化的方法,尽量简单的肿瘤登记数据中存在的问题展示出来.
我们定期(每季度)生成每个登记处的质量控制报告,并发布至网络直报信息系统。
基于Rmarkdown的可重复性报告
让肿瘤登记报告生成更简单, 越简单越好!!!
缺点:
解决:
目前实现的函数:
主要内容
质量控制应该怎么做?
可视化批量化的质控报告?
自动化的肿瘤登记年报输出
谢谢关注!
肿瘤登记处的主要目标之一就是产生肿瘤发病、死亡、生存相关的统计指标, 并通过一定的渠道发布数据,促进数据的共享和利用(专业人员和大众),从而促进癌症防控政策的产生。
把统计分析数据转换为文字的过程。
flowchart LR A(统计分析) --> B(制作表格) B --> C(绘制统计图) C --> D(专家撰写) D --> E(初稿) E --> F(审核定版)
年报特点
自动化?
基于现有年报的特点,以及随着可重复性报告技术的成熟,可以实现自动化撰写的需求?
思路
利用Bookdown包把统计结果进行展现,包括文字描述和可视化展现(各种统计图表)
Bookdown程序由按照章节区分的Rmd文件组成,每个Rmd文件可以输出相应章节的文字描述,从而形成最终的文本。
data<-inciden
header<-data.frame(
col_keys=colnames(data),
second=c("地区","性别","发病数","发病率","中标率","世标率","累积率\n0-74(%)"))
data%>%flextable()%>%
set_header_df( mapping = header, key = "col_keys" )%>%
compose(j=4,value=as_paragraph("发病率\n(1/10",as_sup("5"),")"),part="header")%>%
compose(j=5,value=as_paragraph("中标率\n(1/10",as_sup("5"),")"),part="header")%>%
compose(j=6,value=as_paragraph("世标率\n(1/10",as_sup("5"),")"),part="header")%>%
colformat_num(j=4:7,digits = 5.2)%>%
set_caption(caption= paste(year.data,"年河南省肿瘤登记地区恶性肿瘤(C00-C96)发病主要指标",""))%>%
align(align="center",part="all")%>%
bold(bold=TRUE,part="header")%>%
width(j=1:2,width=0.5)%>%
width(j=3:7,width=1.0)%>%
theme_booktabs()
yearpub<-2023
report<-haven::read_sas("./report.sas7bdat")
areacode1 <- c("410902","411202","411303","411502","419001","411002")
areacode2 <- c("410901","411001","411201","411301","411501")
report <-report%>%
filter(city %in% c("11","2","33")|areacode %in% areacode1,
!(areacode %in% areacode2))%>%
mutate(year = as.numeric(year),
city = as.numeric(city))
source("./rscripts/gen_annual_report_plot.R")
大约需要一分钟的时间!!!
在线发布的年报更容易传播和共享
不足之处
待开发
随着肿瘤登记处数量的增加以及数据质量的提升,国家及大部分省份开始发布国家级或省级的肿瘤登记年报。
我们真的需要每年发布纸质年报吗?
陈琼,博士,副主任医师,硕士研究生导师
https://slides.chenq.site