This report audits data from centres participating in the ReSECT registry for the purpose of the 2026-edition of the ESTS Institutional Accreditation. The analysis covers the 3‑year period from 01-01-2023 to 31-12-2025, following ESTS Database policy, and evaluates both the volume of anatomical lung resections and the completeness of the key variables required to calculate each unit’s CPS value.
Volume Criteria
Filtering the entire data of the Lung Resection Process by:
Date from 01-01-2023 to 31-122025
Only Anatomical Lung Resections
Determining number of cases by centre and year of surgery.
According to ESTS Database Policy, exclusion of those units with less than 150 anatomical lung resections over the three year period evaluated.
Code
rp<-readRDS("./data/rp.RDS")start<-as.Date(paste0(params$min, "-01-01"))end<-as.Date(paste0(params$max, "-12-31"))rp_cps<-rp%>%dplyr::filter(between(preop_fecha_cirugia, start, end))%>%dplyr::filter(reseccion!="Wedge")years<-as.character(seq(params$min, params$max))rp_vol<-rp_cps%>%group_by( Centre =redcap_data_access_group, Year =year(preop_fecha_cirugia))%>%summarise(n =n())%>%ungroup()%>%pivot_wider(id_cols ="Centre", names_from ="Year", values_from ="n")%>%mutate(Total =rowSums(select(., all_of(years)), na.rm =TRUE))%>%arrange(desc(Total))rp_150<-rp_cps%>%group_by( Centre =redcap_data_access_group, Year =year(preop_fecha_cirugia))%>%summarise(n =n())%>%ungroup()%>%pivot_wider(id_cols ="Centre", names_from ="Year", values_from ="n")%>%mutate(Total =rowSums(select(., all_of(years)), na.rm =TRUE))%>%dplyr::filter(Total>=150)%>%arrange(desc(Total))centre_vol<-rp_vol%>%pull(Centre)centre_150<-rp_150%>%pull(Centre)
Completeness Criteria
Filtering lung cancer cases.
Determining the rate of completeness for each of the domains and variables used to calculate the Composite Performance Score (CPS). Elegibility of units for accreditation requires completeness rate > 70% for all the variables used to calculate the CPS.
Predicted Mortality (Eurolung 2): Age, Sex, FEV1ppo, BMI, Approach (Thoracotomy), Resection (Pneumonectomy), Status at Discharge(Mortality).
Diagnosis.
Invasive Mediastinal Staging.
Lymphadenectomy.
PET scan.
Warning
This table includes Units with more than 150 anatomical lung resections for any diagnosis in the three year period of interest. Completeness rates for staging, lymphadenectomy and PET are only evaluated in cases with Diagnosis of Lung Cancer or missing Diagnosis.
The content of this table should be an accurate approximation of elegibility report to be issued annually by the ESTS Data Manager Team to the ESTS Database Committee
Code
rp_mis<-rp_cps%>%# dplyr::filter(grupo_dx == "Primary Cancer") %>%group_by(Centre =redcap_data_access_group)%>%summarise( Age =round(100*mean(!is.na(edad)), 1), Sex =round(100*mean(!is.na(sexo)), 1), BMI =round(100*mean(!is.na(imc)), 1), FEV1 =round(100*mean(!is.na(fev1_porcentaje)), 1), Resection =round(100*mean(!is.na(reseccion)), 1), Extended =round(100*mean(!is.na(reseccion_extendida)), 1), Approach =round(100*mean(!is.na(abordaje)), 1), Discharge =round(100*mean(!is.na(estado_alta)), 1), Complications =round(100*mean(!is.na(comp_ingreso)), 1), Diagnosis =round(100*mean(!is.na(grupo_dx)),1), Staging =round(100*mean(!is.na(estadificacion_invasiva[grupo_dx=="Primary Cancer"|is.na(grupo_dx)])),1), Lymphad. =round(100*mean(!is.na(tipo_linfadenectomia[grupo_dx=="Primary Cancer"|is.na(grupo_dx)])),1), PET =round(100*mean(!is.na(pet[grupo_dx=="Primary Cancer"|is.na(grupo_dx)])),1))# 1. Data to objectdf_final<-rp_150%>%left_join(rp_mis, by ="Centre")%>%select(1, 6:length(.))%>%arrange(Centre)%>%column_to_rownames(var ="Centre")# 2. Table structuresketch<-htmltools::withTags(table( class ='display',thead(tr(th(),lapply(names(df_final), th))),tfoot(tr(th(),lapply(names(df_final), th)))))# 3. Table with container 'sketch'DT::datatable(df_final, container =sketch, extensions ='FixedColumns', options =list( scrollX =TRUE, fixedColumns =list(leftColumns =1), lengthChange =FALSE, searching =FALSE, paging =FALSE, info =FALSE, initComplete =JS("function(settings, json) {","$(this.api().table().header()).css({'font-size': '0.75rem'});"," $(this.api().table().footer()).css({'font-size': '0.75rem'});","}")))%>%formatStyle( columns =names(df_final), fontSize ='0.70rem'# Change this value (e.g., '12px', '14px', '0.9rem'))%>%formatStyle( columns =1:ncol(df_final), background =styleInterval(c(70, 80), c("red", "orange", NA)), color =styleInterval(c(70, 80), c("white", "white", NA)))%>%formatStyle( columns =0, fontSize ='0.50rem', fontWeight ='bold'# Opcional: Queda mejor si los nombres de centro están en negrita)
CPS Eligibility
In addition to volume and completeness criteria, a Composite Performance Score (CPS) value greater than 0 is mandatory to be elegible for accreditation. CPS values are calculated based on each unit’s performance compared with the entire ESTS cohort.