24小时热门版块排行榜    

查看: 4438  |  回复: 26
【奖励】 本帖被评价18次,作者dbb627增加金币 12.8

[资源] Matlab 实现DGGE电泳图谱的 泳道多样性指数,相似性指数,泳道聚类分析

前段时间写了一点Matlab的使用心得,大家讨论很热烈,里面关于DGGE分析的部分,很多虫友有兴趣,我在这里完整贴出来,供大家学习参考。有什么不对的地方欢迎大家批评指正。
http://muchong.com/bbs/viewthread.php?tid=4340045
http://www.dxy.cn/bbs/topic/13125577
1,首先 Gel Pro Analyzer或者其他电泳图片分析软件对DGGE图谱数据化
2,Gel Pro Analyzer将DGGE图谱数据导入excel
3,matlab读取excel的数据,用matlab程序分析。
附件中有matlab程序文件和用于计算的数据amout.xls
CODE:
function DGGEdataanalysis(data)
%输入的数据为Gel pro plus或者其他凝胶分析
%软件得到的关于泳道比移值或者各个泳道亮度数据
%为了后续所有分析能继续,建议用各个泳道亮度数据
%Shannon-Wiener多样性指数H=-∑Pln(P)
%相似性指数S=2Lab/(La+Lb) Lab为a,b泳道都存在的条带数
%example
%x1=xlsread('amout.xls')
%DGGEdataanalysis(x1)
%作者:dbb627
%dbb627[at=923817]163.com[/at]
%2012 .6.1
%=========泳道的多样性指数=====
X=data;
[m,n]=size(X);
S=cell(1,n);
for i=1:n
S{1,i}=['Lane',num2str(i)];
end

y1=DGGEdivsityindex(X)
figure;
lane=1:n;
bar(lane,y1)
set(gca,  'XTickLabel',S, 'XTick',lane);
title('各泳道的Shannon-Wiener多样性指数')
%========泳道间的相似性指数====
y2=DGGEsimilaritymatrix(data)
%=====泳道间的聚类分析=====
Z=linkage(y2,'average');
figure;
dendrogram(Z,n,'ORIENTATION','left','LABELS',S)
title('泳道间的聚类分析')

function  y=DGGEsimilaritymatrix(X)
%计算DGGE图谱各泳道间的相似性指数组成相似矩阵
%输入参数x为图谱的泳道的亮度(灰度)或者比移值矩阵
[M,N]=size(X);
Xc=zeros(1,N);
Same=zeros(N,N);
similaritymatrix=zeros(N,N);
for i=1:N
    for j=1:M
        if X(j,i)>0
            Xc(1,i)=Xc(1,i)+1;
        end
    end
end
Xc;
for i=1:N
    for k=1:N
        for j=1:M
            if (X(j,i)>0)&(X(j,k)>0)
                Same(i,k)= Same(i,k)+1;
            end
        end
    end
end
Same;
for i=1:N
    for k=1:N
        similaritymatrix(i,k)=2*Same(i,k)/(Xc(1,i)+Xc(1,k));
    end
end
y=similaritymatrix;

function y=DGGEdivsityindex(x)
%计算DGGE图谱各泳道的多样性指数
%输入参数x为图谱的泳道的亮度(灰度)矩阵
[M,N]=size(x);
divsityindex=zeros(1,N);
for i=1:N
    P=x(:,i);
Sumc(i)=sum(P(P>0));
end
for i=1:N
    for j=1:M-1
        if x(j,i)>0
            divsityindex(1,i)=divsityindex(1,i)-x(j,i)/Sumc(i)*log(x(j,i)/Sumc(i));
        else
         divsityindex(1,i)=divsityindex(1,i)+0;
        end
    end
end
y=divsityindex;

[ 来自科研家族 博士乐园 ][ Last edited by dbb627 on 2012-6-1 at 17:27 ]
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : amout.xls
  • 2012-06-01 16:24:29, 23.5 K
  • 附件 2 : DGGEdataanalysis.m
  • 2012-06-01 17:27:04, 1.88 K

» 收录本帖的淘帖专辑推荐

dgge 学习

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
计算的结果如下
y1 =

    2.4855    2.9451    2.8280    2.9727


y2 =

    1.0000    0.6341    0.7179    0.6341
    0.6341    1.0000    0.7391    0.7917
    0.7179    0.7391    1.0000    0.7826
    0.6341    0.7917    0.7826    1.0000

各泳道的Shannon-Wiener多样性指数



泳道间的聚类分析

2楼2012-06-01 16:29:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

在雨中

金虫 (著名写手)


★ 一星级,一般

