R字符串处理

字符串处理是生物信息当中经常遇到的问题。常见的操作有:赋值,获取字符串长度,截取,替换,联接,分割,比较,排序,匹配,部分匹配,正则匹配,格式化,分行。对于生物字符串,基本操作有:互补,反向,反向互补,翻译,转录,逆转录,碱基频率统计,模板搜索,搜索回文结构以及间隔成对匹配,比对。在文件操作方面,有读取及写入fasta序列,fastq序列等等。下面我就逐一介绍在R中如何操作。

常规操作

0[……]

Read more

R中的environment

在R当中,比较容易理解的是list,比如

> y<-list(a=1,"noname",b=1:10,c="C")
> y
$a
[1] 1
 
[[2]]
[1] "noname"
 
$b
 [1]  1  2  3  4  5  6  7  8  9 10
 
$c
[1] "C"
 
> y[2]
[[1]]
[1] "noname"
 
> y[[2]]
[1] "noname"
> y$b
 [1]  1  2  3  4  5  6  7  8  9 10
> names(y)
[1] "a" ""  "b" "c"
> y[1:3]
$a
[1] 1
 
[[2]]
[1] "noname"
 
$b
 [1]  1  2  3  4  5  6  7  8  9 10

从这里可以看出,list是一种可以容纳多种不同类型数据的容器。访问它的子变量,可以有两种方式,一是通过operator [[,一是通过operator $。而list是一种有排序的变量,所以可以通过operator [来访问其子变量,但是要注意的是,[和[[返回的值是不一样的,[……]

Read more

R面向对象编程(Object-oriented programming(OOP))

面向对象编程这个概念自从java推出以来就是速度成为一种流行,以至于我们在写c++代码时不得不时刻想象着如何从structure转象class。而对于R来说,也是一样的。R现在主要有两种内置的OOP系统,还有许多扩展包推出。所谓的S3系统(Chambers和Hastie在1992年提出)和S4系统(Chambers于1998年对S3进行了改进,以期提高可靠性及易用性)。S3系统当然也是易用性很高的[……]

Read more

DNA binding motif比对算法

之前介绍了序列比对的一些算法。本节主要讲述motif(有人翻译成结构模式,但本文一律使用基模)的比对算法。

那么什么是基模么?基模是对DNA结合位点的一种描述。它有几种描述方式,一种是共同序列(consensus sequences)一种是位点倾向距阵(Position Specific Frequency Matrices(PSFM))而对于PSFM,有两种表示方式,一种叫PCM,一种叫P[……]

Read more

如何在CentOS6下安装R(how to install R in CentOS6.2)

首先安装一个源,EPEL(Extra Packages for Enterprise Linux),这个是杜克大学的爱好者们在维护的一个fedora安装源。其中就有R。我们找到自己需要的版本安装就可以了,比如我用的就是6/x86_64

rpm -Uvh http://archive.linux.duke.edu/pub/epel//6/x86_64/epel-release-6-8.noarch.rpm
yum install R

关于R当中的tapply

之前的博客《R数据分析当中的化整为零(Split-Apply-Combine)策略》有提到一些关于lapply, sapply, vapply的内容。对于tapply只是粗粗带过。

今天使用tapply的过程中遇到了一个非常令人困惑的问题,于是不得不仔细研究一下这个tapply。

tapply的使用很简单,当数据矩阵需要按其中的某一列,(或者几列,很少使用到)的内容来分组,在组内对数据[……]

Read more

bioconductor系列教程之三–Affymetrix 外显子(exon)分析综合

之前有三篇博客讲述了如何分析Affymetrix Ex-st microarray,它们分别是:《》《》《》。后来又写了一篇《使用xps和oligo分析Affymetrix Exon/Gene ST Arrays》。但个人总体感觉还是没有把问题写得简单明确。所以就再写一篇全面介绍如何使用bioconductor以及APT来分析Affymetrix Exon St array。

关于基本概念,这里就不多讲述了,请参见之前的博客。这里主要是综合使用不同的方法来分析同一组数据,并讲解如何得到合理的alternative splicing events。

目录:
一,分析获取基因水平以及外显子水平的信号

  • 使用R库oligo
  • 使用R库xps
  • 使用R库aroma.affymetrix
  • 使用Affymetrix Power Tools
  • 使用JETTA

二,使用bioconductor去除假阳性信号

三,确定alternative splicing events

  • 使用MiDAS
  • 使用SI/LIMMA
  • 使用FIRMA
  • 使用ARH

[……]

Read more

在bioconductor中生成PrimeView Human Gene Expression Array的annotation database

Joe在留言中谈及primeview的基因芯片的处理问题。刚好最近有人来发了一些关于Affymetrix最新的资料,我可以贴一些上来让大家了解一下这种芯片。

PrimeView的最大的特点就是针对成熟标记的人类基因。它全面覆盖人类基因组中已经注释了的基因,包括最新被注释的基因。对于成熟注释的基因,每个探针组都由11个独立的探针组成,而对于其它的基因,每个探针组都由9个探针组成,重复性及可靠性及高。

注释文件来源(版本或者时间)

数据来源 版本号或者时间
UniGene(design time) 219
RefSeq 41
NCBI genome vesion 37
UCSC 19
Ensembl 57
GenBank 177
Entrez 6/2010

它不完全兼容Genome U133以及Human Gene 1.0 ST。想了解更多,请阅读说明文件

对于Affymetrix的PrimeView Human Gene Expression Array,现在在bioconductor.org的注释包当中还只有primeviewcdf及primeviewprobe两个文件,缺少一个primeview.db的注释文件。现在就来使用AnnotationDbi生成这个注释文件。[……]

Read more