Load Files from folder based on file number
2 次查看(过去 30 天)
显示 更早的评论
I have 100 csv files in a folder. Each is labeled with a totally random number such as 233505.csv. I need to load 3 specific files. I originally tried
uigetfile('.csv','MultiSelect','on')
This worked but it required me to select the files I want. I am now trying using a datastore function so that I dont need to manually select the files. However I dont think the name-value pair "Filenames" is correct. Is there an alternative method. The Dir function only allows me to specify a single file.
ds = tabularTextDatastore("C:\Users\e\Player","FileExtensions",[".csv"],"Filenames",["233505.csv","45067.csv"]);
3 个评论
Stephen23
2021-11-22
编辑:Stephen23
2021-11-22
"I want to select them based on a feature of the file name."
And how will you select them? Or, more importantly, how do you plan on telling MATLAB which ones you have selected?
Are you going to tell MATLAB which files you want by writing down the names of three files? Or specifying some property of the filename/etc that can be uniquely matched to exactly 3 files? Or are you going to pick 3 random files? Or read the filenames from another file? Or get the user to specify them? Or something else... ?
"For example from the list, I want to load only the files with the names, 2334.csv, 1243.csv and 13245.csv."
By "list" do you mean the list of filenames returned by DIR ? Or your own "list" of files that you want to process?
回答(1 个)
KSSV
2021-11-22
csvFiles = dir('*.csv') ; % you are in the folder where csv files are present
N = length(csvFiles) ;
for i = 1:N
thisFile = csvFiles(i).name
% do what you want
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Import and Analysis 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!