2016-10-17 2 views
1

Je suis traitement des données de transplantation cardiaque Stanford R.Comment puis-je créer une fonction Heaviside?

library(survival) 
head(jasa) 

Je veux analyser la survie entre la greffe contre patient non-greffe. Mais je veux utiliser une fonction Heaviside. Je veux évaluer le processus de survie en utilisant ces fonctions de Heaviside. Bien que j'ai cherché de nombreux documents, il n'y a pas de fonction qui puisse rendre une fonction Heaviside dans R autant que je sache.

+1

Regardez 'ifelse()'. – symbolrush

+2

Pouvez-vous préciser ce qu'est un " heaviside "fonction est supposée faire et à quoi le résultat devrait ressembler? –

+1

' http: // finzi.psych.upenn.edu/bibliothèque/fBasics/html/utils-Heaviside.html' – hrbrmstr

Répondre

2

En plus de ifelse(t>wait-time,1,0) et la fonction Heaviside dans fBasics (probablement trouvé par library(sos); findFn("Heaviside"), il y a un plus intelligent/solution plus efficace via

H <- function(x) as.numeric(x>0) 
mscore*H(t-(wait-time))