DNAcopy-处理affymetrix芯片中游软件

欢迎同行一起交流讨论   微信 forensic_JS    QQ1956238898

DNAcopy R包可以处理Affymetrix芯片中游数据,即LRR和BAF文件→DNAcopy→segment文件

https://cloud.tencent.com/developer/news/378422 可参考文章


DNAcopy 利用CBS算法进行数据的分割。循环二元分割算法(circular binary segmentation, CBS)是目前常用的SNParray 数据分段算法, 其优势在于利用相邻待测区间的数据均值差构建 t 统计量, 进而精确检测不同变异区域间的分段点。

Create ‘Copy Number Array’ data object


CNA(genomdat, chrom, maploc, data.type=c("logratio","binary"),

sampleid=NULL, presorted = FALSE)

-genomdat :一个矩阵,行为基因名、列为样本名

-maploc:标记在基因组上的位置

datatype:可以是logratio,也可以是LOH

-presorted:样本是否经过排序-默认是FALSE

#如果数据里面有X、Y,要先用下面的命令进行排序。

chrom <- ordered(coriell$Chromosome, levels=c(1:22,"X","Y"))


Genome Segmentation Program


segment(x, weights = NULL, alpha = 0.01, nperm = 10000, p.method =

                    c("hybrid", "perm"), min.width=2, kmax=25, nmin=200,

                    eta=0.05, sbdry=NULL, trim = 0.025, undo.splits =

                    c("none", "prune", "sdundo"), undo.prune=0.05,

                    undo.SD=3, verbose=1)

-alpha:可接受的变化点的显著差异水平

-p.method:计算p值得方法 默认是混合法

-undo.splits:撤销更改点。默认无撤销

-undo.SD:撤销点的水平


segments.p                            p-values for the change-points


计算变点的P值及置信区间

segments.p(x, ngrid=100, tol=1e-6, alpha=0.05, search.range=100, nperm=1000)

计算每段的中值和标准差

segments.summary(x)


smooth.CNA Smooth a ‘Copy Number Array’ data object


在使用循环二进制分割(CBS)等程序进行分析之前,检测离群值并平滑数据。

smooth.CNA(x, smooth.region=10, outlier.SD.scale=4, smooth.SD.scale=2,

trim=0.025)

-smooth.region 要考虑的点的左边和右边的点数,以检测它为离群点。(默认= 10)

-outlier.SD.scale 在平滑区域中距离最近的点的SDs数,将一个点称为离群点

-smooth.SD.scale 平滑区域中位于平滑点所在位置的SDs的数量

trim:要修剪的数据的比例,以便进行方差计算,平滑离群值,并基于SD撤消分割。


plot.DNAcopy Plot the data and results from segment of a CNA object


plot(x, plot.type=c("whole", "plateau", "samplebychrom",

"chrombysample"), xmaploc=FALSE, altcol=TRUE, sbyc.layout=

NULL, cbys.nchrom=1, cbys.layout=NULL, include.means=TRUE,

zeroline=TRUE, pt.pch=NULL, pt.cex=NULL, pt.cols=NULL,

segcol= NULL, zlcol=NULL, ylim=NULL, lwd=NULL, ...)

Arguments



RStudio--脚本汇总



library(DNAcopy) #LRR和BAF文件→DNAcopy→产生segment文件(seg.mean)

data(coriell)

#如果数据里面有X、Y,要先用下面的命令进行排序。

chrom <- ordered(coriell$Chromosome, levels=c(1:22,"X","Y"))

CNA.object <- CNA(cbind(coriell$Coriell.05296),

                  chrom,

                  coriell$Position,

                  data.type ="logratio",

                  sampleid ="c05296")

#运行后如果数据中有重复的探针出现,会有个warnings,但是不影响后续的结果。

#smooth.CNA 离散值的检测,同时对离散数据进行平滑处理。

#具体的参数我们就直接取默认值了,毕竟包开发者不会把不合理的值作为默认值。

smoothed.CNA.object <- smooth.CNA(CNA.object)

#segment 利用CBS算法进行数据的分割。循环二元分割算法(circular binary segmentation, CBS)是目前常用的SNParray 数据分段算法, 其优势在于利用相邻待测区间的数据均值差构建 t 统计量, 进而精确检测不同变异区域间的分段点。

#其中verbose参数比较有趣,是为了打印计算结果的,0不产生打印;1打印样本名称;2打印染色体信息;3打印当前的分割情况。默认状态是1。Undo.splits主要是为了确定是否设置分割的阈值。后面接着给出所设阈值的大小。

segment.smoothed.CNA.object <- segment(smoothed.CNA.object, verbose=3)

sdundo.CNA.object <- segment(smoothed.CNA.object, #应用撤销的方法去掉不必要的变化的点。

                            undo.splits="sdundo",

                            undo.SD=3,verbose=1)

#第一种方法是根据染色体和位置图对数据进行排序。红线对应的是分段的平均值。注意,点的颜色是交替的,表示不同的染色体

#其中主要的是参数plot.type。whole(w)指的绘制完整基因组;

#plateau(p)对全基因组进行排序;

#samplebychrom(s) 绘制每一个染色体图像;

#chrombysample(c)将每个染色体的所有样本展示在一起

plot(segment.smoothed.CNA.object, plot.type="p")

plot(segment.smoothed.CNA.object, plot.type="w")

plot(segment.smoothed.CNA.object, plot.type="s")

plot(segment.smoothed.CNA.object, plot.type="c")

head(segment.smoothed.CNA.object$output)

plot(sdundo.CNA.object, plot.type="w") #undo方法后生成的图变化点的确减少很多。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,242评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,769评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,484评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,133评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,007评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,080评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,496评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,190评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,464评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,549评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,330评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,205评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,567评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,889评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,160评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,475评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,650评论 2 335

推荐阅读更多精彩内容

  • 今天是中国的传统佳节中秋节,对于中国来说,一年当中最大的两个节日莫过于新年和中秋了,无论我们在何处,在这个节日当中...
    夏小慈阅读 119评论 0 0
  • 我们自认为学生应该懂的事,学生可能真的不懂不会。 教师节,曹老师带过的学生又送来了鲜花,恰巧曹老师...
    小杨姐姐阅读 123评论 0 0
  • 真快,就假期的最后一天了。早上竟然早早的起床了,但是还是很困,因为我昨天晚上睡得太晚了,不能再睡得这么晚了。 昨天...
    五碗呀阅读 121评论 0 0
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,018评论 0 4
  • 公元:2019年11月28日19时42分农历:二零一九年 十一月 初三日 戌时干支:己亥乙亥己巳甲戌当月节气:立冬...
    石放阅读 6,864评论 0 2