2013-04-18 2 views
0

파일 내의 텍스트를 검색하고 텍스트 및 관련 정보를 별도의 파일로 인쇄하는 셸 스크립트를 작성하려고합니다. 유전자 ID의 목록이 포함 된이 파일에서텍스트 검색

:

나는이 유전자 아이디 (ENSG의 *)하는 GTF 파일에 자신의 RPKM1 및 RPKM2 값을 검색 할
DDIT3 ENSG00000175197 
DNMT1 ENSG00000129757 
DYRK1B ENSG00000105204 

:

chr16 gencodeV7  gene 88772891  88781784  0.126744  +  .  gene_id "ENSG00000174177.7"; transcript_ids "ENST00000453996.1,ENST00000312060.4,ENST00000378384.3,"; RPKM1 "1.40735"; RPKM2 "1.61345"; iIDR "0.003"; 
chr11 gencodeV7  gene 55850277  55851215  0.000000  +  .  gene_id "ENSG00000225538.1"; transcript_ids "ENST00000425977.1,"; RPKM1 "0"; RPKM2 "0"; iIDR "NA"; 

출력하고 그것을 별도의 출력 파일에 쓰십시오.

나는 이것을 for 명령 행에서 for 사용하여 각 ID : 그것은 쉘 스크립트를 작성에 관해서

grep -w "ENSGno" rnaseq.gtf| awk '{print $10,$13,$14,$15,$16}' > output.file 

하지만, 나는 읽는 동안 수행 및 변수하지만 성공하지 않고 변화에 대한 다양한 조합을 시도했습니다. 어떤 아이디어가 좋을 것입니다!

+0

어떻게 당신은 그 RPKM 샘플 데이터에서 [12] 값을받을 수 있나요? –

+0

RPKM은 샘플의 mRNA 존재 량의 척도입니다. 기술은 RNAseq입니다. RPKM은 백만 분당 읽음 (kilobase per read)으로 정의됩니다. 희망이 도움이 될까요? 감사합니다 Harriet – user1879573

답변

1

당신은 같은 것을 수행 할 수 있습니다

while read line 
do 
    var=$(echo $line | awk '{print $2}') 
    grep -w "$var" rnaseq.gtf| awk '{print $10,$13,$14,$15,$16}' >> output.file 
done < geneIDs.file 
+0

안녕하세요, 나는 그것을 시도하고 유전자 ID 및 해당 RPKM1 & 2 값을 얻을 수 있지만 대상 rnaseq.gtf 파일에서 모든 유전자 IDS 밖으로 인쇄합니다. 동일한 target rnaseq.gtf 파일에 대해 source geneID.csv 파일에있는 용어를 반복해서 검색하여 일치하는 geneID와 RPKM1 & 2 값을 별도의 출력 파일에 인쇄하는 방법을 모르겠습니다. Thanks Harriet – user1879573

+0

음. 나는 정말로 문제를 일으키지 않는다. 정확한 입력과 정확한 출력이 필요한 게시물을 업데이트 할 수 있습니까? 'grep'이 제대로 작업하고 있다고 가정하고'grep'을'read while'에서 사용하도록 포장했습니다. – fedorqui

+0

감사합니다. 해리엇 – user1879573