##----style,echo=FALSE,results='asi'------------------------------------仿生风格::markdown()##----函数,include=FALSE-------------------------------------------------#用于为图像添加字幕和引用图像的功能图<-局部({i<-0参考<-list()列表(cap=函数(refName,text){i<<-i+1参考[[参考名称]]#粘贴(“图形”,i,“:”,文本,sep=“”)粘贴(文本,sep=“”)},ref=函数(refName){参考[[参考名称]]})})##----echo=真,eval=真,message=假--------------------------------图书馆(AllelicImbalance)##----echo=真,eval=真-------------------------------------------------搜索区域<-GRanges(seqnames=c(“17”),ranges=I范围(79478301,79478361))路径到文件<-system.file(“extdata/ERP000101_subset”,package=“AllelicImbalance”)读取<-impBamGAL(pathToFiles,searchArea,verbose=FALSE)杂合子位置<-scanFor杂合子(读取,详细=FALSE)countList<-getAlleleCounts(读取,杂合子位置,verbose=FALSE)a.简单<-ASEsetFromCountList(杂合子位置,countList)a.简单##----echo=真,eval=真,warning=假--------------------------------库(VariantAnnotation)pathToVcf<-粘贴(pathToFiles,“/ERP000101.vcf”,sep=“”)VCF<-readVcf(路径到VCF,“hg19”)gr<-田庄(VCF)#仅使用双等位gr.filt<-gr[宽度(mcols(gr)[,“REF”])==1|未列出(重叠(mcols(gr)[,“ALT”],宽度)==1]countList<-getAlleleCounts(读取,gr.filt,verbose=FALSE)a.vcf<-ASEsetFromCountList(rowRanges=gr,countList)##----echo=真,eval=真-------------------------------------------------BcfGR<-impBcfGR(pathToFiles,searchArea,verbose=FALSE)countListBcf<-getAlleleCounts(读取,BcfGR,详细=FALSE)a.bcf<-ASEsetFromCountList(BcfGR,countListBcf)##----echo=真,eval=真-------------------------------------------------加上<-getAlleleCounts(读取,杂合子位置,strand=“+”,verbose=F)减去<-getAlleleCounts(读取,杂合子位置,strand=“-”,verbose=F)a.绞合<-ASE从计数列表设置(杂合子位置,countListPlus=加号,countListMinus=减号)a.绞合##----echo=真,eval=真,message=假,results=“隐藏”--------------#从genesymbol获取searchArea库(org.Hs.eg.db)搜索区域<-getAreaFromGeneNames(“ACTG1”,org.Hs.eg.db)#获取rs-ID库(SNPlocs.Hsapiens.dbSNP144.GRCh37)gr<-rowRanges(简单用法)更新的GRanges<-getSnpIdFromLocation(gr,SNPlocs.Hsapiens.dbSNP144.GRCh37)rowRanges(a.simple)<-updatedGRanges##----echo=真,eval=真-----------------------------------------------------#模拟表型数据pdata<-数据帧(处理=样品(c(“ChIP”,“输入”),长度(读取),替换=真),性别=样本(c(“男性”,“女性”),长度(读取),替换=真),row.names=粘贴(“个人”,1:长度(读取),sep=“”)#使用pdata创建新的ASEseta.新<-ASEsetFromCountList(杂合子位置,countList(计数列表),colData=pdata)#添加到现有对象colData(a.simple)<-更新##----echo=真,eval=真-----------------------------------------------------#推断和添加基因型需要声明参考等位基因ref(a.simple)<-randomRef(a.simple)基因型(a.simple)<-infirfGenotypes(a.simp)#获取基因型信息不仅需要有关#参考等位基因和替代等位基因alt(a.simple)<-inforAltAllele(a.simple)基因型(a.simple)[,1:4]##----echo=真,eval=真-----------------------------------------------------#构造一个示例相位矩阵设定种子(1)行<-nrow(a.simple)cols<-ncol(简单用法)p1<-矩阵(样本(c(1,0),替换=真,大小=行*cols),nrow=行,ncol=列)p2<-矩阵(样本(c(1,0),替换=真,大小=行*列),nrow=行,ncol=列)phase.mat<-矩阵(粘贴(p1,样本(c(“|”,“|”),“/”),大小=行*列,替换=真),p2,sep=“”),nrow=行,ncol=列)相位(a.simple)<-phase.mat##----echo=真,eval=真-----------------------------------------------------#加载VariantAnnotation并使用Vcf文件中的阶段信息pathToVcf<-system.file(“extdata/ERP000101_subset/ERP000101.vcf”,package=“AllelicImbalance”)p<-readGT(路径到Vcf)#示例Vcf文件仅包含20个示例中的19个#所以我们必须进行子集和排序a.subset<-a.simple[,colnames(a.simple)%in%colnamesp.subset<-p[,在%列名(a.subset)中的列名(p)%]p.ordered<-p.subset[,match(列名(a.subset),列名(p.subsette))]##----echo=真,eval=真-----------------------------------------------------#根据模拟数据ref(a.simple)<-c(“G”、“T”、“c”)#推断和设置替代等位基因alt<-inferAltAllele(a.simple)alt(a.simple)<-alt#来自参考基因组数据(ASEset.sim)fasta<-system.file('extdata/hg19.chr17.subset.fa',package='AllelicImbalance')ref<-refAllele(ASEset.sim,fasta=fasta)ref(ASEset.sim)<-ref##----echo=真,eval=真-----------------------------------------------------#制作countList示例,包括SNP的全球样本设定种子(1)countList未知<-list()样本<-粘贴(rep(“样本”,10),1:10,sep=“”)snps<-1000for(snp in 1:snps){计数<-矩阵(0,nrow=长度(样本),ncol=4,dimnames=列表(示例,c('A','T','G','c'))等位基因<-样本(1:4,2)for(1中的样本:长度(样本)){计数[样本,等位基因]<-as.integer(rnorm(2,mean=50,sd=10))}countListUnknown〔〔snp〕〕<-计数}#为相应信息创建示例rowRangesgr<-G范围(seqnames=Rle(示例(粘贴(“chr”,1:22,sep=“”),snps,替换=TRUE)),范围=I范围(1:snp,宽度=1,名称=粘贴(“snp”,1:snps,sep=“”)),strand=“*”)#制作ASEseta<-ASEsetFromCountList(gr,countListUnknown=countList未知)#设置一个随机等位基因作为参考参考(a)<-randomRef(a)基因型(a)<-infirfGenotypes(a)#得到参考等位基因的分数refFrac<-fraction(a,top.fraction.critria=“ref”)#校验平均值平均值(refFrac)##----echo=真,eval=真-----------------------------------------------------#set ref等位基因ref(a.straint)<-c(“G”、“T”、“c”)#二项检验二进制测试(a.strand[,5:8],“+”)#方形试验chisq.试验(a.strand[,5:8],“-”)##----echo=真,eval=真,message=假--------------------------------------#在这个例子中,每个snp都位于不同的外显子上地区<-granges(a.simple)rs<-区域摘要(a.simple,region)基本(rs)##----echo=TRUE,eval=TRUE,fig.cap=fig$cap(“barplotPlusStrandDefault”,“红色条显示与位置chr17:79478331处snp重叠的G等位基因的读取次数,绿色条显示与重叠的T等位基因读取次数。”)----条形图(a.strand[2],strand=“+”,xlab.text=“”,legend.intespace=2)##----echo=TRUE,eval=TRUE,fig.cap=fig$cap(“barplotPlusStrandPsub”,“此处默认的二次方p值已被二项式测试的p值替换”)----#使用另一个p值来源btp<-二进制测试(a.strand[1],“+”)条形图(a.strand[2],strand=“+”,testValue=t(btp),xlab.text=“”,legend.intespace=2)##----echo=真,eval=真-----------------------------------------------------初始值<-c(15,20)对于(c(1,2,4,6)中的i){bp<-signif(二进制检验(init*i,p=0.5)$p.value,3)cp<-sinif(chisq.检验(init*i,p=c(0.5,0.5))$p.value,3)cat(粘贴(“A:”,初始[1]*i,“B:”,初始化[2]*i,”binom p:“,bp,”chisq-p:“,cp,”\n“)}##----echo=TRUE,eval=TRUE,fig.cap=fig$cap(“barplotFraction”,“type='fraction'的条形图。每个条形图代表一个样本,默认情况下,所有样本中表达最多的等位基因位于顶部,此处为绿色。黑线表示等位基因的1:1表达。”)----条形图(a.simple[2],type=“分数”,cex.main=0.7)##----echo=TRUE,eval=TRUE,fig.cap=fig$cap(“barplotSampleColour”,“带有等位基因片段的条形图,另外按性别着色。”)----#顶部和底部颜色sampleColour.top<-rep(“淡紫色”,ncol(a.simple))sampleColour.top[colData(a.simple)[,“性别”]%以%表示“男性”]<-“深绿色”sampleColour.bot<-rep(“蓝色”,ncol(简单用法))sampleColour.bot[colData(a.simple)[,“性别”]%以%“男性”表示]<-“seashell2”条形图(a.simple[2],type=“分数”,sampleColour.top=sampleColour.top,sampleColour.bot=样本颜色.bot,cex.main=0.7)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“barplotAnnotation”,“从org.Hs.eg.db包中提取基因信息的条形图”)----图书馆(org.Hs.eg.db)条形图(a.simple[1],OrgDb=org.Hs.eg.db,cex.main=0.7,xlab.text=“”,ypos.annotation=0.08,annotation.intespace=1.3,图例间距=1.5)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“barplotRef”,“参考等位基因作为顶部分数的条形图,top.fraction.cocriteria='ref'”)----#负荷数据数据(ASEset)#使用参考和替代等位基因信息alt(ASEset)<-indereAltAllele(ASEset)条形图(ASEset[1],type=“fraction”,strand=“+”,xlab.text=“”,top.fraction.critority=“ref”,cex.main=0.7)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“barplotPhase”,“母体相位为顶部分数的条形图,top.fraction.cocriteria='phase'”)----#使用相位信息相位(ASEset)<-phase.mat条形图(ASEset[1],type=“分数”,strand=“+”,xlab.text=“”,top.fraction.scriteria=“phase”,cex.main=0.7)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“locationplotDefault”,“带有计数器条的位置图,显示SNP区域”)----#使用计数类型的位置图a.stranded.sorted<-sort(a.stranded,递减=FALSE)位置图(a.stranded.sort,type=“count”,cex.main=0.7,cex.legend=0.4)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“locationplotAnnotation”,“包含从org.Hs.eg.db和TxDb.Hsapens.UCSC.hg19.knownGene包中提取的基因和转录信息的位置图”)----#位置图注释文库(TxDb.Hsapiens.UCSC.hg19.已知基因)位置图(a.stranded.sort,OrgDb=org.Hs.eg.db,TxDb=TxDb。哈皮恩斯。UCSC.hg19.knownGene)##----echo=真,eval=真,message=假,fig.cap=图$cap(“gbarplotcount”,“gbarblot with type='count'”)----#gbarplots类型为“count”gbarplot(ASEset,type=“count”)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“gbarplotfraction”,“gbarblot with type='fraction'”)----#gbarplots类型为“分数”gbarplot(ASEset,type=“分数”)##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“glocationplot”,“glocation plot,显示定义区域内SNP的ASE”)----#记住设置基因组基因组(ASEset)<-“hg19”glocationplot(ASEset,strand='+')##----echo=TRUE,eval=TRUE,message=FALSE,fig.cap=fig$cap(“glocationplot”,“使用ASEDAnnotationTrack定制的Gviz图,显示定义区域内SNP的ASE以及读取覆盖信息”)----#加载Gviz包图书馆(Gviz)#子集ASEset并读取x<-ASE集[,1:2]r<-读取[1:2]seqlevels(r,pruning.mode=“粗糙”)<-seqlevel(x)GR<-G范围(序列名=序列级别(x),范围=I范围(开始=最小值(开始(x)),结束=最大值(结束(x),链=“+”,基因组=基因组(x))deTrack<-Ased注释跟踪(x,GR=GR,type='fraction',strand='+')covTracks<-CoverageDataTrack(x,BamList=r,strand='+')lst<-c(取消跟踪,covTracks)尺寸<-c(0.5,rep(0.5/长度(covTracks),长度(cov Tracks”))plotTracks(lst,from=min(start(x)),to=max(end(x),col.line=NULL,showId=FALSE,main='main',cex.main=1,title.width=1,type=“直方图”)##----echo=真,eval=真,message=假--------------------------------数据(ASEset.old)#由于某些原因,此命令不再工作(将询问邮件列表)#ASEset.new<-updateObject(ASEset.old)##----echo=真,eval=真-----------------------------------------------------sessionInfo()