Reading data files within a subfolder of the search path?
16 ビュー (過去 30 日間)
古いコメントを表示
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?
0 件のコメント
回答 (2 件)
Adam
2016 年 3 月 22 日
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 件のコメント
Image Analyst
2016 年 3 月 22 日
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.
Image Analyst
2016 年 3 月 22 日
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 件のコメント
参考
カテゴリ
Help Center および File Exchange で File Operations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!