科研应该也算是实际应用吧,我这正好有个问题不知道怎么解决,贴出来给lz看看……
图1 :
pig_sus.blast是用blat处理原始数据后得到的输出文件,C090_1.blast(以及其他blast文件)是用于对比的数据。
pig_sus.blast中,第一列是query,有重复项,取evalue最小的、identity最大的(格式见http://
edwards.sdsu.edu/labsite/index.php/ramys/238-blast-output-8),已经处理完了,R代码如下:/*
x = read.csv("pig_sus.blast", sep = "", header = FALSE)
x = subset(x, subset = !duplicated(x[c("V1")]))
*/
然后合并两组数据发现没对齐,图2:
合并代码如下:
/*
x = x[1:239,]
c = c("XV2", "XV9", "XV10", "YV2", "YV9", "YV10")
comp = data.frame(x[,2], x[,9], x[,10], y[,2], y[,9], y[,10])
colnames(comp) = c
*/
line 125时,x的V2出现了新项chr11,原本与y[125, ]对应的chr1变成了126。
图3:
所以想根据V1来进行合并,把类似POR_C090_I10_I10的新项单列成之后,剩余项对齐合并,再进行对比。
对比原则是:两组数据的V2 V9 V10都一致则判定为一致,最后需要得到 一致项/总项数 这个比例。
--------
ps1:看id我们好像在twitter上互fo了哟~
ps2:为了处理数据还重新编译了一遍blat...