J'ai une liste correspondant à des dates de prélèvement regroupées par individu. Exemple :
Code : Tout sélectionner
liste$date
$`002`
[1] "2010-03-30" "2010-05-11" "2010-06-16" "2011-02-16" "2012-04-10" "2012-05-02" "2012-10-02" "2012-10-16" "2013-05-21"
[10] "2014-04-22"
$`003`
[1] "2010-02-16" "2010-06-01" "2010-08-17" "2010-11-29" "2011-05-03" "2011-05-31" "2011-08-23" "2011-10-11" "2011-12-13"
[10] "2012-04-18" "2012-07-31" "2012-08-03" "2013-07-09" "2013-10-25" "2013-12-17" "2014-02-11" "2014-03-25" "2014-10-21"
[19] "2014-12-16"
$`005`
[1] "2010-05-06" "2011-08-08" "2012-04-17" "2012-11-12" "2013-03-26" "2013-06-25" "2013-12-13"
J'ai donc une liste de dates (ordonnées par ordre croissant) pour chaque individu 2, 3 et 5.
Je cherche à connaitre, pour chaque prélèvement, la durée de suivi correspondante, c'est-à-dire pour chaque individu [[i]], la différence entre la date du prélèvement [[i]][j] et la date du premier prélèvement effectué chez ce patient.
J'ai essayé ça :
Code : Tout sélectionner
for(i in 1: nrow(liste)){
for(j in 1: length(liste$date[[i]])){
liste$suivi_total[[i]]<-difftime(max(liste$date[[i]]), min(liste$date[[i]]))
liste$suivi_int[[i]][j]<-difftime(liste$date[[i]][j], liste$date[[i]][1])
}
}
Quelqu'un a une idée ?
Merci !
Je pensais obtenir ainsi la durée total du suivi par individu suivi_total (ça c'est bon),
et une liste de durées de suivi intermédiaires pour chaque prélèvement, par patient liste$suivi_int.
J'obtiens le message d'erreur suivant :
Code : Tout sélectionner
Error in liste$suivi_int[[i]][j] <- difftime(liste$date[[i]][j], :
more elements supplied than there are to replace