python文本处理---fasta文件提取指定ID的序列

利用python脚本,提取指定ID名称的序列

#!/usr/bin/python3
#-*- coding:utf-8 -*-
#提取指定ID的序列

import sys
args=sys.argv
fr=open(args[1], ‘r‘)
fw=open(‘./out.fasta‘, ‘w‘)
dict={}
for line in fr:
    if line.startswith(‘>‘):
        name=line.split()[0]
        dict[name]=‘‘
    else:
        dict[name]+=line.replace(‘\n‘,‘‘)
fr.close()
for ID in dict.keys():
    if ID ==args[2]:
        fw.write(ID)
        fw.write(‘\n‘)
        fw.write(dict[ID])        fw.write(‘\n‘)        fw.write(str((dict[ID].count(‘G‘)+dict[ID].count(‘C‘))/len(dict[ID]))) #计算指定序列中的GC含量
fw.close()

用法:python3 filename  ‘ID_name‘输出的结果保存在文件:out.fasta中
时间: 2024-10-30 05:34:17

python文本处理---fasta文件提取指定ID的序列的相关文章

python学习——通过命令行参数根据fasta文件中染色体id提取染色体序列

提取fasta文件genome_test.fa中第14号染色体的序列,其内容如下: >chr1 ATATATATAT >chr2 ATATATATATCGCGCGCGCG >chr3 ATATATATATCGCGCGCGCGATATATATAT >chr4 ATATATATATCGCGCGCGCGATATATATATCGCGCGCGCG >chr5 ATATATATATCGCGCGCGCGATATATATATCGCGCGCGCGATATATATAT >chr6 ATCG

python 复制多个文件到指定目录(基于python 3.X)

import osimport shutil def copyPDF(): addressPDF = "E:/totally/FinancePDF/" f_list = os.listdir(addressPDF) n=0 for fileNAME in f_list: if os.path.splitext(fileNAME)[1] == '.pdf': n += 1 oldname = u"E:\\totally\\FinancePDF\\" + fileNAM

求fasta文件中互补序列

一个名为read_1.fa 的fasta文件,里面有若干序列,如: >@r1TGAATGCGAACTCCGGGACGCTCAGTAATGTGACGATAGCTGAAAACTGTACGATAAACNGTACGCTGAGGGCAGAAAAAATCGTCGGGGACATTNTAAAGGCGGCGAGCGCGGCTTTTCCG>@r2NTTNTGATGCGGGCTTGTGGAGTTCAGCCGATCTGACTTATGTCATTACCTATGAAATGTGAGGACGCTATGCCTGTACCAAATC

fasta文件中序列的排序

同样的名为read_1.fa 的fasta文件,里面有若干序列,如: >@r1TGAATGCGAACTCCGGGACGCTCAGTAATGTGACGATAGCTGAAAACTGTACGATAAACNGTACGCTGAGGGCAGAAAAAATCGTCGGGGACATTNTAAAGGCGGCGAGCGCGGCTTTTCCG>@r2NTTNTGATGCGGGCTTGTGGAGTTCAGCCGATCTGACTTATGTCATTACCTATGAAATGTGAGGACGCTATGCCTGTACCAAAT

fasta文件中DNA to RNA

同样的名为read_1.fa 的fasta文件,里面有若干序列,如: >@r1TGAATGCGAACTCCGGGACGCTCAGTAATGTGACGATAGCTGAAAACTGTACGATAAACNGTACGCTGAGGGCAGAAAAAATCGTCGGGGACATTNTAAAGGCGGCGAGCGCGGCTTTTCCG>@r2NTTNTGATGCGGGCTTGTGGAGTTCAGCCGATCTGACTTATGTCATTACCTATGAAATGTGAGGACGCTATGCCTGTACCAAAT

python文本处理---计算fasta文件中不同氨基酸的数目

#::!/usr/bin/python3 #-*- coding:utf-8 -*- #计算fasta文件中各个氨基酸的含量 import sys args=sys.argv f=open(args[1], 'r') fw=open('out.txt', 'w') line=f.read() txt=''.join(line.split('\n')[1:]) #可以得到氨基酸序列 #构建了各个氨基酸和含量的字典 ##注意collections模块中Counter的用法 from collecti

python学习——读取染色体长度(七:读取fasta文件)

读取fasta文件genome_test.fa,并计算染色体总长,同时输出最长染色体编号.序列以及长度 fasta文件genom_test.fa的内容如下: >chr1ATATATATAT>chr2ATATATATATCGCGCGCGCG>chr3ATATATATATCGCGCGCGCGATATATATAT>chr4ATATATATATCGCGCGCGCGATATATATATCGCGCGCGCG>chr5ATATATATATCGCGCGCGCGATATATATATCGCGCG

perl 多fasta文件匹配,并提取匹配文件第一条序列

目标如题,有多个fasta文件和一个文件名列表,将文件名列表中包含的文件匹配出来并提取第一条序列合并成一个fa文件. 这个采用perl实现,用法和代码如下: 1 #!/usr/bin/perl -w 2 use strict; 3 4 sub usage{ 5 die "usage:perl $0 <fa.list> <Fasta_Dir> <merged.fa>\n",unless(@ARGV==3); 6 } 7 usage(); 8 9 ope

python专题-读取xml文件

关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码.这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml 文件. 什么是xml? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. abc.xml <?xml version="1.0" encoding="utf-8"?> <catalog> <max