我刚刚犯了一个最奇怪的错误。我还没有机会完全调试它,但我想发布这篇文章,看看其他人是否也有类似的问题。
问题
下面的代码在一个下载文件的函数中。如果存在最终文件,则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)文件(>8GB),我的想法是创建字典,其中键和值分别是蛋白质id和序列。
现在,我可以使用pickle创建数据并将数据转储到字典中,然后尝试用cpickle打开(我看到pickle转储数据更快,cpickle加载数据更快)。但是,这里的主要问题是时间:将其作为字典生成和转储需要花费太多的时间和内存(PC有8GB内存)。
是否有更快的选项可用于处理Python中的大型文件?
下面是我创建字典和转储数据的Python代码:
from Bio import SeqIO
import pickle,sys
fastaSeq = {}
with open
我一直试图将某一类型文件夹中的所有文件更改为另一种类型,然后将它们保存到我创建的另一个文件夹中。
在我的示例中,这些文件将从“.dna”文件更改为“.fasta”文件。我已经通过以下代码成功地完成了这一任务:
files = Path(directory).glob('*.dna')
for file in files:
record = snapgene_file_to_seqrecord(file)
fasta = record.format("fasta")
print(fasta)
我现在的问题
我对python相当陌生,而且我的python脚本(split_fasta.py)也有问题。下面是我的问题的一个例子:
list = ["1.fasta", "2.fasta", "3.fasta"]
for file in list:
contents = open(file, "r")
for line in contents:
if line[0] == ">":
new_file = open(file + "_chromosome.fa
我正在尝试从包含头部(重叠群的名称)和DNA序列的fasta文件创建数据帧。在我的数据帧的第一列,我想要文件名,在第二行,我想要重叠群的名称,在第三列,我想要重叠群序列的长度(基对的数量-我不必计算这个-它也在重叠群ID中,这样我以后就可以拆分了)。 在jupyter笔记本中(嵌入在bash shell中),我尝试了以下方法: files = []
identifiers = []
# r=root, d=directories, f = files
for r, d, f in os.walk(path):
for file in f:
if '.fasta
我正在尝试想出一个python脚本来提取一个12个氨基酸的序列,该序列位于一个给定的氨基酸(每个方向6个)的两侧,一个fasta序列。
输入
我有两个输入:一个fasta文件和一个熊猫数据帧。
fasta文件如下所示:
> sp|P00001| some text here 1
MKLLILTCLVAVALARPKHPIKKVSPTFDTNMVGKHQGLPQEVLNENLLRFFVAPFPEVFGKEKVSLDAGPGMCSRNE
>sp|P00002| some text here 2
MSSGNAKIGHPAPNFKATAVMPDGQFKDISLSDYKGKYVVFFFYPL
我尝试在Python提示符下运行qblast,在导入所有需要的库后,Python找不到我的文件:
>>> record = SeqIO.read(open("sinchimeras_1.fasta"), format="fasta")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: 'sinchimeras_1.f
我有一个python脚本如下:
#!/usr/bin/python
from Bio import SeqIO
fasta_file = "input.fa" # Input fasta file
wanted_file = "A_ids.txt" # Input interesting sequence IDs, one per line
result_file = "A.fasta" # Output fasta file
wanted = set()
with open(wanted_file) as f:
for line i
我已经编写了迭代FASTA文件的代码,它工作得很好,但是我得到了错误的长度。我不知道如何修改其余的代码,以便从每个序列中产生最大的ORF,这样就可以列出所有ORF,然后排序以获得最大的长度。
代码只需要从第二读帧返回最长的ORF的长度,并且只在3'->5‘的方向返回。
在使用translate()从DNA序列中提取氨基酸序列之后,我使用len(pro)*3+3来获得ORF长度。我还用不同的参数尝试了translate()。结果还是不对。我不知道密码有什么问题。可以在下面的代码和输出下面找到带有序列的文件的链接。
代码
from Bio import SeqIO
records =
我使用的python脚本接受两个输入文件(goodProteins.fasta和list.txt),并将结果保存到gene.fasta输出文件中。
fasta_file = "goodProteins.fasta" # First input
wanted_file = "list.txt" # Second input
result_file = "result.txt" # Output fasta file
wanted = set()
with open(wanted_file) as f:
for line in f:
我对python编程非常陌生。我有一些fasta文件,包含一些植物物种的蛋白质序列。
我想根据每个序列包含的氨基酸数量来过滤它们。标准是那些>20个氨基酸的序列。
通过上的资源,我可以得到20个以上的氨基酸序列。但是,当我试图在文件中写入它们时,它给出了这个。我无法解决此错误。此外,我还希望在输出文件中有每个序列的in。请帮帮我!
代码:
import Bio
from Bio import SeqIO
for s_record in SeqIO.parse('arabidopsis_thaliana_proteome.ath.tfa','fasta'):
我有一个包含多个fasta序列的txt文件(我愿意解析这些序列,特别是基因名称。请帮助选择标题中具有特定名称的序列。谢谢
txt文件中的原始数据。
lcl|NC_045512.2_gene_6 gene=ORF6 db_xref=GeneID:43740572 gbkey=Gene
在python中解析后的预期数据
ORF6
我用过这个,我能得到
***from Bio import SeqIO
for record in SeqIO.parse("mytext.txt", 'fasta'):
print(record.name)
我正在尝试创建一个使用python的程序,该程序将用户输入一个fasta文件,该文件稍后可用于修剪引物。我正在尝试使用BioPython来完成这个任务,但是我经常会遇到错误。我尝试过的代码如下:
from Bio import SeqIO
in_file = input("Enter filename with extension:")
def is_fasta(in_file):
with open(in_file) as handle:
fasta = SeqIO.parse(handle, "fasta")
re
我在不同的子文件夹中有大量的fasta文件(这些只是文本文件)。我需要的是一种方法来搜索目录中具有相同名称的文件,并将这些文件连接到一个与输入文件同名的文件中。我不能手动做这件事,因为我有10000+基因,我需要做这件事。
到目前为止,我有以下Python代码,它先查找其中一个目录,然后使用这些文件名搜索其他目录。这将返回一个列表,其中包含每个文件的完整路径。
import os
from os.path import join, abspath
path = '/directoryforfilelist/' #Directory for sou