탭으로 구분 된 열을 출력하는 간단한 명령이 있습니까?

Nov 15 2020

fasta 파일에서 작업 중이며 명령 줄 내에서 nano로 명령을 작성하고 명령 줄에서도 Python을 사용하여 실행하고 있습니다.

내 목표는 세 개의 열이있는 탭으로 구분 된 파일을 제공하는 명령을 얻는 것입니다. 첫 번째 열은 내 시퀀스 이름을 포함 하고 두 번째 열은 내 시퀀스 길이를 제공해야하며 세 번째 열은 시퀀스 자체를 표시해야 합니다 .

지금까지 nano 내에서 다음 명령을 작성했습니다.

예를 들어, 원하는 출력과 다음 순서로 명령을 제공하고 싶습니다. Gene name; 유전자 길이; 유전자 염기 서열

A06842X 45 GORHQRIHQEERHEUWOHRPPTRWFAWWEAKJNFWEJQEFQEPRT

Jb4329PC 21 LDHKQAJTYOWEPLKFREEQW

답변

1 KamilSJaron Nov 15 2020 at 23:22

나는 이와 같이 재 포맷 된 fasta 파일로 무엇을하고 싶은지 모르겠지만, 이런 일을해야한다고 생각합니다.

from Bio import SeqIO 
import sys 

for olig_fasta in SeqIO.parse(sys.argv[1], "fasta"):

  name = olig_fasta.name
  seq = str(olig_fasta.seq)
  seq_len = str(len(olig_fasta.seq))

  print("\t".join([name, seq_len, seq]))