我在使用GOplot包的函數(shù)chord_dat時(shí)發(fā)生了報(bào)錯(cuò)
我在跑chord <- chord_dat(circ, genelist, go$Term)命令時(shí),報(bào)錯(cuò)如下:
Error in `[<-`(`*tmp*`, g, p, value = ifelse(M[g] %in% sub2$genes, 1, :
? subscript out of bounds
我去檢查了go和genelist的數(shù)據(jù)結(jié)構(gòu)發(fā)現(xiàn),genelist里的gene用的是gene名,而go里的基因用的是基因ID,不一樣了,所以跑不出結(jié)果,所以我把genelist的gene換成了基因ID,就能跑出來(lái)了。
我發(fā)現(xiàn)在運(yùn)行kk計(jì)算的時(shí)候,會(huì)隨機(jī)在基因名和基因ID之間跳轉(zhuǎn),有時(shí)候會(huì)生成geneID,有時(shí)候又是基因名,所以要根據(jù)go生成的數(shù)據(jù)里生成的是基因名還是基因ID,來(lái)調(diào)整genelist的gene的形式的選擇。