肿瘤基因图谱信息提取和分类方法研究(6)

2019-05-24 18:31

end end

newBB=newBB';

newindex22=newindex22';

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 主成分分析法

% index_huanyuan=zeros(1909,1); % for i=1:length(newBB)

% temp1=newindex22(i);

% index_huanyuan11(i)=temp1; % for j=1:62

% data_tiqu_hou(i,j)=data_guiyihua(temp1,j); % end % end

for i=1:length(newBB)

temp_1=newindex22(i);

index_huanyuan_1(i)=temp_1;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%对应抽取出的300个基因的标号 for j=1:62

data_tiqu1_hou(i,j)=data(temp_1,j); end end

%主成分分析——数据归一化(飞哥提取的300个基因) sum_total_1=0; std_total_1=0;

for i=1:length(newBB) for j=1:62

sum_total_1=sum_total_1+data_tiqu1(i,j); end end

ave_1=sum_total_1/(62*length(newBB)); for i=1:length(newBB) for j=1:62

std_total_1=std_total_1+(data_tiqu1(i,j)-ave_1)^2; end end

std_1=sqrt(std_total_1/(62*1909-1)); for i=1:length(newBB) for j=1:62

tiqu_guiyihua(i,j)=(data_tiqu1(i,j)-ave_1)/std_1;

26

end end

%主成分分析——求相关系数矩阵 tiqu_zhuanzhi=tiqu_guiyihua'; % %C=cov(tiqu_zhuanzhi); % R=corrcoef(tiqu_zhuanzhi); % fprintf('相关系数矩阵:\\n');

std=CORRCOEF(tiqu_zhuanzhi); %计算相关系数矩阵 % fprintf('特征向量(vec)及特征值(val):\\n')

[vec,val]=eig(std); %求特征值(val)及特征向量(vec) newval=abs(diag(val)) ;

%newval_biaohao_zhi=[index_huanyuan_1,newval];%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%将标号与特征值组成300*2的向量

[y,index]=sort(newval) ; %对特征根进行排序,y为排序结果,index为索引 % fprintf('特征根排序:\\n'); for z=1:length(y)

newy(z)=y(length(y)+1-z); end

% fprintf('%g\\n',newy); rate=y/sum(y);

% fprintf('\\n贡献率:\\n'); newrate=newy/sum(newy); sumrate=0; newindex=[];

for k=length(y):-1:1

sumrate=sumrate+rate(k);

newindex(length(y)+1-k)=index(k); if sumrate>0.93 break; end

end %记下累积贡献率大85%的特征值的序号放入newindex中 fprintf('主成分数:%g\\n\\n',length(newindex));

附录二:加权得分程序

clc;

clear all;

% P是样本数据, T是表示样本类别的下表矩阵

27

fid1=fopen('pre_pro.txt','r');

data1=fscanf(fid1,'%g',[62,1909]); data=data1';

biaohao=[1696 643 1560 457 1855 1094 1798 67 691];%冗余+主成分0.5最优组合

%biaohao=[540];%加权APC

%biaohao=[114 259 533 635 859 994 1354 1360 1700 1896];%加权RAS

for i=1:length(biaohao) for j=1:1909

if (j==biaohao(i)) P1=data(j,1:14); P2=data(j,23:48); P(i,1:40)=[P1 P2]; break; end end end

%T1=[1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2];

T1=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ]; % 将下标矩阵变为单值矢量组作为网络的目标输出 T=ind2vec(T1);

% 设计概率神经网络 sp=0.1; %扩展常数 net=newpnn(P,T,sp);

% 对网络进行仿真,并绘出分类结果 Y=sim(net,P); Y1=vec2ind(Y);

% 对一组新的数据进行分类 for i=1:length(biaohao) for j=1:1909

if (j==biaohao(i)) P3=data(j,15:22); P4=data(j,49:62); PP(i,1:22)=[P3 P4]; break; end

28

end end

Y=sim(net,PP); Y1=vec2ind(Y); correct=0; for i=1:22

if (Y1(i)==1)&(i<=8) correct=correct+1; elseif (Y1(i)==2)&(i>8) correct=correct+1; end end

%%%%%%%%%%%%%%%%%%%%%% % a1=0.35565; % a2=0.414226; % a3=0.230126; for i=1:22

if (Y1(i)==1) X1(i)=0; elseif (Y1(i)==2) X1(i)=1; end end

biaohao=[540];%加权APC

%biaohao=[114 259 533 635 859 994 1354 1360 1700 1896];%加权RAS

for i=1:length(biaohao) for j=1:1909

if (j==biaohao(i)) P1=data(j,1:14); P2=data(j,23:48); P(i,1:40)=[P1 P2]; break; end end end

%T1=[1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2];

T1=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ]; % 将下标矩阵变为单值矢量组作为网络的目标输出 T=ind2vec(T1);

29

% 设计概率神经网络 sp=0.1; %扩展常数 net=newpnn(P,T,sp);

% 对网络进行仿真,并绘出分类结果 Y=sim(net,P); Y1=vec2ind(Y);

% 对一组新的数据进行分类 for i=1:length(biaohao) for j=1:1909

if (j==biaohao(i)) P3=data(j,15:22); P4=data(j,49:62); PP(i,1:22)=[P3 P4]; break; end end end

Y=sim(net,PP); Y2=vec2ind(Y); correct=0; for i=1:22

if (Y2(i)==1)&(i<=8) correct=correct+1; elseif (Y2(i)==2)&(i>8) correct=correct+1; end end

%%%%%%%%%%%%%%%%%%%%%% % a1=0.35565; % a2=0.414226; % a3=0.230126; for i=1:22

if (Y2(i)==1) X2(i)=0; elseif (Y2(i)==2) X2(i)=1; end end

%biaohao=[540];%加权APC

30


肿瘤基因图谱信息提取和分类方法研究(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:设备制造过程的监控

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: