Effacer les filtres
Effacer les filtres

Reading data files within a subfolder of the search path?

14 vues (au cours des 30 derniers jours)
Tom Ruopp
Tom Ruopp le 22 Mar 2016
Commenté : Image Analyst le 18 Oct 2017
I would like to be able to have all my functions in the ML searchpath, but have all of my data in subfolders. Then I would enter that subfolder name into the function I am calling and it would be able to use the functions within the primary folder, but take data from the subfolders. Is there any way to accomplish this? Or do I just need to have all functions and data to be analyzed in the primary search path?

Réponses (2)

Adam
Adam le 22 Mar 2016
There is no requirement for data to be on the Matlab path. How you access the data is up to you, but if it is not on the Matlab path you have to give a full path name when accessing it.
This path name can be constructed from components depending on what knowledge you have at the point you need to construct it though.
e.g.
doc mfilename
can be used if you want to create a path relative to the currently executing m-file.
  4 commentaires
Tom Ruopp
Tom Ruopp le 22 Mar 2016
Thanks Stephen! That's what I was looking for.
Appreciate everyone else's help as well!
Image Analyst
Image Analyst le 22 Mar 2016
You'll still need to use genpath() (like I showed you in my Answer) to get the list of subfolders like you said you want. You can use dir() and then search for "." but that is far less convenient. But I don't think you want to be hard coding in all the subfolders.

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 22 Mar 2016
You can use genpath() to generate all subfolders of C:/MATLABLocomotionPD/datafilefolder in a cell array:
caPathList = genpath('C:/MATLABLocomotionPD/datafilefolder');
From there you can use dir() and fullfile() to specify the complete path of any file in any of those folders. See attached m-file for a demo.
  1 commentaire
Image Analyst
Image Analyst le 18 Oct 2017
You can use fileparts() to strip off the parent folder.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Search Path dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by