如何处理 Affymetrix 芯片分析后 probe_id 的问题

本文主要介绍在利用 R 语言包 affy, limma 分析之后如何处理 Affymetrix probe_id 的问题。

单个 probe_id 的查询

一般分析完成后,表格可能如下所示:

                       logFC AveExpr     t P.Value adj.P.Val   B
Os.50472.2.S1_x_at      4.41     6.2  28.1 7.7e-10   4.4e-05 9.9
OsAffx.17912.1.S1_at    4.12     6.8  22.8 4.6e-09   1.3e-04 9.2
Os.54142.1.S1_at        3.88     5.9  21.2 8.5e-09   1.6e-04 8.9
Os.47752.1.S1_at        2.76     6.1  19.0 2.2e-08   2.4e-04 8.4
OsAffx.28938.1.S1_at    3.80     6.4  18.6 2.6e-08   2.4e-04 8.3
OsAffx.4263.1.S1_at     2.41     5.1  18.4 2.9e-08   2.4e-04 8.2
OsAffx.28280.1.S1_at    1.38     6.2  18.3 2.9e-08   2.4e-04 8.2
Os.7327.4.S1_at         2.16     5.4  17.9 3.6e-08   2.6e-04 8.1
Os.320.2.S1_a_at        2.95     5.8  17.4 4.7e-08   3.0e-04 8.0

但是仍然不知道每个probe_id 代表什么基因,也不知道基因的相关信息, 每个单一的 probe_id 可以从一些网站上查到: 以水稻为例

Affymetrix 官网 NetAffx Query
RICECHIP

虽然这样可以做到,但是当需要查询的 probe_id 的数量多时便不适用了。

多个 probe_id 的查询

如果想查询多个 probe_id 的话,应该有一个文本,里面有 probe_id 与 gene_id 等其他注释信息的一一对应关系。这样的文档可以在 Affymetrix 官网 中找到:

Affymetrix Rice

里面有很多不同版本的信息,非常有用,个人认为比较全面的是 "Rice Annotations, CSV format, Release 35 (10 MB, 10/7/14)" 这个文件,下载即可。
里面包含了非常多的信息,包括 probe_id 与 gene_id 的对应关系。

这个文本是csv格式的,建议转化为一份 xls 格式的表格,非常方便。

有了这个 csv 文本,就可以从中提取多个 probe_id 及其所对应的基因的各种信息。

  1. 新建一个 list.txt 文本,放入多个 probe_id ,每个 probe_id 占一行,注意不要有空行,建议使用 vim

  2. 使用 grep

    $ man grep
    $ grep -f list.txt Rice.na35.annot.csv | less -S
    其中 -f 表示从一个文本中得到查询的模式
    而 less -S 表示结果单行显示,便于查看

该结果也可以直接写入一个新的文本中保存。

这样基本就把这个问题解决了,网上很多认为可以使用 R 来解决,但是目前还成功实践过, 但是上述的方法也很方便。

posted on 2015-10-10 13:40  OA_maque  阅读(1356)  评论(0)    收藏  举报

导航