Random function from a text file?

4 次查看(过去 30 天)
Basically, I have a text file with a bunch of words on it. I'm not sure how I can use MATLAB to randomly select one word.

采纳的回答

Jan
Jan 2011-12-3
  1. Read the file word by word.
  2. Use rand to determine which word to choose.
fid = fopen('FileName.txt', 'r');
if fid < 0, error('Cannot open file.'); end
CC = textscan(fid, '%s');
C = CC{1};
fclose(fid);
index = ceil(rand * numel(C));
chosen = C{index};

更多回答(1 个)

the cyclist
the cyclist 2011-12-3
There are many MATLAB functions that can read text from files. One possibility that might work for you is the textscan() function. That will read the file into a cell array. Then, you could randomly select one element of the cell array, perhaps using the randi() command.
>> doc textscan
>> doc randi
Those help files give the detailed syntax, and also point to other functions you might prefer to use.

标签

Community Treasure Hunt

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

Start Hunting!

Translated by