'D:/thesis/sheet - CSV' '%F%F%F%F%F%S' 'Delimiter' ','

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

Program to classify grains using 5 variables.

clc; fid=fopen('D:/thesis/sheet.csv'); C=textscan(fid,'%f%f%f%f%f%s','delimiter',','); fclose(fid); physchars = [C{1} C{2} C{3} C{4} C{5}]; darj = strncmpi(C{6},'darj',1); taj = strncmpi(C{6},'taj',1); symp = strncmpi(C{6},'symp',1); red = strncmpi(C{6},'red',1); type = double([darj taj symp red ]); physchars = physchars'; type = type'; rand('seed', 491218382) net = newff(physchars,type,6); % Create a new feed forward network [net,tr] = train(net,physchars,type); testInputs = physchars(:,tr.testInd); testTargets = type(:,tr.testInd); out = sim(net,testInputs); % Get response from trained network [y_out,I_out] = max(out); [y_t,I_t] = max(testTargets); diff = [I_t - 2*I_out]; d_d = length(find(diff==-1)) %darj samples classified as darj d_t = length(find(diff==0)) %darj samples classified as taj d_s = length(find(diff==-2)) %darj samples classified as symp d_r = length(find(diff==-3)) %darj samples classified as red t_t = length(find(diff==-4)) %taj samples classified as taj t_d = length(find(diff==-5)) %taj samples classified as darj t_s = length(find(diff==-6)) % taj samples classified as symp t_r = length(find(diff==-7)) %taj samples classified as red s_s = length(find(diff==-8)) %symp samples classified as symp s_d = length(find(diff==-9)) %symp samples classified as darj s_t = length(find(diff==-10)) %symp samples classified as taj s_r = length(find(diff==-11)) %symp samples classified as red r_r = length(find(diff==-12)) %red samples classified as red r_d = length(find(diff==-13)) %red samples classified as darj r_s = length(find(diff==-14)) %red samples classified as symp r_t = length(find(diff==-15)) %red samples classified as taj N = size(testInputs,5) fprintf('Total testing samples: %d\n', N) cm = [d_d d_t d_s d_r; t_t t_d t_s t_r;s_s s_d s_t s_r;r_r r_d r_s r_t] % classification matrix cm_p = (cm ./ N) .* 100 % classification matrix in percentages fprintf('Percentage Correct classification : %f%%\n', 100*(cm(1,1)+cm(2,2))/N) fprintf('Percentage Incorrect classification : %f%%\n', 100*(cm(1,2)+cm(2,1))/N)

You might also like