function [out] = fsFisher(X,Y)
%Fisher Score, use the N var formulation
% X, the data, each raw is an instance
% Y, the label in 1 2 3 ... format
numC = max(Y);
[~, numF] = size(X);
out.W = zeros(1,numF);
% statistic for classes
cIDX = cell(numC,1);
n_i = zeros(numC,1);
for j = 1:numC
cIDX{j} = find(Y(:)==j);
n_i(j) = length(cIDX{j});
end
% calculate score for each features
for i = 1:numF
temp1 = 0;
temp2 = 0;
f_i = X(:,i);
u_i = mean(f_i);
for j = 1:numC
u_cj = mean(f_i(cIDX{j}));
var_cj = var(f_i(cIDX{j}),1);
temp1 = temp1 + n_i(j) * (u_cj-u_i)^2;
temp2 = temp2 + n_i(j) * var_cj;
end
if temp1 == 0
out.W(i) = 0;
else
if temp2 == 0
out.W(i) = 100;
else
out.W(i) = temp1/temp2;
end
end
end
[~, out.fList] = sort(out.W, 'descend');
out.prf = 1;
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【达摩老生出品,必属精品,亲测校正,质量保证】 资源名:matlab_fisher score_用于特征选择的方法 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合人群:新手及有一定经验的开发人员
资源推荐
资源详情
资源评论
收起资源包目录
matlab_fisher score_用于特征选择的方法.zip (2个子文件)
Matlab实现无约束条件下普列姆(Prim)算法.docx 14KB
fs_sup_fisher_score
fsFisher.m 945B
共 2 条
- 1
阿里matlab建模师
- 粉丝: 3222
- 资源: 2782
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
前往页