8000 map PCMRI files to tensor/json files · Issue #4 · opeltre/revert · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

map PCMRI files to tensor/json files #4

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy st 8000 atement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
opeltre opened this issue Mar 30, 2022 · 8 comments
Open

map PCMRI files to tensor/json files #4

opeltre opened this issue Mar 30, 2022 · 8 comments
Assignees

Comments

@opeltre
Copy link
Owner
opeltre commented Mar 30, 2022

Write a script reading all PCMRI files, performs a few checks, and saves data either as a large (N_pat, N_channels, Npts) tensor
or as a directory of JSON files

Right now, loading a file requires to read the text file exported by the Amiens software

@opeltre
Copy link
Owner Author
opeltre commented Apr 11, 2022

Regarder où est la source d'erreur, notamment:

  • vérifier si la liste de canaux par type (e.g. "art > cereb") est non vide et si oui quel est le type qui arrive le plus souvent vide
  • vérifier s'il n'y a pas d'erreurs par torch.stack ou autre, e.g. les tableaux n'ont pas la même taille

@opeltre
Copy link
Owner Author
opeltre commented Apr 11, 2022

Par exemple un script qui parcourt la base et comptabilise le nombre de fichiers tq chaque type de flux est non vide,
et l'intersection de ces ensembles

@opeltre
Copy link
Owner Author
opeltre commented Apr 11, 2022

Une donnée intéressante serait par exemple le type de flux qui génère le plus souvent d'erreur (i.e. c2_c3, aqueduc ou "ven > cervi") pour mettre à jour CHANNELS.csv et augmenter le nombre de fichiers parsés

@b-brebion
Copy link
Collaborator

Results:

Total missing:
art > cervi: 232
art > cereb: 278
ven > cervi: 232
ven > cereb: 280
c2-c3: 241
aqueduc: 253

--------------------

Intersection:
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 189
['aqueduc']: 34
['art > cereb', 'ven > cereb']: 28
['art > cereb', 'ven > cereb', 'c2-c3', 'aqueduc']: 14
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb']: 13
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3']: 11
['c2-c3']: 10
['art > cereb', 'ven > cereb', 'aqueduc']: 8
['ven > cereb']: 6
['art > cervi', 'ven > cervi', 'c2-c3']: 5
['art > cervi', 'ven > cervi']: 4
['art > cereb']: 3
['art > cereb', 'ven > cereb', 'c2-c3']: 2
['art > cervi', 'art > cereb', 'ven > cervi', 'c2-c3']: 2
['art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 2
['art > cervi']: 2
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'aqueduc']: 2
['art > cervi', 'art > cereb', 'ven > cereb']: 1
['art > cereb', 'ven > cervi', 'ven > cereb']: 1
['art > cervi', 'art > cereb', 'ven > cereb', 'aqueduc']: 1
['c2-c3', 'aqueduc']: 1
['art > cervi', 'ven > cervi', 'c2-c3', 'aqueduc']: 1
['ven > cereb', 'c2-c3']: 1
['art > cereb', 'c2-c3']: 1
['ven > cervi', 'c2-c3']: 1
['art > cervi', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 1

@opeltre
Copy link
Owner Author
opeltre commented Apr 19, 2022

Comment se lit le log? J'ai du mal à comprendre pourquoi :

aqueduc: 253
--------------------
Intersection:
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 189
['aqueduc']: 34

@opeltre
Copy link
Owner Author
opeltre commented Apr 19, 2022

Pourrais-tu faire un script qui permette de copier (ou os.linkto(src, dest) ) tous les examens qui génèrent des erreurs dans un autre dossier? J'ai du mal à comprendre comment on peut perdre 200 à 300 examens quand les canaux inutilisés par CHANNELS.csv se cumulent à si peu... Peut-être qu'en explorant à la main on se rendra mieux compte

Par exemple tu pourrais rajouter une option
python extract_flows.py --errors="path/to/errors/" :)

@b-brebion
Copy link
Collaborator

Comment se lit le log? J'ai du mal à comprendre pourquoi :

aqueduc: 253
--------------------
Intersection:
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 189
['aqueduc']: 34

Pour la partie Total missing :
aqueduc: 253 signifie que pour au total 253 patients il manque l'information pour le channel aqueduc

Pour la partie Intersection :
['art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb', 'c2-c3', 'aqueduc']: 189 signifie que pour 189 patients, il nous manque les informations sur tout les channels
['aqueduc']: 34 signifie que pour 34 patients il nous manque uniquement le channel aqueduc (pour ces 34 patients, on a bien l'information pour les autres channels : 'art > cervi', 'art > cereb', 'ven > cervi', 'ven > cereb' et 'c2-c3')

@b-brebion
Copy link
Collaborator

Nouvelle variable d'environnement $PCMRI_JSON :

export PCMRI_JSON = "path/to/PCMRI/data/as/JSON"

(données générées avec le script pcmri_to_tensor.py)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants
0