你好,
我试图编写一个程序,它读取一个包含多个DNA序列的FASTA格式文件,识别一个序列中所有重复的4-mers (即所有多次发生的4-mers ),并打印出重复的4-mer和在其中找到它的序列的头。k-mer只是一个k核苷酸序列(例如“aaca”、“gacg”和“tttt”是4-mers).
这是我的密码:
use strict;
use warnings;
my $count = -1;
my $file = "sequences.fa";
my $seq = '';
my @header = ();
my @sequences = ();
my $li
我是Python新手,我想知道如何从Python中的Fasta文件中找到相同的序列。例如,这里有4个记录序列读取,如何找到相同的序列并返回它们的ids?非常感谢!!
from Bio import SeqIO
record=list(SeqIO.parse("data/dna.txt", "fasta"))
for i in range(0,len(record)):
print record[i].id,record[i].seq
seq1 GAATGCATACTGCATCGATA
seq2 CATAAAACGTCTCCATCGCT
seq3 TG
我有一个fasta文件,另一个文件包含位置,我想用默认设置替换每个序列的某个位置,例如,我的位置文件看起来像a/c 120,我的替换表看起来像a/c到W,所以我想得到一个新的fasta文件,位置120用w替换。
该程序是用Python编写的
所以第一个问题是我不能到达正确的位置,例如,如果我使用my_seq_id0:3,我就得到了序列名!而不是序列。位置文件看起来像id1 219 A/C
from Bio import SeqIO
import sys
import string
userInput1=raw_input("enter your sequence:")
user
我想开始使用Biopython来对齐序列文件,但是库总是给我错误。我的代码如下:
from Bio import AlignIO
import Bio
alignment = AlignIO.read("A_prot.fasta","fasta")
print alignment
我确保将A_prot.fasta放在与我的程序相同的目录中,但我收到一个错误消息:
Traceback (most recent call last):
File "bio_seq_align.py", line 5, in <module>
a
我试图用python编写一个脚本来解析一个大型的fasta文件,因为我正在学习脚本,所以我不想使用biopython。脚本需要将登录号、序列长度和序列gc内容打印到控制台。我已经能够提取登录号,但无法提取序列,因为它们被读取为行,这使我无法计算序列长度和gc内容。
有人能帮我吗?我尝试在列表中对行进行分组,但是这会在一个列表中创建多个列表,我也不知道如何加入它们。
seq=""
seqcount=0
seqlen=0
gc=0
#prompt user for file name
infile=input("Enter the name of your designa
我一直使用模块use Bio::DB::Fasta来访问fasta文件(文档位置:)。我发现这比使用Samtools从fasta文件中提取位置要快得多。但是,我想知道如果查询包含的位置超过了fasta的最大长度,会发生什么。
今天,在一个查询中,我尝试访问fasta中的一个位置,它超出了fasta中的最大位置。但是,在这种情况下,该方法没有给出错误。我的fasta文件包含0/1个基数,返回的输出是"1“。我想知道这是不是一个错误,或者实际上它给出了一个有效的输出,但是错误的位置。我尝试查看文档,但找不到有关错误代码的任何信息。
我的代码如下:
use strict;
use warni
我正在编写一个函数,它应该通过DNA序列的.fasta文件,并为文件中的每个序列创建一个核苷酸(nt)和二核苷酸(dnt)频率字典。然后,我将每本字典存储在一个名为“频率”的列表中。这是一段奇怪的代码:
for fasta in seq_file:
freq = {}
dna = str(fasta.seq)
for base1 in ['A', 'T', 'G', 'C']:
onefreq = float(dna.count(base1)) / len(dna)
freq
我正在尝试将成百上千个.fasta文件连接成一个包含所有序列的大型fasta文件。我还没有在论坛中找到一个具体的方法来实现这一点。我确实遇到了来自的这段代码,我对它进行了一些调整。
Fasta.py包含以下代码:
class fasta:
def __init__(self, name, sequence):
self.name = name
self.sequence = sequence
def read_fasta(file):
items = []
index = 0
for line in file:
如何从fasta文件中提取序列如果我有一个包含9个序列的fasta文件,每次我从文件中提取3个序列,然后计算这三个序列之间的距离:
distance(seq1,seq2,seq3)
然后我选择其他三个序列
sequences=[]
with open('example.fasta', 'r') as file:
for Seq_record in SeqIO.parse(file, 'fasta'):
format_string = "%s" % Seq_record.seq
sequenc
我在从文件中读取字符时遇到了问题。我有一个名为fst.fasta的文件,我想知道字母A和T出现的次数。
这是第一个代码示例:
f = open("fst.fasta","r")
a = f.read().count("A")
t = f.read().count("T")
print "nbr de A : ", a
print "nbr de T : ", t
结果:
nbr of A : 255
nbr of T : 0
即使有T,我也会得到0
但在那之后,我尝试了这个:
f = ope
所以我有一个文本文件,里面有基因的头,在同一物种下有不同的基因序列。因此,我提取了标题(headers.txt),并将其复制到另一个文件(uniqueheaders.txt)中。我删除了uniqueheaders.txt中的所有副本。
我正在尝试循环读取一行uniqueheaders.txt,然后循环读取headers.txt以检查副本。if语句检测重复,并增加计数器以将其追加到标头。这将对headers.txt中的所有头进行编号,因此我将它们插入到FASTA文件中。我的密码在这里:
while IFS= read -r uniqueline
do
counter=0
whil
我刚刚犯了一个最奇怪的错误。我还没有机会完全调试它,但我想发布这篇文章,看看其他人是否也有类似的问题。
问题
下面的代码在一个下载文件的函数中。如果存在最终文件,则if语句逻辑用于跳过下载步骤。
log.debug('force: {}, isfile: {}'.format(force, os.path.isfile(fasta_path)))
log.debug('if result: {}'.format(force or not os.path.isfile(fasta_path)))
if force or not os.path.isfile(fa
我必须创建一个软件,挑选多个fasta文件,并创建另一个与所有序列。为此,我编写了以下代码: import sys,random
from Bio import SeqIO
from Bio.Seq import Seq
from Bio.SeqRecord import SeqRecord
from Bio import AlignIO
# Use: python join_fasta.py infile1.fasta infile2.fasta outfile.fasta
infile1 = sys.argv[1] #N
from Bio import SeqIO
from Bio import SeqRecord
from Bio import SeqFeature
for rec in SeqIO.parse("C:/Users/Siva/Downloads/sequence.gp","genbank"):
if rec.features:
for feature in rec.features:
if feature.type =="Region":
我想通过Python从兼职蛋白质数据库( www.moonlightingproteins.org/results.php?search_text= )中提取含有氨基酸序列的FASTA文件,因为这是一个迭代过程,我宁愿学习如何编程而不是手动操作,b/c来吧,我们在2016年了。问题是我不知道如何写代码,因为我是一个新手程序员:基本的伪代码是:
for protein_name in site: www.moonlightingproteins.org/results.php?search_text=:
go to the uniprot option
dow
我有一个包含数百条记录的fasta文件,但我试图返回一个只包含前20条记录(记录描述、AA长度和名称)的表。
我的代码不工作,我想知道如何只返回前20条记录-最好是以表格式返回。
这是我的python代码:
#!/usr/local/bin/python3
import cgi
import re
form = cgi.FieldStorage()
from Bio import SeqIO
for index, record in enumerate(SeqIO.parse("e_coli_k12_dh10b.faa", "fasta")): print(re
我有一个包含DNA序列和序列名称的FASTA文件,我需要建立一个重叠分数的矩阵。我在Biopython中找到了模块pairwise2,它似乎做得很好。除了我的序列已经对齐,当我使用pairwise2时,它再次尝试对齐序列,这花费了很长的时间,显然每次对齐都得到相同的重叠分数。因此,我的问题是,如何获得重叠评分,而不试图再次对齐序列?以下是我到目前为止所拥有的:
from Bio.Alphabet import IUPAC
from Bio import SeqIO
from Bio import pairwise2
fasta_file = SeqIO.parse('unambigu