Linkr
Accueil Ressources Outils Documentation Blog Démo
EN
  • Qu'est-ce que Linkr ?
  • Modes de déploiement
  • Démarrage rapide
  • Installation locale
  • Avec Docker
  • Installation manuelle
  • Client-only
  • Votre premier projet
  • Linkr dans un EDS
  • Espaces de travail et projets
  • Le pipeline de données
  • Entités et partage
  • Versioning et collaboration
  • Vue d'ensemble
  • Projets
  • Wiki
  • Plugins
  • Membres et rôles
  • Paramètres
  • Schémas
  • Obtenir et explorer
  • Mapping
  • Bases de données
  • Sous-bases dérivées
  • Qualité des données
  • Catalogue de données
  • Construire et publier
  • Anonymiser
  • Collections de scripts SQL
  • Pipelines ETL
  • Construire et exécuter
  • Générer les scripts
  • Présentation
  • Projets d'alignement
  • Vue d'ensemble
  • Concepts cibles
  • Éditeur d'alignements
  • Suggestions
  • Agent IA
  • Évaluation
  • Export
  • Vue d'ensemble
  • Bases de données
  • Concepts
  • Cohortes
  • Construire
  • Résultats, SQL et rapport
  • Données individuelles
  • Pipeline
  • Jeux de données
  • IDE
  • Applications web
  • Versioning
  • Vue d'ensemble
  • Onglets et widgets
  • Widgets intégrés
  • Widgets d'analyse
  • Cartes de contrôle (SPC)
  • Questionnaires et eCRF
  • Code R et Python
  • Filtres, paramètres et export
  • Vue d'ensemble
  • Mode présentation
  • Exporter un rapport
  • Agents
  • Serveur MCP
  • Skills
  • Import et export
  • Versioning git
  • Catalogue communautaire
  • Publier du contenu
  • Installation en production
  • Configuration
  • Authentification et permissions
  • Fichiers sur le serveur
  • Sauvegarde et restauration
  • Contribuer au code
  • Glossaire
  • Raccourcis clavier
  • Notes de version
Documentation Projet Résultats, SQL et rapport

Résultats, SQL et rapport

Exécuter une cohorte et lire ses résultats — effectif, attrition en barres ou en diagramme de flux, patients, tables filtrées, sortie SQL —, modifier sa requête SQL portable ou sur les tables sources, et produire le rapport de cohorte en HTML, PDF ou Word.

En résumé

Une fois les critères posés, Exécuter remplit le panneau de résultats : l’effectif, les lignes, l’attrition en barres ou en diagramme de flux, les patients et les tables filtrées. L’onglet SQL montre la requête — portable ou écrite sur les tables sources — et se modifie à la main. Rapport en tire une synthèse HTML, PDF ou Word, avec masquage des petits effectifs.

Client Disponible en mode client-only — tout fonctionne dans le navigateur, sans backend. Backend Disponible avec le backend FastAPI.

Exécuter

Exécuter lance la requête sur la base de la cohorte. Pendant le calcul, le bouton devient Arrêter : une requête trop large s’interrompt sans attendre.

L’en-tête du panneau de résultats donne alors l’effectif — le nombre de lignes au niveau choisi —, la durée du calcul et un bouton CSV qui télécharge les lignes affichées.

Les résultats affichés sont plafonnés à 10 000 lignes

L’effectif reste exact : seul l’affichage est limité, et un bandeau le signale. Pour exploiter une cohorte plus large, figez-la, ou reprenez son SQL dans une collection de scripts.

Quand l’exécution échoue, le panneau le dit et donne le message de la base. Le cas le plus fréquent — Aucune requête n’a pu être construite à partir de ces critères — désigne un critère Concept sans concept sélectionné, ou un mapping de base qui ne déclare pas la table du niveau choisi.

Les onglets de résultats

Le panneau de droite a jusqu’à six onglets.

demo.linkr.interhop.org

412

résultats

184ms
Tous les enregistrements
2 000
88 exclus
Age >= 18
1 91295,6 %
1 426 exclus
Infection grave
48624,3 %
74 exclus
NOT Deceased
41220,6 %
Le panneau de résultats : l'effectif et le CSV en tête, puis six onglets. Cliquez sur chacun ; dans Attrition, basculez entre Barres et Diagramme de flux.
  • Résultats — les lignes de la cohorte : l’identifiant au niveau choisi, l’âge à l’admission, les dates de début et de fin.
  • Attrition — l’effectif après chaque critère, détaillé plus bas.
  • Patients — la relecture des membres, dossier par dossier.
  • Tables — chaque table de la base, filtrée sur la cohorte.
  • Sortie SQL — les lignes brutes d’une requête écrite à la main.
  • Schéma — l’explorateur de la base, non filtré, pour retrouver un nom de table ou de colonne en écrivant le SQL.

Patients, Tables et Sortie SQL

L’onglet Patients ouvre une board propre à la cohorte : les mêmes onglets et widgets que la page Données individuelles, avec la liste des patients de la dernière exécution — il n’est pas nécessaire d’alimenter la cohorte. À la première ouverture, la board est vide : Ajouter un widget la compose, et elle reste attachée à la cohorte.

