<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>生信菜鸟团 &#187; 比较矩阵</title>
	<atom:link href="http://www.bio-info-trainee.com/tag/%e6%af%94%e8%be%83%e7%9f%a9%e9%98%b5/feed" rel="self" type="application/rss+xml" />
	<link>http://www.bio-info-trainee.com</link>
	<description>欢迎去论坛biotrainee.com留言参与讨论，或者关注同名微信公众号biotrainee</description>
	<lastBuildDate>Sat, 28 Jun 2025 14:30:13 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.33</generator>
	<item>
		<title>差异分析是否需要比较矩阵</title>
		<link>http://www.bio-info-trainee.com/1514.html</link>
		<comments>http://www.bio-info-trainee.com/1514.html#comments</comments>
		<pubDate>Sat, 09 Apr 2016 02:33:51 +0000</pubDate>
		<dc:creator><![CDATA[ulwvfje]]></dc:creator>
				<category><![CDATA[生信基础]]></category>
		<category><![CDATA[limma]]></category>
		<category><![CDATA[差异分析]]></category>
		<category><![CDATA[比较矩阵]]></category>

		<guid isPermaLink="false">http://www.bio-info-trainee.com/?p=1514</guid>
		<description><![CDATA[最流行的差异分析软件就是limma了，它现在更新了一个voom的算法，所以既可以 &#8230; <a href="http://www.bio-info-trainee.com/1514.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<blockquote><p>最流行的差异分析软件就是limma了，它现在更新了一个voom的算法，所以既可以对芯片数据，也可以对转录组高通量测序数据进行分析，其它所有的差异分析软件其实都是模仿这个的。</p></blockquote>
<p>我以前讲到过做差异分析，需要三个数据：</p>
<ul>
<li>表达矩阵</li>
<li>分组矩阵</li>
<li>差异比较矩阵</li>
</ul>
<p>前面两个肯定是必须的，有表达矩阵，样本必须进行分组，才能分析，但是我看到过好几种例子，有的有差异比较矩阵，有的没有。</p>
<p>后来我仔细研究了一下limma包的说明书，发现这其实是一个很简单的问题。</p>
<h2><a id="user-content-大家仔细观察下面的两个代码" class="anchor" href="https://github.com/bioconductor-china/basic/blob/master/makeContrasts.md#大家仔细观察下面的两个代码"></a>大家仔细观察下面的两个代码</h2>
<h3><a id="user-content-首先是不需要差异比较矩阵的" class="anchor" href="https://github.com/bioconductor-china/basic/blob/master/makeContrasts.md#首先是不需要差异比较矩阵的"></a>首先是不需要差异比较矩阵的</h3>
<div class="highlight highlight-source-r">
<blockquote>
<pre>    library(<span class="pl-smi">CLL</span>)
    data(<span class="pl-smi">sCLLex</span>)
    library(<span class="pl-smi">limma</span>)
    <span class="pl-v">design</span><span class="pl-k">=</span>model.matrix(<span class="pl-k">~</span><span class="pl-k">factor</span>(<span class="pl-smi">sCLLex</span><span class="pl-k">$</span><span class="pl-smi">Disease</span>))
    <span class="pl-v">fit</span><span class="pl-k">=</span>lmFit(<span class="pl-smi">sCLLex</span>,<span class="pl-smi">design</span>)
    <span class="pl-v">fit</span><span class="pl-k">=</span>eBayes(<span class="pl-smi">fit</span>)
    options(<span class="pl-v">digits</span> <span class="pl-k">=</span> <span class="pl-c1">4</span>)
    <span class="pl-c">#topTable(fit,coef=2,adjust='BH') </span>
    <span class="pl-k">&gt;</span> topTable(<span class="pl-smi">fit</span>,<span class="pl-v">coef</span><span class="pl-k">=</span><span class="pl-c1">2</span>,<span class="pl-v">adjust</span><span class="pl-k">=</span><span class="pl-s"><span class="pl-pds">'</span>BH<span class="pl-pds">'</span></span>)
               <span class="pl-smi">logFC</span> <span class="pl-smi">AveExpr</span>      <span class="pl-smi">t</span>   <span class="pl-smi">P.Value</span> <span class="pl-smi">adj.P.Val</span>     <span class="pl-smi">B</span>
    <span class="pl-ii">39400_at</span>  <span class="pl-c1">1.0285</span>   <span class="pl-c1">5.621</span>  <span class="pl-c1">5.836</span> <span class="pl-c1">8.341e-06</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.234</span>
    <span class="pl-ii">36131_at</span> <span class="pl-k">-</span><span class="pl-c1">0.9888</span>   <span class="pl-c1">9.954</span> <span class="pl-k">-</span><span class="pl-c1">5.772</span> <span class="pl-c1">9.668e-06</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.117</span>
    <span class="pl-ii">33791_at</span> <span class="pl-k">-</span><span class="pl-c1">1.8302</span>   <span class="pl-c1">6.951</span> <span class="pl-k">-</span><span class="pl-c1">5.736</span> <span class="pl-c1">1.049e-05</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.052</span>
    <span class="pl-ii">1303_at</span>   <span class="pl-c1">1.3836</span>   <span class="pl-c1">4.463</span>  <span class="pl-c1">5.732</span> <span class="pl-c1">1.060e-05</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.044</span>
    <span class="pl-ii">36122_at</span> <span class="pl-k">-</span><span class="pl-c1">0.7801</span>   <span class="pl-c1">7.260</span> <span class="pl-k">-</span><span class="pl-c1">5.141</span> <span class="pl-c1">4.206e-05</span>   <span class="pl-c1">0.10619</span> <span class="pl-c1">1.935</span>
    <span class="pl-ii">36939_at</span> <span class="pl-k">-</span><span class="pl-c1">2.5472</span>   <span class="pl-c1">6.915</span> <span class="pl-k">-</span><span class="pl-c1">5.038</span> <span class="pl-c1">5.362e-05</span>   <span class="pl-c1">0.11283</span> <span class="pl-c1">1.737</span>
    <span class="pl-ii">41398_at</span>  <span class="pl-c1">0.5187</span>   <span class="pl-c1">7.602</span>  <span class="pl-c1">4.879</span> <span class="pl-c1">7.824e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.428</span>
    <span class="pl-ii">32599_at</span>  <span class="pl-c1">0.8544</span>   <span class="pl-c1">5.746</span>  <span class="pl-c1">4.859</span> <span class="pl-c1">8.207e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.389</span>
    <span class="pl-ii">36129_at</span>  <span class="pl-c1">0.9161</span>   <span class="pl-c1">8.209</span>  <span class="pl-c1">4.859</span> <span class="pl-c1">8.212e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.389</span>
    <span class="pl-ii">37636_at</span> <span class="pl-k">-</span><span class="pl-c1">1.6868</span>   <span class="pl-c1">5.697</span> <span class="pl-k">-</span><span class="pl-c1">4.804</span> <span class="pl-c1">9.355e-05</span>   <span class="pl-c1">0.11811</span> <span class="pl-c1">1.282</span>
</pre>
</blockquote>
</div>
<h3><a id="user-content-然后是需要差异比较矩阵的" class="anchor" href="https://github.com/bioconductor-china/basic/blob/master/makeContrasts.md#然后是需要差异比较矩阵的"></a>然后是需要差异比较矩阵的</h3>
<div class="highlight highlight-source-r">
<blockquote>
<pre>    library(<span class="pl-smi">CLL</span>)
    data(<span class="pl-smi">sCLLex</span>)
    library(<span class="pl-smi">limma</span>)
    <span class="pl-v">design</span><span class="pl-k">=</span>model.matrix(<span class="pl-k">~</span><span class="pl-c1">0</span><span class="pl-k">+</span><span class="pl-k">factor</span>(<span class="pl-smi">sCLLex</span><span class="pl-k">$</span><span class="pl-smi">Disease</span>))
    colnames(<span class="pl-smi">design</span>)<span class="pl-k">=</span>c(<span class="pl-s"><span class="pl-pds">'</span>progres<span class="pl-pds">'</span></span>,<span class="pl-s"><span class="pl-pds">'</span>stable<span class="pl-pds">'</span></span>)
    <span class="pl-v">fit</span><span class="pl-k">=</span>lmFit(<span class="pl-smi">sCLLex</span>,<span class="pl-smi">design</span>)
    <span class="pl-v">cont.matrix</span><span class="pl-k">=</span>makeContrasts(<span class="pl-s"><span class="pl-pds">'</span>progres-stable<span class="pl-pds">'</span></span>,<span class="pl-v">levels</span> <span class="pl-k">=</span> <span class="pl-smi">design</span>)
    <span class="pl-v">fit2</span><span class="pl-k">=</span>contrasts.fit(<span class="pl-smi">fit</span>,<span class="pl-smi">cont.matrix</span>)
    <span class="pl-v">fit2</span><span class="pl-k">=</span>eBayes(<span class="pl-smi">fit2</span>)
    options(<span class="pl-v">digits</span> <span class="pl-k">=</span> <span class="pl-c1">4</span>)
    topTable(<span class="pl-smi">fit2</span>,<span class="pl-v">adjust</span><span class="pl-k">=</span><span class="pl-s"><span class="pl-pds">'</span>BH<span class="pl-pds">'</span></span>)

               <span class="pl-smi">logFC</span> <span class="pl-smi">AveExpr</span>      <span class="pl-smi">t</span>   <span class="pl-smi">P.Value</span> <span class="pl-smi">adj.P.Val</span>     <span class="pl-smi">B</span>
    <span class="pl-ii">39400_at</span> <span class="pl-k">-</span><span class="pl-c1">1.0285</span>   <span class="pl-c1">5.621</span> <span class="pl-k">-</span><span class="pl-c1">5.836</span> <span class="pl-c1">8.341e-06</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.234</span>
    <span class="pl-ii">36131_at</span>  <span class="pl-c1">0.9888</span>   <span class="pl-c1">9.954</span>  <span class="pl-c1">5.772</span> <span class="pl-c1">9.668e-06</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.117</span>
    <span class="pl-ii">33791_at</span>  <span class="pl-c1">1.8302</span>   <span class="pl-c1">6.951</span>  <span class="pl-c1">5.736</span> <span class="pl-c1">1.049e-05</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.052</span>
    <span class="pl-ii">1303_at</span>  <span class="pl-k">-</span><span class="pl-c1">1.3836</span>   <span class="pl-c1">4.463</span> <span class="pl-k">-</span><span class="pl-c1">5.732</span> <span class="pl-c1">1.060e-05</span>   <span class="pl-c1">0.03344</span> <span class="pl-c1">3.044</span>
    <span class="pl-ii">36122_at</span>  <span class="pl-c1">0.7801</span>   <span class="pl-c1">7.260</span>  <span class="pl-c1">5.141</span> <span class="pl-c1">4.206e-05</span>   <span class="pl-c1">0.10619</span> <span class="pl-c1">1.935</span>
    <span class="pl-ii">36939_at</span>  <span class="pl-c1">2.5472</span>   <span class="pl-c1">6.915</span>  <span class="pl-c1">5.038</span> <span class="pl-c1">5.362e-05</span>   <span class="pl-c1">0.11283</span> <span class="pl-c1">1.737</span>
    <span class="pl-ii">41398_at</span> <span class="pl-k">-</span><span class="pl-c1">0.5187</span>   <span class="pl-c1">7.602</span> <span class="pl-k">-</span><span class="pl-c1">4.879</span> <span class="pl-c1">7.824e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.428</span>
    <span class="pl-ii">32599_at</span> <span class="pl-k">-</span><span class="pl-c1">0.8544</span>   <span class="pl-c1">5.746</span> <span class="pl-k">-</span><span class="pl-c1">4.859</span> <span class="pl-c1">8.207e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.389</span>
    <span class="pl-ii">36129_at</span> <span class="pl-k">-</span><span class="pl-c1">0.9161</span>   <span class="pl-c1">8.209</span> <span class="pl-k">-</span><span class="pl-c1">4.859</span> <span class="pl-c1">8.212e-05</span>   <span class="pl-c1">0.11520</span> <span class="pl-c1">1.389</span>
    <span class="pl-ii">37636_at</span>  <span class="pl-c1">1.6868</span>   <span class="pl-c1">5.697</span>  <span class="pl-c1">4.804</span> <span class="pl-c1">9.355e-05</span>   <span class="pl-c1">0.11811</span> <span class="pl-c1">1.282</span></pre>
</blockquote>
</div>
<p>大家运行一下这些代码就知道，两者结果是一模一样的。</p>
<p>而差异比较矩阵的需要与否，主要看分组矩阵如何制作的！</p>
<p>design=model.matrix(~factor(sCLLex$Disease))</p>
<p>design=model.matrix(~0+factor(sCLLex$Disease))</p>
<p>有本质的区别！！！</p>
<p>前面那种方法已经把需要比较的组做出到了一列，需要比较多次，就有多少列，第一列是截距不需要考虑，第二列开始往后用coef这个参数可以把差异分析结果一个个提取出来。</p>
<p>而后面那种方法，仅仅是分组而已，组之间需要如何比较，需要自己再制作差异比较矩阵，通过makeContrasts函数来控制如何比较！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bio-info-trainee.com/1514.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
