accéder à des variables partagées dans différents fichiers
Bonjour,
Je vous expose mon problème, j'espère être claire, c'est un peu complexe.
Je dispose de plusieurs fichiers comportant chacun 59 variables. Je dois sélectionner certains fichiers. Cette fonction fonctionne, à priori.
Ensuite, je dois sélectionner les variables que je veux utiliser. Et là, c'est le drame :lol:
Déjà, j'hésite entre 2 méthodes :
1) créer un fichier où je réécris toutes mes données et j'utiliserai la fonction SORT, qui me permettra de trier mon nouveau fichier en fonction de ce que je veux "garder". (sachant que dans tous les cas, je devrai utiliser cette fonction SORT pour ordonner mes données pour former des groupes ultérieurement )
2) travailler directement avec les fonctions que j'ai déjà. J'ai utilisé setappdata et getappdata pour travailler sur mes données.
Dans ce cas, je pense initialiser toutes mes variables dans ma fonction function fisherdiscriminantanalysis_OpeningFcn
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
function fisherdiscriminantanalysis_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
values = getappdata(handles.figure1,'Data');
for i=1:59
handles.var{i}=%la colonne i de tous les fichiers séectionnés
%je n'arrive pas à le coder encore!
end |
Et ensuite, je sélectionne les variables que je veux utiliser
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function listbox1_Callback(hObject, eventdata, handles)
handles.current_data = get(hObject,'Value');
values = getappdata(handles.figure1,'Data');
for i_data = 1:length(handles.current_data)
values.value(i_data)
%plot(values.value(i_data),'.'); //aucun des plot ne marche
%peut-être à cause de la déclaration ratée de handles.var dans la fonction précédente
%plot(handles.var{handles.current_data(i_data)},'.');
end
guidata(hObject,handles); |
Voici la structure de données :
Code:
1 2
|
data = struct('name', [], 'file', [], 'value', []); |
Voilà, je crois que j'ai fourni toutes les informations utiles.
Donc je voudrais savoir quelle méthode serait la plus facile, ou la plus propre :D
Merci pour vos avis !