how to code for this problem??
Info
Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.
Ältere Kommentare anzeigen
i have Names with subject marks as labels(column wise) and values(double) in excel file,like NAME SUBJECT_1 SUBJECT_2.....upto SUBJECT_50.
but for some analysis,i need to fetch few subject values(15 subjects) with respect to name. my selected subjects labels will be given in header.txt.(wt ever subject label i give in this header.txt,my program should fetch that subject column data's alone and store in separate file). any help or suggestion for this concept??..............need help here
Antworten (1)
Image Analyst
am 28 Okt. 2013
Try this (untested):
[num, txt, raw] = xlsread(fullFileName); % Read in Excel file.
[rows, columns] = size(txt);
% Get random numbers
filesToSelect = randperm(rows, 15);
% Select 15 random filenames from the whole list.
selectedStrings = txt(filesToSelect, :);
% Now open headers.txt and pull out those
fid = fopen('headers.txt');
tline = fgetl(fid);
counter = 1;
while ischar(tline)
disp(tline)
% Get next line.
tline = fgetl(fid);
% Save it as a header line.
headers{counter} = tline;
end
% Extract just those we want.
headers = headers{selectedStrings);
fclose(fid);
6 Kommentare
sandy
am 30 Okt. 2013
Image Analyst
am 30 Okt. 2013
You must have a really old version of MATLAB. Try this instead:
filesToSelect = randperm(rows); % Get all numbers scrambled.
filesToSelect = filesToSelect (1 : 15); % Take 15 of them.
Image Analyst
am 31 Okt. 2013
Use ismember().
sandy
am 31 Okt. 2013
Image Analyst
am 31 Okt. 2013
Yes. It works on cell arrays of strings. Just look over the documentation and try it.
ca = {'SUBJECT_1'; 'SUBJECT_4'; 'SUBJECT_9'; 'SUBJECT_23'; 'SUBJECT_4'}
lookingFor = 'SUBJECT_4'
matchingLogicalIndexes = ismember(ca, lookingFor)
matchingRowNumbers = find(matchingLogicalIndexes)
In the command window:
ca =
'SUBJECT_1'
'SUBJECT_4'
'SUBJECT_9'
'SUBJECT_23'
'SUBJECT_4'
lookingFor =
SUBJECT_4
matchingLogicalIndexes =
0
1
0
0
1
matchingRowNumbers =
2
5
Diese Frage ist geschlossen.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!