이 기능은 scikit-bio에 추가되었지만 bioconda에서 사용할 수있는 버전은 아직 지원되지 않습니다 (2017-12-15). gff3의 형식 파일은 Github repository에 있습니다. 다음과 같은 코드가 작동해야
$ git clone https://github.com/biocore/scikit-bio.git
$ cd scikit-bio
$ python setup.py install
파일에 주어진 예를 들어 다음과 같습니다 :
당신은 REPO를 복제하고 사용하여 로컬로 설치할 수 있습니다 나를 위해
import io
from skbio.metadata import IntervalMetadata
from skbio.io import read
gff = io.StringIO(open("annotations.gff3", "r").read())
im = read(gff, format='gff3', into=IntervalMetadata, seq_id="sequence1")
print(im)
이이 FormatIdentificationWarning
상승이, 항목이 올바르게보고됩니다.
4 interval features
-------------------
Interval(interval_metadata=<140154121000104>, bounds=[(0, 78)], fuzzy=[(False, False)], metadata={'source': 'source', 'type': 'gene', 'score': '.', 'strand': '+', 'ID': 'gene1'})
Interval(interval_metadata=<140154121000104>, bounds=[(0, 78)], fuzzy=[(False, False)], metadata={'source': 'source', 'type': 'mRNA', 'score': '.', 'strand': '+', 'ID': 'transcript1', 'parent': 'gene1'})
Interval(interval_metadata=<140154121000104>, bounds=[(0, 6)], fuzzy=[(False, False)], metadata={'source': 'source', 'type': 'CDS', 'score': '.', 'strand': '+', 'phase': 0, 'ID': 'CDS1', 'parent': 'transcript1'})
Interval(interval_metadata=<140154121000104>, bounds=[(72, 78)], fuzzy=[(False, False)], metadata={'source': 'source', 'type': 'CDS', 'score': '.', 'strand': '+', 'phase': 0, 'ID': 'CDS2', 'parent': 'transcript1'})
예를 들어, 코드에서 GFF3과 FASTA 파일은 read 함수에 사용 된 입력 문자열에서 연결됩니다. 어쩌면이 문제를 해결할 수 있습니다. 또한 100 % 확신 할 수없는 방법으로 추출한 간격을 사용하여 기능을 추출 할 수 있습니다.
scikit-bio 0.5.0부터는 gff3 파일 읽기가 지원되지 않습니다. 이 기능을 프로젝트에 추가하고 싶다면 문제 추적기에 기능 요청을 제출하십시오. https://github.com/biocore/scikit-bio/issues – jairideout