Advertisement
Guest User

Untitled

a guest
Apr 19th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. function [train_set, selected_features_with_rank, only_selected_features_and_sorted] = kruskalwallis_selection(train_set,label_set,number_features_choose)
  2.  
  3. selected_features_with_rank = [];
  4. n_features = size(train_set,2);
  5. n_samples = size(train_set,1);
  6. aux=zeros(n_features,2);
  7. rank=cell(n_features,2);
  8.  
  9. for i=1:n_features
  10. [p,anovatab]=kruskalwallis(train_set(:,i),label_set,'off'); %
  11.  
  12. aux(i,1)=p;
  13. aux(i,2)=anovatab{2,5}; %get Chi-sq of table
  14. rank{i,1}=i;
  15. rank{i,2}=anovatab{2,5};
  16. end
  17.  
  18. [Y,I]=sort([rank{:,2}],2,'descend');
  19. stotal=[sprintf('K-W Feature Ranking')];
  20. for i=1:n_features
  21. stotal=[stotal,sprintf('%d-->%.2f\n',rank{I(i),1},rank{I(i),2})];
  22. if i <= number_features_choose
  23. selected_features_with_rank = [selected_features_with_rank; rank{I(i),1} rank{I(i),2}];
  24. end
  25. end
  26.  
  27. %ordenar pelo indice das features
  28. only_selected_features_and_sorted = sort(selected_features_with_rank(1:end,1));
  29.  
  30. %aplicar features selecionadas
  31. train_set=train_set(:,only_selected_features_and_sorted(1:end,1));
  32.  
  33.  
  34.  
  35.  
  36. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement