Sto cercando di scrivere questa formula in R:Come somma su j = 1 a (i-1) per ogni elemento di [i] (digitando formula da articolo)
Il formula prende i seguenti input:
- M: numero annuo di morti (mortalità per tutte le cause);
- D: numero annuo di morti per cancro (mortalità per cancro);
- R: numero annuo di casi di cancro registrati;
- N: dimensione della popolazione di metà anno.
- w: larghezza di ogni intervallo di età, ad es. [0-5) è largo 5 anni, e l'intervallo finale è 85+ anni, e quindi infinitamente ampio.
Tutti i vettori di input sopra menzionati sono lunghi 18 elementi, poiché si riferiscono a 18 intervalli di età. I primi 17 intervalli di età sono di 5 anni e l'ultimo intervallo (85+ anni) è infinitamente ampio.
Lo stime formula durata del rischio di cancro, come proposto da Sasieni et al 2011 http://www.nature.com/bjc/journal/v105/n3/full/bjc2011250a.html
E 'il che non so come digitare.
Di seguito ho cercato di implementare le parti dell'equazione prima e dopo lo .
# Input data:
M <- c(140L, 12L, 12L, 59L, 94L, 101L, 117L, 213L, 368L, 607L, 1025L,
1488L, 2255L, 2787L, 3257L, 3715L, 4231L, 6281L)
R <- c(42L, 22L, 28L, 54L, 77L, 108L, 169L, 227L, 293L, 531L, 863L,
1464L, 2591L, 3334L, 3045L, 2605L, 1890L, 1261L)
D <- c(2L, 1L, 2L, 6L, 4L, 7L, 15L, 26L, 67L, 120L, 304L, 497L, 883L,
1158L, 1321L, 1318L, 1177L, 1065L)
N <- c(167323L, 168088L, 176017L, 180986L, 168189L, 155506L, 174274L,
195538L, 207287L, 204711L, 183802L, 174342L, 183415L, 151277L,
104199L, 71782L, 47503L, 33946L)
# W width of age interval
w <- c(5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,Inf)
# function
v1 <- numeric()
for(i in 1:length(R)) {
v1[i] <- R[i]/(R[i] + M[i] - D[i]) * (1 - exp(- (w[i]/N[i]) * (R[i] + M[i] - D[i])))
}
sum(v1)
risposte in cui il codice sia il più possibile simile all'equazione sono preferiti, in modo che colleghi senza alcuna conoscenza di R in grado di riconoscere l'equazione nel codice.
La risposta si suppone essere 0,376127241057822
Riesci a individuare il problema? –
Sai che il risultato dovrebbe essere? –
No, non so quale sia il risultato, sfortunatamente. –