random extraction of files from a folder

17 visualizaciones (últimos 30 días)
Sivaramakrishnan Rajaraman
Sivaramakrishnan Rajaraman el 16 de Mzo. de 2017
Comentada: Sivaramakrishnan Rajaraman el 16 de Mzo. de 2017
I have a folder of 12000 images (in bmp format). I would like to randomly extract 2000 images and store it in a different folder. How can i do that?

Respuesta aceptada

Jan
Jan el 16 de Mzo. de 2017
Based on Adam's suggestions:
Dest = 'C:\Temp';
FileList = dir(fullfile(Folder, '*.bmp'));
Index = randperm(numel(FileList), 2000);
for k = 1:2000
Source = fullfile(Folder, FileList(index(k)).name);
copyfile(Source, Dest);
end
Or movefile.

Más respuestas (2)

Adam
Adam el 16 de Mzo. de 2017
doc dir
can be used to give you a listing.
doc randperm
can be applied to your listing to select the random files. I don't have time (or inclination) to write the code for you though so feel free to ask further questions once you have made an attempt if you get stuck.
  1 comentario
Sivaramakrishnan Rajaraman
Sivaramakrishnan Rajaraman el 16 de Mzo. de 2017
i wrote the following and it is giving error. Kindly help rectify the code:
myFolder1 = 'Q:\chromosomal Data\Data\16'; %containing 12000 fles
filePattern1 = fullfile(myFolder1, '*.bmp');
theFiles1 = dir(filePattern1); % getting a 208x1 struct with 6 fields, containing name, folder, date, bytes, isdir,and datenum
whos theFiles1 % No semicolon!
numFiles1 = length(theFiles1) % No semicolon!
if numFiles1 == 0 || isempty(theFiles1)
warningMessage = 'No files found';
uiwait(warndlg(warningMessage));
return;
end
p = randperm(theFiles1(2000)); %error index exceeds matrix dimensions
Kindly help to move the random 2000 files to a different folder. name it anything you like.

Iniciar sesión para comentar.


ES
ES el 16 de Mzo. de 2017
You can do a dir in that folder for a list of files. Use a random number generator of 2000 length.
Select the file based on the random number.

Categorías

Más información sobre File Operations en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by