之前用featureCount 處理得到結(jié)果,要提出第一列g(shù)ene_id 和 readcount 列,首先軟件輸出的第一行默認(rèn)是你使用的命令行,沒(méi)有用,用bash批量刪掉。
for i in `ls`;do sed -i '1d' $i;done
刪除當(dāng)前文件夾下所有文件第一行。
其實(shí)提出兩列很簡(jiǎn)單,不過(guò)我受夠了每次一個(gè)文件執(zhí)行一次的煩。想搞成別的程序調(diào)用時(shí)命令行參數(shù)直接就行。第一次知道sys.argv這玩意,學(xué)到了。
我設(shè)置了 -i 輸入,-o 輸出 這兩個(gè)參數(shù)來(lái)判斷輸入輸出文件個(gè)數(shù),不過(guò)對(duì)于錯(cuò)誤命令行輸入的判斷還很欠缺,畢竟只有自己用。
上代碼:
import sys leng=len(sys.argv) for i in range(leng): # index the input file and output file location,maybe it's too complex if sys.argv[i]=="-i": it=i if sys.argv[i]=="-o": out=i for i in range(it+1,out): # input file number(there should have same # of in and out file) print(sys.argv[i]) file=open(sys.argv[i],'r') f=open(sys.argv[i+out-it],'w') count=[] for lines in file.readlines(): two=[] lines=lines.rstrip('\n') b=lines.split('\t') two.append(b[0]) if(b[6].startswith('.')): #chage path to count,some output problem b[6]="count" two.append(b[6]) s='\t'.join(two) f.write(s+'\n') f.close
其實(shí)python里面 str 和list 弄的還是昏頭昏腦的,每次都要錯(cuò)了再改。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