L’onglet Tables liste chaque table de la base, filtrée sur l’identifiant le plus fin qu’elle contient — les séjours en unité de la cohorte, ses hospitalisations ou ses patients —, comme le ferait une dérivation. Cliquer une table la compte et montre ses premières lignes ; Tout compter les compte toutes. Une table sans identifiant, comme un référentiel d’unités, reste Non filtrée. C’est la façon la plus rapide de voir ce que la cohorte emporte avec elle : combien de mesures, combien de prescriptions.

L’onglet Sortie SQL montre ce que renvoie une requête écrite dans l’onglet SQL, qu’elle liste ou non les membres de la cohorte — SELECT * FROM measurement LIMIT 10 pour jeter un œil à une table. Quand une requête ne renvoie pas la colonne d’identifiant attendue, Linkr ouvre directement cet onglet plutôt que de n’afficher qu’une erreur.

Des onglets qui dépendent du schéma

Les onglets Patients et Tables supposent que le schéma de la base est mappé — une table patient pour le premier. Sans cela, ils n’apparaissent pas.

Lire l’attrition

L’onglet Attrition donne ce que réclame toute publication : combien de patients restent après chaque critère, appliqués dans l’ordre de l’arbre. Chaque critère du premier niveau est une étape ; un groupe compte pour une seule étape, sous son nom — d’où l’intérêt de nommer ses groupes.

Deux présentations, au choix en haut à droite :

Barres

Un entonnoir horizontal.

Une barre par étape, puis la liste des effectifs avec, entre parenthèses, ce que chaque étape a retiré. La lecture la plus rapide d’un critère trop sélectif.

Diagramme de flux

La disposition CONSORT.

Les étapes au centre, de Tous les enregistrements à la cohorte finale, avec leur part de l’effectif initial ; sur le côté, le nombre d’exclus à chaque étape. La forme attendue dans un article.

C’est la lecture la plus instructive de la page. Un critère qui fait tomber l’effectif de 4 000 à 40 est presque toujours un critère mal écrit — un concept absent de cette base, une unité de mesure inattendue — plutôt qu’une population réellement rare.

L'ordre change les étapes, jamais le résultat

Déplacer un critère change les effectifs intermédiaires et le nombre d’exclus à chaque étape, pas l’effectif final. Ordonnez les critères comme vous voulez les présenter : le plus souvent, les critères d’inclusion d’abord, les exclusions ensuite.

Le SQL de la cohorte

La bascule Critères / SQL de la barre d’outils montre la requête que vos critères engendrent. Elle sert d’abord à comprendre, et à vérifier. Elle se modifie aussi.

demo.linkr.interhop.org
Une ligne par

La requête doit renvoyer une colonne patient_id — une ligne par patient.

Écrit sur les tables sources de MIMIC-IV : ne s’exécute que sur les bases de ce schéma.

1-- One row per patient: its patient_id
2SELECT DISTINCT
3 p.subject_id AS patient_id
4FROM hosp.patients p
5JOIN hosp.admissions a ON a.subject_id = p.subject_id
6WHERE p.anchor_age >= 18
7 AND EXISTS (
8 SELECT 1 FROM hosp.diagnoses_icd d
9 WHERE d.subject_id = p.subject_id
10 AND d.icd_code IN ('A419', 'R6521'))
11 AND p.dod IS NULL
Modifiez la requête ci-dessous pour essayer.
L'onglet SQL. Changez le format tant que rien n'est modifié ; tapez dans la requête : la pastille orange signale la modification, Rapport et Alimenter se grisent. Enregistrer pose le badge Modifié, Réinitialiser revient au SQL engendré.

La ligne en tête rappelle le contrat de la requête : elle doit renvoyer une colonne patient_id — une ligne par patient (visit_id au niveau hospitalisation, visit_detail_id au niveau séjour en unité).

Portable ou sur les tables sources

Le menu de format propose deux écritures de la même requête :

Tables sources

Écrite sur les tables de cette base.

Le format par défaut, nommé d’après le schéma — MIMIC-IV (tables sources). Lisible par qui connaît la base, mais il ne s’exécute que sur les bases de ce schéma.

Linkr (portable)

Écrite sur les relations linkr_*.

linkr_patient, linkr_visit… sont les mêmes sur toute base dont le schéma est mappé : la requête se rejoue sur une autre base, dans un autre modèle.

Quand les critères ne peuvent pas s’écrire sur les tables de la base, seul le format portable est proposé.

Modifier, enregistrer, réinitialiser

Taper dans l’éditeur crée une modification non enregistrée, signalée par une pastille orange — dans la barre de l’éditeur et sur l’onglet SQL. Enregistrer (ou Cmd+S) la conserve ; Annuler revient au dernier texte enregistré. Une requête enregistrée porte le badge Modifié, et une pastille ambre sur l’onglet SQL le rappelle même quand vous êtes sur les critères. Réinitialiser revient au SQL engendré par les critères, Copier place la requête dans le presse-papiers.

