Waiting
Login processing...

Trial ends in Request Full Access Tell Your Colleague About Jove
Click here for the English version

Cancer Research

Une validation du paysage basé sur R d’un modèle de risque concurrent

Published: September 16, 2022 doi: 10.3791/64018
* These authors contributed equally

Summary

Le présent protocole décrit les codes en R pour évaluer les capacités de discrimination et d’étalonnage d’un modèle de risque concurrent, ainsi que les codes pour la validation interne et externe de celui-ci.

Abstract

Le modèle à risques proportionnels de Cox est largement appliqué pour les analyses de survie en milieu clinique, mais il n’est pas en mesure de faire face à de multiples résultats de survie. Différent du modèle traditionnel à risques proportionnels de Cox, les modèles de risque concurrents tiennent compte de la présence d’événements concurrents et de leur combinaison avec un nomogramme, un dispositif de calcul graphique, qui est un outil utile pour les cliniciens pour effectuer une prédiction pronostique précise. Dans cette étude, nous présentons une méthode pour établir le nomogramme de risque concurrent, c’est-à-dire l’évaluation de ses capacités de discrimination (c.-à-d. indice de concordance et aire sous la courbe) et d’étalonnage (c.-à-d. courbes d’étalonnage), ainsi que l’avantage net (c.-à-d. analyse de la courbe de décision). De plus, une validation interne à l’aide de rééchantillonnages bootstrap de l’ensemble de données original et une validation externe à l’aide d’un ensemble de données externe du nomogramme de risque concurrent établi ont également été effectuées pour démontrer sa capacité d’extrapolation. Le nomogramme du risque concurrent devrait être un outil utile pour les cliniciens afin de prédire le pronostic en tenant compte des risques concurrents.

Introduction

Au cours des dernières années, des facteurs pronostiques émergents ont été identifiés avec le développement de la médecine de précision, et les modèles pronostiques combinant des facteurs moléculaires et clinicopathologiques attirent de plus en plus l’attention dans les milieux cliniques. Cependant, les modèles non graphiques, tels que le modèle à risques proportionnels de Cox, avec les résultats des valeurs des coefficients, sont difficiles à comprendre pour les cliniciens1. En comparaison, un nomogramme est un outil de visualisation de modèles de régression (incluant le modèle de régression de Cox, le modèle de risque concurrent, etc.), un diagramme bidimensionnel conçu pour le calcul graphique approximatif d’une fonction mathématique2. Il permet d’évaluer différents niveaux de variables dans un modèle clinique et de calculer des scores de risque (RS) pour prédire le pronostic.

L’évaluation du modèle est essentielle dans la construction du modèle, et deux caractéristiques sont généralement acceptées pour l’évaluation : la discrimination et l’étalonnage. Dans les modèles cliniques, la discrimination fait référence à la capacité d’un modèle à séparer les personnes qui développent des événements de celles qui n’en développent pas, comme les patients qui meurent par rapport à ceux qui restent en vie, et l’indice de concordance (indice C) ou l’aire sous la courbe des caractéristiques opératoires du récepteur (ASC) sont généralement utilisés pour la caractériser 3,4. L’étalonnage est un processus de comparaison des probabilités prédites d’un modèle avec les probabilités réelles, et les courbes d’étalonnage ont été largement utilisées pour le représenter. De plus, la validation du modèle (validation interne et externe) est une étape importante dans la construction du modèle, et seuls les modèles validés peuvent être extrapolés5.

