Bonjour à tous,
J'aurai une question à vous poser concernant un script matlab sur lequel je cale. J'ai essayé pas mal de solution mais je n'ai pas une grande expérience de matlab malheureusement. J'espère que ma question est posée dans la bonne rubrique.
Mon problème est le suivant : je cherche à faire fonctionner le script suivant.
Ce script appelle une liste de sujets (dans list.txt) puis pour chaque sujet, je cherche à générer un résultat en fonction de la variable k.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 name = importdata('list.txt') for i = 1:length(name) atlas= [atlas_name{i},'_.nii']; for k = 1:28 V=spm_vol(altas); X=spm_read_vols(V); numvox=length(find(X==numlobules)); end
Le résultat est stocké dans la variable numvox (pour nombre de voxel).
Dans l'état actuel de mon script, numvox prend à chaque fois une nouvelle valeur puis est écrasé par la suivante.
Je voudrai définir la variable numvox à la fois en fonction de la variable k et aussi de la variable i (celle du nom du sujet), de manière à pouvoir avoir :
numvox_name1_k1 = valeur 1
numvox_name2_k1 = valeur 2
numvox_name3_k1 = valeur 3 et ainsi de suite... numvox_name"n"_k"n"
ensuite je voudrai imprimer toutes ces valeurs dans un fichier texte qui prendrait idéalement la forme suivante :
numvox valeur_k1 valeur_k2 valeur_k3 valeur_k4 .... valeur_kn
name1 valeur 1
name2 valeur 2
name3 valeur 3
en sachant que toutes les lignes du tableau sont remplies
Je suis totalement perdu. Je n'arrive pas à définir numvox avec un nom qui change en fonction de k et de i, et pour l'imprimer dans un fichier texte, je ne m'en sors pas avec les variables fopen et fprintf
Toute aide, ou toute idée, même partielle serait vraiment la bienvenue.
Merci beaucoup pour votre aide
Bonne soirée,
Charles
Partager