Import files
cy3_files_ls = list.files(pattern=".txt")
cy3_files_df <- lapply(cy3_files_ls, function(x) {read.table(file = x, header = T, sep =",")})
cy3_df <- do.call("rbind", lapply(cy3_files_df, as.data.frame))
cy3_PM <- lapply(cy3_df, [[, 1), 5)
cy5_files_ls = list.files(pattern=".txt")
cy5_files_df <- lapply(cy5_files_ls, function(x) {read.table(file = x, header = T, sep =",")})
cy5_df <- do.call("rbind", lapply(cy5_files_df, as.data.frame))
cy5_PM <- lapply(cy5_df, [[, 1), 5)
Background correction – Limma
rowname=as.character(info$PROBE_ID)
xy=as.data.frame(cbind(as.numeric(substr(info$IMAGE_ID,1,8)), as.numeric(info$X), as.numeric(info$Y)))
colnames(xy)=c("Block", "Row","Column")
rownames(xy)=rowname
layout=getLayout(xy)
RG=new("RGList")
RG$R=cy3_PM[rowname,]
RG$G=cy5_PM[rowname,]
RG$genes=info
RG$printer=layout
MA=normalizeWithinArrays(RG,method="loess")
GC-correction – ArrayTV
increms=c(60,100,1000)
wins=c(60,100,1000)
samp=c(1,10,20,30,40,50,60,70,80,90)
gc_list=gcCorrectMain(Ms=MA[,samp], chr=chr, start=start, samplechr=unique(feat$chr), increms=increms, maxwins=wins, build="hg36")
optimalWin=gc_list[["optimalWin"]]
gc_content=ArrayTV:::computeGC(x=feat$POSITION, chr=feat$SEQ_ID, maxwins=optimalWin, increms=optimalWin, build="hg38")
gc_corr=gcCorrect(object=MA, chr=feat$SEQ_ID, start=feat$POSITION, increms=optimalWin, maxwins=optimalWin, build="hg38")
Segmentation - DNAcopy
cna=CNA(genomdat=gc_corr[["correctedVals"]],, chrom=feat$SEQ_ID, maploc=MA$genes$POSITIONscreen, data.type="logratio",sampleid=colnames(MA$M),presorted=FALSE)
cna=smooth.CNA(cna, smooth.region=10, outlier.SD.scale=4, smooth.SD.scale=2, trim=0.025)
cna=segment(cna, undo.splits="sdundo",undo.SD=3)
write.table(cna$output, file="cna_output.txt",sep="\t", row.names=F, col.names=T)
Copy Number Calling - CNVkit
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py import-seg cna_output.txt
for file in /data/projects/salenius/GSE23682/keep/cnvkit/*.cns
do
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py call "$file" -x y -m clonal -o "$file"
done
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py heatmap p1.cns -x y --no-shift-xy -o "asd_hm_no_filt.png"
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py heatmap s1.cns -x y --no-shift-xy -o "ctrl_hm_no_filt.png"
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py scatter -s X11004.s1.cns -c chr9 -o "scatter.png"
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py scatter -s X11004.s1.cns -c chr1 -o "chr1.png"
for file in /data/projects/salenius/GSE23682/keep/cnvkit/*.cns
do
singularity exec /data/containers/cnvkit_latest.sif cnvkit.py export vcf "$file" -y -g male -o "$file".vcf
done