|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Étudiant Inscription : mars 2011 Messages : 7 ![]() |
Bonjour,
J'ai une base de données et j'aimerai savoir pour un patient particulier si il a perdu par exemple 10 cm quelque soit la durée de suivi !! (par exemple entre la première consultation et la deuxième ou entre la 3iem et la 7ieme ) pour moi ça reviens à comparer chaque date avc les autres et voir si la différence fait 10 cm ou non !! je pensais passer par des "array" mais mes patients n'ont pas tous la mêmes durées de consultation !! merci pour votre réponse |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Tu peux poster un échantillon de ton fichier car je ne vois pas les différentes date de visite de tes fameux patients...
à moins que c'est la date qui est en colonne |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Étudiant Inscription : mars 2011 Messages : 7 ![]() |
Id date taille en DS
10 24/03/2004 0.73 10 24/08/2005 0.25 10 20/11/2006 -0.14 10 31/05/2007 0.15 10 15/05/2008 -0.21 11 17/09/1999 1.20 11 12/11/1999 0.00 11 04/08/2000 0.52 11 21/05/2001 0.47 11 05/06/2002 0.58 11 07/04/2003 1.09 13 10/10/2006 -1.32 13 15/09/2008 -0.40 14 10/10/2006 -0.41 14 27/08/2007 2.20 14 15/09/2008 0.27 15 17/08/2006 -1.43 15 20/10/2006 -0.82 15 20/10/2008 0.38 16 17/08/2006 1.70 je voudrai savoir si à un moment donnée au cours des consultation , le patient a perdu 1DS !! et pour ça je pensais faire la différence entre chaque taille avec les autres tailles (en gros faire une double boucle ) merci |
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Je ne comprends pas pourquoi t'as du mal, si on suppose que la dernière colonne est la différence consécutive entre deux visites (l'avantage est que les dates de visite de chaque patient se suiveent), ya plus qu'a filtrer à moins que j'ai rien compris...
Code :
|
||
|
|
00
|
|
|
#5 | ||
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
Tu as ce code que tu avais déjà, te permettra de faire la différence des DS et après tu appliques ton filtre sur DIFF_DS en fonction de tes désirs...
Code :
|
||
|
|
00
|
|
|
#6 |
|
Invité de passage
![]() Étudiant Inscription : mars 2011 Messages : 7 ![]() |
disons que ce code me permet effectivement de calculer la différence entre deux dates successives !! mais le problème est que ça se pourrait que la perte de 1 DS est survenu entre la premier date et la dernier date !! ou bien entre la 3ieme et la 5ieme !! et moi j'aimerai savoir la premier fois à quelle moment c'est survenu !! c'est à dire la première fois que la différence entre taille (en DS) fait 1 ( et là je récupère la date et je code pour ce patient flag= 1) et si durant toute la suivie de ce patient on ne trouve pas une différence de taille qui fasse 1 alors je code pour ce patient flag=0 !!
je ne sais pas si j'étais un peu plus claire sur ce que je veux faire !! je pourrai vous donner un exemple si c'est pas trop claire ce que je dit !! merci |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Étudiant Inscription : mars 2011 Messages : 7 ![]() |
exemple si on prend ce patient
101 04/08/2000 0.90 101 21/05/2001 1.20 101 05/06/2002 0.80 101 07/04/2003 0.20 101 06/05/2004 0 si on fait la différence entre les dates successives on dira que ce patient n'a pas perdue de 1DS car la différence entre deux dates successives ne fait jamais 1 !! Pourtant si on regarde la différence entre la 2ieme date et la 4ieme date fait 1 !! donc le patient a bien perdu 1 DS durant toute sa suivie et la première fois qu'il a perdue est le 07/04/2003 !! je ne sais pas si j'ai été claire |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() Brice BeareParis Inscription : janvier 2011 Messages : 956 ![]() |
J'ai bien compris la complexité de ton problème. Il faut en fait, faire la différence de taille entre :
date1 et date2, date1 et date2, date1 et date4,... date2 et date3, date2 et date3, date2 et date4,... .... C'est faisable avec des vecteurs mais je sèche En tout cas bon courage! |
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Étudiant Inscription : mars 2011 Messages : 7 ![]() |
merci
|
|
|
00
|
|
|
#10 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Bonjour Rimad.
Je n'ai pas de solution parfaite à ta question, mais deux pistes qui permettent au moins de construire les flags. Soit avec une proc Means, soit avec une transposition et un array. Code :
Mais on doit pouvoir y arriver. Bon courage en tout cas. Olivier |
||
|
|
00
|
|
|
#11 | ||
|
Expert Confirmé
![]() ![]() Olivier DecourtFormateur en informatique Inscription : avril 2008 Messages : 1 467 ![]() |
Rectification : j'ai avancé un peu sur l'idée des arrays, sans transposition préalable.
Je suis arrivé là, je te laisse finir, il "suffit" de récupérer le numéro d'élément de l'array où la différence devient > 1. Code :
Olivier |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com