Le modèle à risques proportionnels de Cox est un modèle de régression utilisé en recherche médicale pour étudier les associations entre les facteurs pronostiques et le statut de survie. Cependant, le modèle à risques proportionnels de Cox ne tient compte que de deux statuts de résultat [Y (0, 1)], tandis que les sujets de l’étude font souvent face à plus de deux statuts et que des risques concurrents surviennent [Y (0, 1, 2)]1. La survie globale (SG), qui est définie comme le temps écoulé entre la date d’origine (p. ex. le traitement) et la date du décès, quelle qu’en soit la cause, est le critère d’évaluation le plus important dans l’analyse de la survie. Cependant, le système d’exploitation ne parvient pas à différencier les décès spécifiques au cancer des décès non spécifiques au cancer (par exemple, les événements cardiovasculaires et autres causes non liées), ignorant ainsi les risques concurrents6. Dans ces situations, le modèle de risque concurrent est préféré pour la prédiction du statut de survie avec la prise en compte des risques concurrents7. La méthodologie de construction et de validation des modèles à risques proportionnels de Cox est bien établie, alors qu’il y a eu peu de rapports concernant la validation de modèles de risque concurrents.

Dans notre étude précédente, un nomogramme de risque concurrent spécifique, une combinaison d’un nomogramme et d’un modèle de risque concurrent, et une estimation du score de risque basée sur un modèle de risque concurrent ont été établis8. Cette étude vise à présenter différentes méthodes d’évaluation et de validation du nomogramme de risque concurrent établi, qui devrait servir d’outil utile aux cliniciens pour prédire le pronostic en tenant compte des risques concurrents.

Subscription Required. Please recommend JoVE to your librarian.

Protocol

La base de données Surveillance, Epidemiology, and End Results (SEER) est une base de données sur le cancer en libre accès qui ne contient que des données anonymisées sur les patients (ID SEER : 12296-Nov2018). Par conséquent, cette étude a été exemptée de l’approbation du comité d’examen de l’hôpital affilié Jinhua, École de médecine de l’Université du Zhejiang.

1. Préparation des données et des emballages R

  1. Préparez et importez les données.
    > Ensemble de données <- lire.csv(« .../Données sur le cancer du sein.xlsx ») #Import données .
    REMARQUE: Les données sont téléchargées dans le fichier supplémentaire 1.
  2. Installez et chargez les packages R.
    > paquets <- c(« rms »,"cmprsk »,"mstate »,"survival »,"riskRegression », »
    prodlim »)
    > req.pcg <- function(pcg){
    NEW <- PCG[!( pcg %in% installed.packages()[, « Package"])]
    if (length(new)) install.packages(new, dependencies = T)
    sapply(pcg, require, ch = T)
    }
    > req.pcg(packages)

    Remarque : Effectuez les procédures suivantes basées sur le logiciel R (version 3.6.2) à l’aide des packages rms, cmprsk, mstate, survival, riskRegression et prodlim (http://www.r-projectrg/).

2. Établir des nomogrammes de risque concurrents selon deux méthodes distinctes

  1. Établir le nomogramme de risque concurrent de manière directe.
    > mod_cph <- cph(Surv(Survivalmonths, statut) ~ facteur1+ facteur2+...,
    x=T, y=T, surv=T, data=Dataset)
    > nom <- nomogram(mod_cph, fun=list(function(x) 1-surv_cph(36, x)...),
    funlabel=c(« 3-year event1 Prob. » ...), lp=F)
    #Take le 36e mois à titre d’exemple.
    > mod_crr <- crr(Survivalmonths, fstatus, failcode=1, cov1=cov)
    > score <- log(log((1-real.3y),(1-cif.min36)))/(maxbeta/100)
    > plot(nom)
  2. Établir le nomogramme de risque concurrent dans une méthode pondérée.
    > df.w <- crprep(« Survivalmonths », » fstatus »,
    data=Dataset, trans=c(1,2), cens=0,
    keep=c(« fact1 », » factor2 »...))
    > mod.w <- cph(Surv(Tstart, Tstop, status==1) ~ fact1+factor2+...,
    data=df.w, weight=weight.cens, subset=failcode==1, surv=T)
    > nom.w <- nomogram(mod.w...)

3. Capacité de discrimination du nomogramme du risque concurrent

  1. Indice C pour la discrimination
    1. Ajustez le cov de la matrice dans le modèle de risque concurrent mod_crr. et obtenez un SUV matriciel prédit.
      > SUV <- predict.crr(mod_crr, cov)
    2. Obtenez les incidences cumulées dans un certain mois à partir du SUV et calculez l’indice C avec la fonction rcorr.cens.
      > CIF36 <- SUV[which(suv[,1]==36),][-1]
      > rcorr <- rcorr.cens(1-cif36,Surv(Dataset$Survivalmonths,Dataset$tumordeath))
      > cindex <- rcorr[1]
  2. AUC pour discrimination
    1. Évaluez les performances prédictives du modèle de risque concurrent à l’aide de la fonction Score (package riskRegression).
      > fgr.w <- FGR(Hist(Survivalmonths, fstatus) ~ factor1+ factor2+..., data=Dataset, cause=1)
      > score <- Score(list(« Fine-Gray » = fgr.w),
    2. Extrayez l’AUC du « score ».
      > score$AUC

4. Capacité d’étalonnage des modèles de risque concurrents

  1. Courbes d’étalonnage avec un intervalle de confiance à 95 % du modèle de risque concurrent
    1. Obtenez une trame de données avec les incidences cumulées de chaque individu dans un certain temps d’échec.
      > cif36 <- data.frame(cif36) #Take le 36e mois à titre d’exemple.
      > colnames(cif36.36_o)<-c(« 36m »)
    2. Divisez la cohorte en fonction des incidences cumulatives estimées en cinq sous-groupes et calculez les incidences cumulatives moyennes prévues de chaque sous-groupe.
      > groupe36 <- cut(cif36$'36m',
      quantile(CIF36$'36m', seq(0, 1, 0.2)),
      include.lowest = VRAI, étiquettes = 1:5)
      > moyenne36 <- as.vector(by(cif36 $'36m', group36, mean))
    3. Calculez les incidences cumulées observées, c’est-à-dire les incidences cumulatives réelles, à l’aide de la fonction cuminc, puis obtenez les incidences cumulées observées avec un intervalle de confiance de 95% dans un certain temps de défaillance.
      > cum36 <- cuminc(Dataset$Survivalmonths,Dataset$fstatus,group36)
      > obs36 <- timepoints(cum36,Dataset$Survivalmonths)$est[c(1:5),36]
      > obs36var <- timepoints(cum36,Dataset$Survivalmonths)$var[c(1:5),36]
      > df <- data.frame(mean36, obs36, obs36var)
    4. Tracez la courbe d’étalonnage avec les incidences cumulées prévues comme l’axe des x et les incidences cumulées observées comme l’axe des y en utilisant la fonction ggplot.
      > ggplot(df)+ geom_point(aes(x=mean36,y=obs36),col="red »)+
      geom_point(aes(x=mean36,y=obs36),col="red »,pch=4)+
      geom_line(col="red »,aes(x=mean36,y=obs36))+
      geom_errorbar(col="rouge »,aes(x=moyenne36,y=obs36+1,96
      *sqrt(obs36var)),
      ymin =obs36-1.96*sqrt(obs36var), ymax = obs36+1.96
      *sqrt(obs36var))
      geom_abline(lty=3,lwd=2,col=c(rgb(0,118,192,
      maxColorValue=255)))
  2. Courbe d’étalonnage avec scores de risque du modèle de risque concurrent
    1. Évaluez chaque niveau de toutes les variables et obtenez le RS total.
      > Dataset$factor1[Dataset$factor1==1] <- factor1.scale["Factor1_level1"]
      >
      ... #For exemple, Dataset$histology[Dataset$histology==1]<-histology.scale["Histology1"]
      > Dataset$rs <- Dataset$factor1+Dataset$factor2+Dataset$factor3+...
      REMARQUE : Obtenez le RS total pour chaque patient en additionnant les points de chaque variable.
    2. Comptez les fréquences et calculez les incidences cumulatives observées des différents scores de risque totaux.
      > rs.freq <- as.data.frame(table(Dataset$rs))
      > obs.36 <- vector(mode="numeric », length=nrow(rs.freq))
      > for (i in 1: nrow(rs.freq)) {
      dataset <- sous-ensemble(Dataset,Dataset$rs== rs.freq [i,1])
      cif.dataset <- cuminc(dataset$Survivalmonths,dataset$death3)
      cif36.dataset <- points temporels(cif.dataset,36)
      obs.36[i] <- cif36.dataset$est[1]}
    3. Définissez la plage de l’axe des x et calculez les incidences cumulatives prévues des scores de risque totaux.
      > RS <- range(nom$total.points)
      > x.36 <- seq(min(RS),max(RS),0.01)
      > pré.36 <- 1-(1-cif.min36)^exp(x.36*maxbeta/100)
    4. Tracez la courbe d’étalonnage avec les scores de risque.
      > plot(x.36, pre.36, type='l'...)
      > par(nouveau=VRAI)
      > Plot(as.vector(rs.freq[,1]), obs.36... )

5. Analyse de la courbe de décision des modèles de risque concurrents

  1. Source la fonction stdca pour effectuer l’analyse de la courbe de décision.
    > source(« stdca. R")
  2. Extrayez les équations polynomiales du nomogramme pour calculer la probabilité de survie.
    > nomogramEx(nomo = nom)
    > Dataset$predictors <- A * (Dataset$rs ^3) + B * (Dataset$rs ^2) + C * Dataset$rs + D
    #predictors sont des probabilités prédites de décès par cancer calculées par le nomogramme établi
  3. Effectuez l’analyse de la courbe de décision.
    > stdca(data = Dataset, outcome = « status », ttoutcome = « Survivalmonth », timepoint = 36,
    predictors = « predictors », cmprsk = TRUE, smooth = FALSE, probability = FALSE)

    REMARQUE : Pour évaluer un résultat en présence d’un risque concurrent, TRUE doit être choisi pour cmprsk.

6. Validation interne à l’aide de la méthode bootstrap

  1. Obtenez la moyenne des incidences cumulatives prévues à l’aide de la méthode bootstrap.
    1. Rééchantillonnez le jeu de données d’origine (Dataset) avec replace pour générer le jeu de données bootstrap (Dataset_in). Établissez un modèle de risque concurrent (mod.in_crr) avec l’ensemble de données bootstrap. Utilisez la fonction predict.crr pour prédire mod.in_crr et boucler b fois pour générer suvall.in.
      B=b
      suvall.in <- liste()
      for(j dans 1:B){
      Dataset_in <- Jeu de données[échantillon(c(1:nrow(Jeu de données)),nrow(Jeu de données),
      replace = TRUE),]
      attacher (Dataset_ in)
      Cov. dans <- model.matrix(~factor1+ factor2+...) [,-1]
      Mod. in _crr <- crr(Survivalmonths, fstatus, failcode=1, cov1=cov.in)
      detach(Dataset. inner)
      SUV. dans <- predict.crr(mod. en _crr, cov)
      suvall.in[[j]] <- suv.in}
    2. Obtenez la moyenne des incidences cumulatives prévues au cours d’un mois donné.
      Cif36all. inner <- vector(mode="numeric », length=nrow(Dataset))
      for (k in 1:B) {
      Cif36all. intérieur<- cif36all. inner+ suvall. inner[[k]][which(suvall. inner[[k]][,1]==36),][-1]
      }
      cif36.in <- cif36all.in/B
  2. Calculez l’indice C en utilisant la validation croisée interne avec la fonction rcorr.cens.
    rcorr. inner <- rcorr.cens(1-cif36.in,Surv(Dataset$Survivalmonths,Dataset$tumordeath))
    cindex. < interne - rcorr. intérieur[1]
  3. Calibrer à l’aide de la validation interne croisée.
    REMARQUE : Les codes de la courbe d’étalonnage du modèle de risque concurrent avec validation interne sont similaires aux codes de la section 4, tandis que le VUS a été remplacé par suv.in.

7. Validation externe du modèle de risque concurrent

  1. Obtenez les incidences cumulatives prévues à l’aide de données externes. Obtenez les incidences cumulatives prévues avec la matrice des variables de données externes (cov.ex).
    suv.ex <- predict.crr(mod_crr,cov.ex)
    cif36.ex <- suv.ex [which(suv.ex $time=="36 »),][-1]
  2. Calculez l’indice C à l’aide d’une validation externe.
    rcorr.ex <- rcorr.cens(1-cif36.ex,Surv(Dataset.ex$Survivalmonths,Dataset.ex$tumordeath))
    cindex.ex <- rcorr.ex[1]
  3. Calibrer à l’aide d’une validation externe.
    REMARQUE: Les codes de la courbe d’étalonnage du modèle de risque concurrent avec validation interne sont similaires aux codes de la section 4, tandis que suv est remplacé par suv.ex.

Subscription Required. Please recommend JoVE to your librarian.

Representative Results

Dans cette étude, les données des patientes atteintes d’un cancer du sein ont été extraites de la base de données SEER et ont servi d’exemple. La base de données SEER fournit des données sur le cancer représentant environ 34,6% de la population des États-Unis, et l’autorisation d’accéder à la base de données a été obtenue (numéro de référence 12296-Nov2018).

Deux nomogrammes (figure 1), tous deux comprenant le type histologique, le grade différencié, le stade T et le stade N, ont été établis à l’aide de la méthode directe et de la méthode pondérée, respectivement. Les points de chaque niveau de variables et les probabilités correspondant au total des points étaient presque les mêmes, tandis que de légères différences ont été observées. Zhang et al. ont introduit une approche « pondérée » pour établir un nomogramme de risque concurrent, qui a d’abord transformé les données originales en données pondérées (en utilisant la fonction crprep), puis a construit un modèle de régression de Cox avec les données pondérées (en utilisant la fonction coxph), et enfin a établi un nomogramme de risque concurrent avec le modèle de régression de Cox (en utilisant le nomogramme de fonction)9. En revanche, l’approche « directe » de cette étude est totalement différente de l’approche « pondérée ». En bref, les paramètres générés à partir du modèle de risque concurrent (utilisant la fonction crr) ont remplacé les paramètres du modèle de régression de Cox (utilisant la fonction coxph), qui a finalement été utilisé pour établir le nomogramme de risque concurrent (à l’aide du nomogramme de fonction). Dans la comparaison des nomogrammes établis par la méthode « pondérée » et la méthode « directe », les deux nomogrammes étaient similaires en général, bien que de légères différences aient pu être observées. La méthode « directe » de l’étude est plus précise car elle permet d’obtenir directement les paramètres de construction du nomogramme (avec la formule « score=log(log((1-real.3y),(1-cif.min36)))/(maxbeta/100) » dans la section 2).

Dans rcorr.cens(X, Surv), X est un prédicteur numérique avec des incidences cumulatives à n’importe quel point temporel, et Surv est un objet de survie contenant des mois et un statut de survie. Lorsque Surv définit les patients subissant des événements concurrents comme censurés et génère ensuite une table de mortalité, la paire ordonnée évaluable est identique. L’indice C du modèle de risque concurrent sans validation était de 0,7978 (IC à 95 % = 0,7650-0,8305), ce qui indique que ce modèle avait une capacité de discrimination modérée. L’analyse bootstrap a été répétée 500 fois, et les résultats 500 ont ensuite été moyennés pour produire une seule estimation pour le calcul de l’indice C. L’indice C dans la validation interne était de 0,7978 (IC à 95 % = 0,7651-0,8305), ce qui était similaire à l’indice C dans l’ensemble de données original. Un ensemble de données externe a été intégré au modèle de risque concurrent, et l’indice C dans la validation externe était de 0,5071 (IC à 95 % = 0,4637-0,5505). L’ASC du modèle de risque concurrent a été calculée à partir de l’ensemble de données original de l’étude. L’ASC du 36e mois était de 0,8461 (IC à 95 % = 0,8232-0,8691), ce qui démontre la capacité de discrimination du modèle.

Comme le montre la figure 2A, les points de la courbe d’étalonnage étaient proches de la ligne d’équivalence, et l’IC à 95 % de la fréquence observée tombait dans la droite d’équivalence dans chaque groupe, indiquant la capacité d’étalonnage précise du modèle. Les courbes d’étalonnage utilisant la validation interne et externe sont montrées à la figure 2B et à la figure 2C, respectivement, indiquant que le modèle construit avait une bonne capacité d’étalonnage dans la validation interne mais une faible capacité dans la validation externe.

Comme le montre la figure supplémentaire 1, les points représentant les incidences cumulatives observées répartis autour de la ligne représentent les incidences cumulatives prévues, et aucune différence significative n’a été observée entre les incidences observées et prévues. Les résultats de l’analyse de la courbe de décision sont présentés à la figure 3, qui présente les variations de l’avantage net avec une probabilité seuil croissante.

Figure 1
Figure 1 : Établissement du nomogramme du risque concurrent à l’aide de deux méthodes. (A) Nomogramme établi à l’aide de la méthode directe. (B) Nomogramme établi selon la méthode pondérée. Histologie : 1, carcinome canalaire invasif; 2, carcinome lobulaire invasif; 3, carcinome canalaire invasif + carcinome lobulaire invasif. Grade: 1, bien différencié; 2, modérément différencié; 3, peu différencié. Stade T: 1, stade T1; 2, étage T2; 3, étage T3; 4, étage T4. Stade N: 0, stade N0; 1, stade N1; 2, stade N2; 3, étage N3. Abréviation : ECI = décès par cancer. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 2
Figure 2 : Courbes d’étalonnage du nomogramme de risque concurrent. (A) Courbe d’étalonnage avec un intervalle de confiance du modèle de risque concurrent établi. (B) Courbe d’étalonnage du modèle de risque concurrent dans la validation interne. (C) Courbe d’étalonnage du modèle de risque concurrent dans la validation externe. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Figure 3
Figure 3 : Analyse de la courbe de décision du nomogramme de risque concurrent. L’avantage net est tracé en fonction de la probabilité seuil. La ligne « tous » montre l’avantage net en considérant tous les patients qui ont subi un décès spécifique au cancer, et la ligne « aucun » est l’avantage net en considérant tous les patients qui n’ont pas subi de décès spécifique au cancer. Veuillez cliquer ici pour voir une version agrandie de cette figure.

Fichier supplémentaire 1 : Données sur le cancer du sein. Définition du titre : grademodifier, grade différencié ; histologie, type histologique; stade T, stade T tumoral; stadeN, stade N tumoral; Mois de survie, le temps écoulé entre la date du traitement et la date du décès dû à une cause ou à un censeur; décès, décès (y compris décès par cancer et décès non lié au cancer) ou censure; décès3, décès spécifique au cancer, décès non lié au cancer ou censure. Veuillez cliquer ici pour télécharger ce fichier.

Figure supplémentaire 1 : Courbe d’étalonnage avec scores de risque du modèle de risque concurrent établi. Les points représentant les incidences cumulatives observées ont été répartis autour de la ligne représentant les incidences cumulatives prévues. Veuillez cliquer ici pour télécharger ce fichier.

Subscription Required. Please recommend JoVE to your librarian.

Discussion

Cette étude a comparé des nomogrammes de risque concurrents établis par deux méthodes distinctes et a procédé à l’évaluation et à la validation des nomogrammes établis. Plus précisément, cette étude a fourni un tutoriel étape par étape pour établir le nomogramme basé sur une méthode directe, ainsi que pour calculer l’indice C et tracer les courbes d’étalonnage.

Le progiciel efficace du logiciel R est largement utilisé pour la construction et l’évaluation de modèles à risques proportionnels de Cox, mais il n’est pas applicable aux modèles de risque concurrents. Pour les modèles avec des résultats multiples, Zhang et al. ont rapporté une validation des modèles de risque concurrents en utilisant le package riskRegression du logiciel R, qui calcule l’ASC et le score Brier pour évaluer la capacité de discrimination et trace les courbes d’étalonnage pour valider la capacité d’étalonnage 9,10.

Cependant, le package riskRegression présente certaines lacunes, telles que l’échec du calcul de l’indice C. L’indice C est la proportion de paires ordonnées évaluables concordantes dans toutes les paires ordonnées évaluables (indice C = paires ordonnées évaluables concordantes/toutes les paires ordonnées évaluables)3,11. Dans l’analyse traditionnelle de survie à deux statuts, seules les paires dans lesquelles les deux patients souffrent tous deux de la mort (Di = 1, Dj = 1) ou le patient qui souffre de la mort ont des mois de survie plus courts que le patient qui échoue peuvent devenir une paire ordonnée évaluable (Di = 1, Dj = 0, Ti < Tj) (i = patient i, j = patient j, T = temps, D = statut, 1 = décès, 0 = échec). Dans le contexte des risques concurrents, les patients qui échouent du risque concurrent restent toujours dans l’ensemble du risque car il ne peut que déduire que les patients qui subissent des événements concurrents ont des mois de survie plus longs qu’observés. De plus, seules les paires dans lesquelles les deux patients souffrent tous deux de la mort (Di = 1, Dj = 1) ou le patient qui subit la mort a des mois de survie plus courts que le patient qui échoue ou connaît un événement concurrent peut devenir une paire ordonnée évaluable (Di = 1, Dj = 0|2, Ti < Tj) (i = patients i, j = patient j, T = temps, D = statut, 2 = épreuve concurrente, 1 = décès, 0 = échec). Par conséquent, cette étude a utilisé la fonction rcorr.cens pour calculer l’indice C.

Dans la validation interne du modèle de risque concurrent, cette étude a appliqué la méthode bootstrap et a démontré une bonne performance du modèle construit12. Une division aléatoire en ensembles de données d’apprentissage et de test peut être problématique, car l’ensemble de données de test est susceptible d’être particulièrement facile (ou difficile) à prédire13. La méthode K-fold peut également être utilisée pour la validation croisée, alors qu’elle a été appliquée moins fréquemment dans la validation de modèle 5,14. Cette étude a également effectué une validation externe du modèle de risque concurrent, mais elle n’a pas donné de bons résultats dans le contexte externe. Cela peut être dû au fait que nos données utilisées pour la validation externe n’étaient qu’un rééchantillonnage des données originales.

Cependant, cette étude comporte plusieurs limites. Tout d’abord, notre méthodologie est basée sur le logiciel R; Par conséquent, les utilisateurs ont besoin d’une certaine connaissance de la programmation, ce qui peut limiter son public cible. En outre, il existe des centaines de lignes de code, et certains codes doivent être modifiés pour différentes données; nous espérons développer un package R « tout-en-un » dans les recherches futures qui pourra être appliqué à toutes sortes de données. Cette étude n’a pas d’autres données sur le cancer du sein pour effectuer une validation externe et n’a pas eu d’autre choix que de rééchantillonner à partir des données originales, mais les méthodes et les codes de validation externe sont les mêmes. Plus important encore, la linéarité entre les covariables et les résultats supposés dans l’étude peut ne pas être vraie dans une étude réelle, et l’interaction et la non-linéarité devraient être prises en compte, pour lesquelles la modélisation d’ensemble peut être utile15.

En conclusion, cette étude a établi le nomogramme de risque concurrent dans une méthode « directe » et a évalué ses capacités de discrimination et d’étalonnage dans des ensembles de données originaux, internes et externes. On espère que le nomogramme du risque concurrent servira de complément à l’ensemble riskRegression dans R et fournira une aide dans la gestion des événements cliniques à risque concurrents.

Subscription Required. Please recommend JoVE to your librarian.

Disclosures

Les auteurs déclarent qu’ils n’ont pas d’intérêts concurrents.

Acknowledgments

L’étude a été financée par des subventions du Medical Science & Technology Plan Project de la province du Zhejiang (numéros de subvention 2013KYA212), du programme général de la Fondation des sciences naturelles de la province du Zhejiang (numéro de subvention Y19H160126) et du programme clé du Bureau municipal des sciences et technologies de Jinhua (numéro de subvention 2016-3-005, 2018-3-001d et 2019-3-013).

Materials

Name Company Catalog Number Comments
R software None Not Applicable Version 3.6.2 or higher 
Computer system Microsoft  Windows 10  Windows 10 or higher

DOWNLOAD MATERIALS LIST

References

  1. Andersen, P. K., Gill, R. D. Cox's regression model for counting processes: A large sample study. The Annals of Statistics. 10 (4), 1100-1120 (1982).
  2. Lubsen, J., Pool, J., vander Does, E. A practical device for the application of a diagnostic or prognostic function. Methods of Information in Medicine. 17 (2), 127-129 (1978).
  3. Harrell, F. E., Lee, K. L., Mark, D. B. Multivariable prognostic models: Issues in developing models, evaluating assumptions and adequacy, and measuring and reducing errors. Statistics In Medicine. 15 (4), 361-387 (1996).
  4. Hung, H., Chiang, C. -T. Estimation methods for time-dependent AUC models with survival data. The Canadian Journal of Statistics / La Revue Canadienne de Statistique. 38 (1), 8-26 (2010).
  5. Moons, K. G. M., et al. Risk prediction models: I. Development, internal validation, and assessing the incremental value of a new (bio)marker. Heart. 98 (9), 683-690 (2012).
  6. Fu, J., et al. Real-world impact of non-breast cancer-specific death on overall survival in resectable breast cancer. Cancer. 123 (13), 2432-2443 (2017).
  7. Fine, J. P., Gray, R. J. A proportional hazards model for the subdistribution of a competing risk. Journal of the American Statistical Association. 94 (446), 496-509 (1999).
  8. Wu, L., et al. Establishing a competing risk regression nomogram model for survival data. Journal of Visualized Experiments. (164), e60684 (2020).
  9. Zhang, Z., Geskus, R. B., Kattan, M. W., Zhang, H., Liu, T. Nomogram for survival analysis in the presence of competing risks. Annals of Translational Medicine. 5 (20), 403 (2017).
  10. Zhang, Z. H., et al. Overview of model validation for survival regression model with competing risks using melanoma study data. Annals Of Translational Medicine. 6 (16), 325 (2018).
  11. Newson, R. Confidence intervals for rank statistics: Somers' D and extensions. Stata Journal. 6 (3), 309-334 (2006).
  12. Davison, A. C., Hinkley, D. V., Schechtman, E. Efficient bootstrap simulation. Biometrika. 73 (3), 555-566 (1986).
  13. Roecker, E. B. Prediction error and its estimation for subset-selected models. Technometrics. 33 (4), 459-468 (1991).
  14. Steyerberg, E. W., Harrell, F. E. Prediction models need appropriate internal, internal-external, and external validation. Journal of Clinical Epidemiology. 69, 245-247 (2016).
  15. Zhang, Z., Chen, L., Xu, P., Hong, Y. Predictive analytics with ensemble modeling in laparoscopic surgery: A technical note. Laparoscopic, Endoscopic and Robotic Surgery. 5 (1), 25-34 (2022).

Tags

Recherche sur le cancer numéro 187 Modèle de risque concurrent nomogramme discrimination étalonnage validation de modèle
Une validation du paysage basé sur R d’un modèle de risque concurrent
Play Video
PDF DOI DOWNLOAD MATERIALS LIST

Cite this Article

Lin, H., Zheng, H., Ge, C., Ling,More

Lin, H., Zheng, H., Ge, C., Ling, L., Yin, R., Wang, Q., Zhang, X., Zhou, S., Jin, X., Xu, X., Fu, J. An R-Based Landscape Validation of a Competing Risk Model. J. Vis. Exp. (187), e64018, doi:10.3791/64018 (2022).

Less
Copy Citation Download Citation Reprints and Permissions
View Video

Get cutting-edge science videos from JoVE sent straight to your inbox every month.

Waiting X
Simple Hit Counter