Une requête enregistrée s’affiche telle qu’elle a été écrite : le format ne se change plus tant que vous ne l’avez pas réinitialisée.

Exécuter lance toujours ce que montre l’éditeur, enregistré ou non. Un résultat obtenu sur une modification non enregistrée porte le badge SQL non enregistré : l’enregistrer garde cette définition, l’annuler retire le résultat. Rapport et Alimenter, eux, lisent la définition enregistrée — ils restent grisés tant qu’une modification attend, et leur survol dit pourquoi.

Toucher aux critères écrase le SQL modifié

Les critères et une requête écrite à la main ne coexistent pas. Modifier un critère après avoir modifié le SQL ouvre Écraser le SQL personnalisé ? : confirmer régénère la requête depuis les critères, et vos modifications sont perdues.

Un SQL personnalisé réduit l'attrition à une étape

Linkr calcule l’attrition en déroulant les critères un à un. Avec une requête écrite à la main, il n’y a plus de critères à dérouler : l’attrition passe directement du total à la requête, et le rapport écrit « Sélection par la requête SQL personnalisée ». C’est le prix de la liberté du SQL, à mettre en balance avec le diagramme dont vous aurez besoin pour publier.

Le rapport de cohorte

Rapport produit une synthèse autonome de la cohorte, calculée à neuf sur la base : effectifs, flowchart d’inclusion, critères appliqués, concepts mobilisés et leur couverture, caractéristiques — âge à la date d’index, sexe, mois d’inclusion —, données disponibles par table d’événements, passages par unité de soins, méthodologie et source des données. L’aperçu de la fenêtre est le fichier exporté lui-même : ce que vous lisez est ce qui part.

demo.linkr.interhop.org

Rapport de cohorte

Une synthèse autonome de la cohorte : effectifs, flowchart, critères, caractéristiques et méthodologie, calculés à neuf sur la base.

Format
Seuil des petits effectifs

Rapport de cohorte

Sepsis de l'adulte — vivants à la sortie

Généré le 28/09/2026 à 10:42

412

Patients

468

Séjours

Patients par sexe

Homme
243 59 %
Femme
160 39 %
Inconnu
<11

Distribution des âges (à la date d’index)

18–29
14 3 %
30–44
38 9 %
45–59
97 24 %
60–74
161 39 %
75–89
94 23 %
90+
<11

Méthodologie

Règle des petits effectifs : tout effectif compris entre 1 et 11 est remplacé par <11, et les pourcentages de ces effectifs ne sont pas donnés, afin qu’aucun petit groupe de patients ne puisse être isolé.

-- One row per patient: its patient_id
SELECT DISTINCT
linkr_patient.patient_id
FROM linkr_patient…
La fenêtre Rapport. Passez le seuil de 11 à 5, puis Recalculer : les effectifs sous le seuil s'affichent de nouveau. Cliquez sur le format pour passer de HTML à PDF puis Word.

Trois réglages, dans la colonne de gauche :

  • Format — HTML : un fichier unique qui s’ouvre dans n’importe quel navigateur ; PDF : passe par la fenêtre d’impression du navigateur, où l’on choisit « Enregistrer au format PDF » ; Word : un .docx à retravailler.
  • Seuil des petits effectifs — tout effectif compris entre 1 et ce seuil s’affiche <N, sans pourcentage ni barre, pour qu’aucun petit groupe de patients ne puisse être isolé. 11 est la valeur par défaut, la règle habituelle en santé. Un nouveau seuil relance la trentaine de requêtes du rapport : il s’applique avec Recalculer, ou Entrée.
  • Inclure la requête SQL dans la méthodologie — la requête exacte, pour qu’un relecteur puisse la rejouer.

Exporter télécharge le fichier dans le format choisi.

Ce qu'il faut pour un rapport

La base doit être connectée et son schéma mappé — sans mapping, le rapport ne sait pas retrouver les patients. Une modification SQL non enregistrée désactive le bouton : le rapport décrit la définition enregistrée.

Le seuil ne remplace pas les règles de diffusion

Masquer les petits effectifs rend un rapport partageable avec des collègues ; ce n’est pas une anonymisation au sens réglementaire. Avant toute diffusion hors de l’équipe, vérifiez les règles de votre établissement.

Pour aller plus loin

  • Construire une cohorte — le niveau, les critères et leur combinaison.
  • Cohortes — ce qu’est une cohorte, et ce qu’elle alimente.
  • Données individuelles — relire les dossiers des membres, et configurer une board.
  • Schémas — le mapping sur lequel repose le SQL portable.
  • Sous-bases dérivées — tirer une nouvelle base des membres d’une cohorte.
PrécédentConstruireSuivantDonnées individuelles

Produit

  • Accueil
  • Démo

Ressources

  • Documentation
  • Ressources
  • Outils
  • Blog

Communauté

  • Code source Framagit
  • Code source Github

À propos

  • InterHop.org
  • Contact

2021–2026 InterHop — CC BY-NC-SA 4.0 (site) · GPLv3 (logiciel)