Calcolo della sopravvivenza nelle tavole di mortalità
Il calcolatore di sopravvivenza per tavole di mortalità trasforma il numero osservato di componenti ancora vivi in ogni classe di età consecutiva in valori normalizzati di sopravvivenza.
Esegui gratis nel browser
Inserisca il conteggio iniziale della coorte, seguito dai sopravvissuti rilevati alle età successive: ogni valore viene diviso per la numerosità iniziale. Il risultato riporta età, numero di sopravvissuti, sopravvivenza come proporzione e come percentuale, rendendo più semplice confrontare coorti con dimensioni iniziali diverse senza modificare le osservazioni originali.
Disponga i conteggi in ordine di età
Parta da una coorte i cui componenti siano seguiti attraverso classi di età successive. Inserisca per primo il numero di individui vivi nella prima classe, quindi aggiunga il conteggio di ogni classe successiva in ordine cronologico. Il valore iniziale deve essere maggiore di zero, perché costituisce il denominatore di tutti i calcoli di sopravvivenza. I conteggi devono essere numeri interi non negativi e, con l’avanzare dell’età, possono soltanto rimanere invariati o diminuire. Una tavola di coorte segue sempre lo stesso gruppo originario; un aumento indica normalmente che sono state aggiunte osservazioni di un’altra coorte, che una classe è stata inserita fuori sequenza o che i valori rappresentano qualcosa di diverso dai sopravvissuti. Conteggi ripetuti sono validi e indicano che nell’intervallo non sono stati registrati decessi. È valido anche uno zero finale. Usi l’età iniziale per identificare la prima osservazione e l’intervallo di età per descrivere classi equidistanti, per esempio annuali, quinquennali o semestrali. Mantenga una sola unità di età e la documenti nell’analisi, perché l’output conserva valori numerici senza presumere che siano giorni, mesi o anni.
Comprenda il calcolo della sopravvivenza
Per ogni classe di età x, la sopravvivenza specifica per età si calcola come l_x = n_x / n_0, dove n_x è il numero di componenti vivi a quell’età e n_0 è la dimensione iniziale della coorte. La prima riga presenta quindi sempre una sopravvivenza pari a 1, ossia al 100 per cento. Tutti i risultati successivi sono compresi tra zero e uno, perché una coorte chiusa non può acquisire nuovi componenti. Per esempio, se restano 760 individui dei 1,000 iniziali, la sopravvivenza è 0.76 e la percentuale visualizzata è 76. Si tratta di una proporzione della coorte originaria, non della probabilità condizionata di superare soltanto l’intervallo precedente. La distinzione è importante: la sopravvivenza nell’intervallo dividerebbe un conteggio per quello immediatamente precedente, mentre questo calcolatore usa sempre il conteggio iniziale come denominatore. I valori vengono arrotondati soltanto per eliminare il rumore della virgola mobile. L’output conserva i conteggi originali accanto ai dati normalizzati, così Lei può verificare il denominatore, distinguere campioni piccoli e grandi e riprodurre direttamente ogni calcolo.
Interpreti e confronti la tavola risultante
Legga la tavola dall’alto verso il basso per vedere quanta parte della coorte originaria rimane a ogni età. Una diminuzione graduale indica perdite distribuite su molte classi, mentre un calo netto individua un intervallo prima del quale è scomparsa una quota elevata della coorte. Un tratto piatto significa che il numero registrato di sopravvissuti non è cambiato. Poiché la sopravvivenza è normalizzata rispetto alla dimensione iniziale, due coorti con numerosità di partenza diverse possono essere confrontate sulla stessa scala proporzionale. Il confronto è più significativo quando coincidono l’origine delle età, gli intervalli, i criteri di inclusione e i metodi di osservazione. Il calcolo non corregge migrazioni, osservazioni mancanti, censura, errore campionario o ingressi successivi all’avvio della coorte. Non stima nemmeno il rischio di mortalità o l’aspettativa di vita: queste misure richiedono ulteriori ipotesi e spesso dati sui decessi o sul tempo-persona nell’intervallo. Consideri la tavola una trasformazione trasparente dei conteggi forniti, non un modello inferenziale. Prima della pubblicazione, esamini gli aumenti inattesi, confermi gli zeri, conservi la dimensione della coorte e dichiari l’unità di età.
Casi d'uso
Costruire una curva ecologica di sopravvivenza
Normalizzi i conteggi degli organismi marcati ancora vivi a età successive prima di rappresentare la sopravvivenza rispetto all’età.
Confrontare coorti sperimentali
Ponga coorti trattate e di controllo con dimensioni iniziali diverse su una scala proporzionale comune di sopravvivenza.
Verificare una tavola demografica
Ricalcoli i valori l_x dai conteggi pubblicati e mantenga ogni conteggio accanto alla sua proporzione per un confronto verificabile.
Domande frequenti
Quanto costa il calcolatore?
Può eseguirlo gratuitamente nel browser. Una richiesta tramite API costa $0.002.
Che cos’è la sopravvivenza specifica per età?
È la quota della coorte iniziale ancora viva a una determinata età, calcolata dividendo il conteggio a quell’età per quello iniziale.
Perché i conteggi non possono aumentare?
Una tavola di coorte segue un solo gruppo iniziale. Senza ingressi successivi, il numero di sopravvissuti può restare invariato o diminuire, ma non aumentare.
Posso usare intervalli di età superiori a un anno?
Sì. Imposti age_interval su qualsiasi valore finito positivo e lo interpreti sempre nella stessa unità, per esempio giorni, mesi o anni.
La sopravvivenza equivale a superare un intervallo?
No. La sopravvivenza usa come denominatore la coorte iniziale. Quella condizionata all’intervallo usa il conteggio presente all’inizio dell’intervallo.
Il conteggio finale può essere zero?
Sì. Lo zero produce una sopravvivenza pari a 0 e indica che nessun componente della coorte iniziale rimane vivo in quella classe di età.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/bio/life-table-survivorship \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"survivors":[1000,920,760,410,0]}'const res = await fetch("https://api.kit.forhosting.com/bio/life-table-survivorship", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"survivors": [
1000,
920,
760,
410,
0
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/life-table-survivorship",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"survivors": [
1000,
920,
760,
410,
0
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/life-table-survivorship", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"survivors":[1000,920,760,410,0]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"survivors":[1000,920,760,410,0]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/life-table-survivorship", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"survivors": [
1000,
920,
760,
410,
0
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.life_table_survivorship",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_items | 1000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |