<?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; affy</title>
	<atom:link href="http://www.bio-info-trainee.com/tag/affy/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>用affy包读取affymetix的基因表达芯片数据-CEL格式数据</title>
		<link>http://www.bio-info-trainee.com/1580.html</link>
		<comments>http://www.bio-info-trainee.com/1580.html#comments</comments>
		<pubDate>Sat, 23 Apr 2016 14:50:46 +0000</pubDate>
		<dc:creator><![CDATA[ulwvfje]]></dc:creator>
				<category><![CDATA[R]]></category>
		<category><![CDATA[基础软件]]></category>
		<category><![CDATA[affy]]></category>
		<category><![CDATA[bioconductor]]></category>
		<category><![CDATA[芯片数据]]></category>
		<category><![CDATA[表达矩阵]]></category>

		<guid isPermaLink="false">http://www.bio-info-trainee.com/?p=1580</guid>
		<description><![CDATA[Affymetrix的探针（proble）一般是长为25碱基的寡聚核苷酸；探针总 &#8230; <a href="http://www.bio-info-trainee.com/1580.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>Affymetrix的探针（proble）一般是长为25碱基的寡聚核苷酸；探针总是以perfect match 和mismatch成对出现，其信号值称为PM和MM，成对的perfect match 和mismatch有一个共同的affyID。<br />
CEL文件：信号值和定位信息。<br />
CDF文件：探针对在芯片上的定位信息</p>
<p>affy包是R语言的bioconductor系列包的一个，就一个功能，读取affymetix的基因表达芯片数据-CEL格式数据，处理成表达矩阵！！！</p>
<p><span id="more-1580"></span></p>
<p>一般我们都是去GEO数据库里面知道找到CEL文件的下载地址~~~比如<a href="http://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE1428">GSE1438</a>，测了10 young (19-25 years old) and 12 older (70-80 years old) male的样品，然后找差异基因，从GEO数据库我们找到cel文件下载地址是：</p>
<p>ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE1nnn/GSE1428/suppl/<span style="color: #ff0000;">GSE1428_RAW.tar</span></p>
<p>我们是为了讲解affy才下载原始数据的，其实GEO也提供处理好的表达矩阵供下载</p>
<p><a href="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/1.png"><img class="alignnone size-full wp-image-1581" src="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/1.png" alt="1" width="290" height="201" /></a></p>
<p>下载后压缩到指定目录即可</p>
<p>下载到本地之后就可以用代码读取它了！</p>
<blockquote><p>library(affy)<br />
dir_cels='D:\\test_analysis\\TNBC\\cel_files'<br />
affy_data = ReadAffy(celfile.path=dir_cels)<br />
eset.mas5 = mas5(affy_data)</p></blockquote>
<p><!--StartFragment --></p>
<div>读取的过程还是蛮耗时间的，<span style="color: #ff0000;">也可以选择rma函数而不是mas5函数对表达数据进行normalization</span></div>
<div><a href="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/2.png"><img class="alignnone size-full wp-image-1582" src="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/2.png" alt="2" width="449" height="251" /></a></div>
<div>读取之后的表达矩阵如图所示：</div>
<div><a href="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/3.png"><img class="alignnone size-full wp-image-1583" src="http://www.bio-info-trainee.com/wp-content/uploads/2016/04/3.png" alt="3" width="727" height="318" /></a></div>
<div>理论上，处理得到的数据应该与直接在GEO官网下载的表达量是一样的，下载链接都是有规律的！</div>
<p>ftp://ftp.ncbi.nlm.nih.gov/geo/series/GSE1nnn/GSE1428/matrix/<span style="color: #ff0000;">GSE1428_series_matrix.txt.gz</span></p>
<p>当然这个affy包支持的芯片平台是有限的！</p>
<p>一般是hgu 95系列和133系列~~</p>
<p>其实严格来说，这个芯片得到的表达矩阵，是需要过滤的。</p>
<p>比如像下面的代码：</p>
<p>setwd('../')<br />
library(affy)<br />
dir_cels='GSE34824_RAW'<br />
data &lt;- ReadAffy(celfile.path=dir_cels)<br />
eset &lt;- rma(data)<br />
calls &lt;- mas5calls(data) # get PMA calls<br />
calls &lt;- exprs(calls)<br />
absent &lt;- rowSums(calls == 'A') # how may samples are each gene 'absent' in all samples<br />
absent &lt;- which (absent == ncol(calls)) # which genes are 'absent' in all samples<br />
rmaFiltered &lt;- eset[-absent,] # filters out the genes 'absent' in all samples</p>
<p>54675 features 经过过滤后，剩下 42482 features</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bio-info-trainee.com/1580.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