既然已经有excel的DGGE数据了,何必还要matlab呢?
那么多现成的统计软件可以对这些DGGE数据进行分析的啦!
4楼2012-06-04 09:55:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
4楼: Originally posted by 在雨中 at 2012-06-04 09:55:29
既然已经有excel的DGGE数据了,何必还要matlab呢?
那么多现成的统计软件可以对这些DGGE数据进行分析的啦!

这个看个人使用喜好,如果对Excel VBA熟悉,excel就可以做,只不过我对matlab比较熟悉,编程简单,函数丰富。所以用matlab做也没有什么不可以吧。
5楼2012-06-04 14:12:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xhangela

新虫 (初入文坛)


★ 一星级,一般

学习matlab中~~~~~~~·
6楼2012-06-04 15:39:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

紫苏云

木虫 (小有名气)


★★★★★ 五星级,优秀推荐

多谢楼主指点~
13楼2013-01-13 14:31:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

紫苏云

木虫 (小有名气)


楼主是否有Gel-Pro Analyzer软件?坛子里面搜不到能下载的。。。
多谢帮忙啊!
14楼2013-01-13 14:42:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

banyanwr

新虫 (初入文坛)


★★★★★ 五星级,优秀推荐

做个实验就不容易了 分析个数据还这么麻烦……
15楼2013-07-21 16:57:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sososmile47

新虫 (初入文坛)


★★★ 三星级,支持鼓励

一直以为用quantity one 能直接分析,感谢楼主
20楼2014-03-06 16:45:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chyz_jun

新虫 (初入文坛)


★★★★★ 五星级,优秀推荐

一直在找这个~~终于找到了~~~
23楼2014-05-06 11:12:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

康斯坦丁心医

新虫 (著名写手)


★★★★★ 五星级,优秀推荐

R也可以做吧
26楼2015-01-26 20:50:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

穿越唐朝

新虫 (初入文坛)


引用回帖:
2楼: Originally posted by dbb627 at 2012-06-01 16:29:51
计算的结果如下
y1 =

    2.4855    2.9451    2.8280    2.9727


y2 =

    1.0000    0.6341    0.7179    0.6341
    0.6341    1.0000    0.7391    0.7917
    0.7179    0.7391    1.0000    0.7 ...

为什么编程之后y=DGGEsimilaritymatrix只出现X的值,same和y的值没出现呢
27楼2015-03-30 09:15:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
2012-06-02 12:01   回复  
五星好评  顶一下,感谢分享!
2012-06-04 19:36   回复  
五星好评  
王金华8楼
2012-06-14 16:22   回复  
五星好评  顶一下,感谢分享!
ericexist9楼
2012-11-29 11:25   回复  
五星好评  顶一下,感谢分享!
ericexist10楼
2012-11-29 11:25   回复  
顶一下,感谢分享!
yzlfjnl11楼
2012-12-08 23:15   回复  
五星好评  顶一下,感谢分享!
yzlfjnl12楼
2012-12-08 23:15   回复  
顶一下,感谢分享!
lance-tan16楼
2013-07-22 17:52   回复  
五星好评  顶一下,感谢分享!
buda71617楼
2014-02-23 21:53   回复  
三星好评  顶一下,感谢分享!
huala201318楼
2014-02-24 08:47   回复  
五星好评  顶一下,感谢分享!
huala201319楼
2014-02-24 08:49   回复  
huala201321楼
2014-03-07 08:29   回复  
顶一下,感谢分享!
feng007hui22楼
2014-03-19 14:49   回复  
五星好评  顶一下,感谢分享!
2014-05-18 10:46   回复  
三星好评  顶一下,感谢分享!
drchenxi25楼
2014-05-22 19:54   回复  
三星好评  顶一下,感谢分享!
相关版块跳转 我要订阅楼主 dbb627 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] FileCode能看出啥? +7 要乐观耀哥 2026-08-10 16/800 2026-08-11 08:18 by wmfsnow
[基金申请] 关于代码变化问题,想知道的进来 +17 且听虎啸 2026-08-07 24/1200 2026-08-10 18:35 by zhangduo2008
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 好奇怪的filecode +4 布布和一二 2026-08-08 5/250 2026-08-10 14:20 by 冰心玉壶晴
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 面上项目filecode邪修 +5 西山十月 2026-08-09 7/350 2026-08-10 07:32 by 仁砚薪传
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] fileCode有新解读? +10 Tide man 2026-08-08 18/900 2026-08-09 12:55 by 仁砚薪传
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] 固定端突然变了,今天 +6 archvillain 2026-08-06 10/500 2026-08-07 16:03 by 医学老男孩
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] 大家散了吧,后缀研究没有意义,别浪费时间了,过好目前的每一天,不要焦虑 +5 Tide man 2026-08-06 7/350 2026-08-07 13:11 by 医学老男孩
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
信息提示
请填处理意见