0 / 0
Torna alla versione inglese della documentazione
Algoritmi di analisi di sopravvivenza di SPSS predictive analytics nei notebook
Ultimo aggiornamento: 07 ott 2024
Algoritmi di analisi di sopravvivenza di SPSS predictive analytics nei notebook

È possibile utilizzare gli algoritmi di analisi predittiva SPSS nei notebook per l'adattamento della distribuzione non parametrica, l'adattamento della distribuzione parametrica o la modellazione della regressione parametrica.

Adattamento distribuzione non parametrica

L'analisi di sopravvivenza analizza i dati in cui la variabile risultato è il tempo fino alla ricorrenza di un evento di interesse. La distribuzione dei tempi degli eventi è tipicamente descritta da una funzione di sopravvivenza.

Non - parametric Distribution Fitting (NPDF) fornisce una stima della funzione di sopravvivenza senza fare alcuna ipotesi sulla distribuzione dei dati. NPDF include la stima Kaplan - Meier, tabelle di vita e algoritmi di estensione specializzati per supportare dati di eventi ricorrenti, censurati ad intervalli e censurati a sinistra.

Codice di esempioPython :

from spss.ml.survivalanalysis import NonParametricDistributionFitting
from spss.ml.survivalanalysis.params import DefinedStatus, Points, StatusItem

npdf = NonParametricDistributionFitting(). \
    setAlgorithm("KM"). \
    setBeginField("time"). \
    setStatusField("status"). \
    setStrataFields(["treatment"]). \
    setGroupFields(["gender"]). \
    setUndefinedStatus("INTERVALCENSORED"). \
    setDefinedStatus(
    DefinedStatus(
        failure=StatusItem(points = Points("1")),
        rightCensored=StatusItem(points = Points("0")))). \
    setOutMeanSurvivalTime(True)

npdfModel = npdf.fit(df)
predictions = npdfModel.transform(data)
predictions.show()

PDF (Parametric Distribution Fitting)

L'analisi di sopravvivenza analizza i dati in cui la variabile risultato è il tempo fino alla ricorrenza di un evento di interesse. La distribuzione dei tempi degli eventi è tipicamente descritta da una funzione di sopravvivenza.

Parametric Distribution Fitting (PDF) fornisce una stima della funzione di sopravvivenza confrontando le funzioni per diverse distribuzioni note (esponenziale, Weibull, log - normale e log - logistica) per determinare quale, se presente, descrive meglio i dati. Inoltre, è possibile confrontare le distribuzioni per due o più gruppi di casi.

Codice Python excample:

from spss.ml.survivalanalysis import ParametricDistributionFitting
from spss.ml.survivalanalysis.params import DefinedStatus, Points, StatusItem

pdf = ParametricDistributionFitting(). \
    setBeginField("begintime"). \
    setEndField("endtime"). \
    setStatusField("status"). \
    setFreqField("frequency"). \
    setDefinedStatus(
        DefinedStatus(
         failure=StatusItem(points=Points("F")),
         rightCensored=StatusItem(points=Points("R")),
         leftCensored=StatusItem(points=Points("L")))
    ). \
    setMedianRankEstimation("RRY"). \
    setMedianRankObtainMethod("BetaFDistribution"). \
    setStatusConflictTreatment("DERIVATION"). \
    setEstimationMethod("MRR"). \
    setDistribution("Weibull"). \
    setOutProbDensityFunc(True). \
    setOutCumDistFunc(True). \
    setOutSurvivalFunc(True). \
    setOutRegressionPlot(True). \
    setOutMedianRankRegPlot(True). \
    setComputeGroupComparison(True)

pdfModel = pdf.fit(data)
predictions = pdfModel.transform(data)
predictions.show()

Creazione di modelli di regressione parametrica

Il modello di regressione parametrica (PRM) è una tecnica di analisi di sopravvivenza che incorpora gli effetti delle covariate sui tempi di sopravvivenza. PRM include due tipi di modelli: tempi di errore accelerati e fragilità. I modelli di tempo di errore accelerato presuppongono che la relazione del logaritmo del tempo di sopravvivenza e delle covariate sia lineare. I modelli di fragilità, o effetti casuali, sono utili per analizzare eventi ricorrenti, dati di sopravvivenza correlati o quando le osservazioni sono raggruppate in gruppi.

PRM seleziona automaticamente la distribuzione del tempo di sopravvivenza (esponenziale, Weibull, log - normale o log - logistica) che meglio descrive i tempi di sopravvivenza.

Codice di esempioPython :

from spss.ml.survivalanalysis import ParametricRegression
from spss.ml.survivalanalysis.params import DefinedStatus, Points, StatusItem

prm = ParametricRegression(). \
    setBeginField("startTime"). \
    setEndField("endTime"). \
    setStatusField("status"). \
    setPredictorFields(["age", "surgery", "transplant"]). \
    setDefinedStatus(
        DefinedStatus(
         failure=StatusItem(points=Points("0.0")),
         intervalCensored=StatusItem(points=Points("1.0"))))

prmModel = prm.fit(data)
PMML = prmModel.toPMML()
statXML = prmModel.statXML()
predictions = prmModel.transform(data)
predictions.show()

Argomento principale SPSS algoritmi di analisi predittiva

Ricerca e risposta AI generativa
Queste risposte sono generate da un modello di lingua di grandi dimensioni in watsonx.ai basato sul contenuto della documentazione del prodotto. Ulteriori informazioni