Salut,
J'ai une table avec 42 patients, avec échantillonnage longitudinal. Chaque jour comporte 6 composantes de score SOFA et le score total SOFA (la somme des composants) (voir le long tableau ci-joint). Maintenant, je veux obtenir ces informations dans mon petit tableau (ci-joint) qui n'a que des patients, où j'ai une colonne du score SOFA moyen par patient, moyenne des 3 premiers jours (0 à 3) et moyenne des 7 premiers jours (0 à 7). Comment puis-je faire pour que les tables soient liées: chaque fois qu'un composant du score SOFA change dans le long tableau original, les moyennes du tableau court changent de résultat?
J'ai pu le faire de manière statique en utilisant le résumé du tableau et en sélectionnant les lignes en conséquence, et en copiant-collant dans le tableau court, mais je ne suis pas en mesure de comprendre le fonctionnement de la fonctionnalité des tables de liens.
Merci,
uriel.
J'ai d'abord fait le calcul dans le tableau Long, en utilisant la fonction Col Mean avec by variable (Study ID).
par exemple pour la moyenne 0..3 jours:
Col Mean( If( :Day <= 3, :total SOFA score, . ), :StudyID )
Le problème est que la liaison ne fonctionne pas de la table courte vers la table longue, car dans la table longue, l'ID d'étude n'est pas unique.
Une solution de contournement consiste à générer un nouvel ID de lien dans les deux tables, dans la table longue, il peut être:
Char( :StudyID ) || "_" || Char( :Day )
et dans le petit tableau:
Char(:StudyID) || "_0"
Ensuite, nous pouvons faire référence à partir du tableau court vers le Long (toujours jour 0, mais il contient les informations agrégées correctes).
Et maintenant vous avez les informations dans votre table courte, reliées dynamiquement par lien symbolique.
maintenant je l'ai compris - le problème était que la liaison ne fonctionne pas "un à plusieurs". La solution de contournement est sympa!
Merci beaucoup!
Uriel.