How can I limit the maxmimum number of files to be loaded from a database?

5 views (last 30 days)
Suppose I have a database of 200k files (.mat files) but I want to randomly open only 15000 files out of those 200k. Is there a way to do that? Thanks in advance..

Accepted Answer

Matt Kindig
Matt Kindig on 16 Oct 2012
Edited: Matt Kindig on 16 Oct 2012
You could use dir() to get the names of all *.mat files, and then use randperm() to randomly choose 15000 of them. Something like this:
matFiles = dir('*.mat'); %get all mat files
n = randperm(200e3); %generate numbers between 1 and 200k in random order
n = n(1:15e3); %get first 15k numbers
matFiles = matFiles(n); %this will have 15k mat files, randomly chosen.

More Answers (0)


Community Treasure Hunt

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

Start Hunting!