Biopython translate()错误
我有一个看起来像这样的文件:Biopython translate()错误,python,biopython,Python,Biopython,我有一个看起来像这样的文件: Type Variant_class ACC_NUM dbsnp genomic_coordinates_hg18 genomic_coordinates_hg19 HGVS_cdna HGVS_protein gene disease sequence_context_hg18 sequence_context_hg19 codon_change codon_number intron_number
Type Variant_class ACC_NUM dbsnp genomic_coordinates_hg18 genomic_coordinates_hg19 HGVS_cdna HGVS_protein gene disease sequence_context_hg18 sequence_context_hg19 codon_change codon_number intron_number site location location_reference_point author journal vol page year pmid entrezid sift_score sift_prediction mutpred_score
1 DM CM920001 rs1800433 null chr12:9232351:- NM_000014.4 NP_000005.2:p.C972Y A2M Chronicobstructivepulmonarydisease null CACAAAATCTTCTCCAGATGCCCTATGGCT[G/A]TGGAGAGCAGAATATGGTCCTCTTTGCTCC TGT TAT 972 null null 2 null Poller HUMGENET 88 313 1992 1370808 2 0 DAMAGING 0.594315245478036
1 DM CM004784 rs74315453 null chr22:43089410:- NM_017436.4 NP_059132.1:p.M183K A4GALT Pksynthasedeficiency(pphenotype) null TGCTCTCCGACGCCTCCAGGATCGCACTCA[T/A]GTGGAAGTTCGGCGGCATCTACCTGGACAC ATG AAG 183 null null 2 null Steffensen JBC 275 16723 2000 10747952 53947 0 DAMAGING 0.787878787878788
我想把第13列和第14列中的信息转换成相应的氨基酸。以下是我生成的脚本:
from Bio.Seq import Seq
from Bio.Alphabet import generic_dna
InFile = open("disease_mut_splitfinal.txt", 'rU')
InFile.readline()
OriginalSeq_list = []
MutSeq_list = []
import csv
with open("disease_mut_splitfinal.txt") as f:
reader = csv.DictReader(f, delimiter= "\t")
for row in reader:
OriginalSeq = row['codon_change']
MutSeq = row['codon_number']
region = row["genomic_coordinates_hg19"]
gene = row["gene"]
OriginalSeq_list.append(OriginalSeq)
MutSeq_list.append(MutSeq)
OutputFileName = "Translated.txt"
OutputFile = open(OutputFileName, 'w')
OutputFile.write(''+region+'\t'+gene+'\n')
for i in range(0, len(OriginalSeq_list)):
OrigSeq = OriginalSeq_list[i]
MutSEQ = MutSeq_list[i]
print OrigSeq
translated_original = OrigSeq.translate()
translated_mut= MutSEQ.translate()
OutputFile.write("\n" + OriginalSeq_list[i]+ "\t" + str(translated_original) + "\t" +MutSeq_list[i] + "\t" + str(translated_mut)+ "\n")
然而,我不断地发现这个错误:
TypeError: translate expected at least 1 arguments, got 0
我对自己做错的事有些不知所措。有什么建议吗
(即使您没有dropbox,也应该可以下载该文件)您使用的是字符串方法“translate”,而不是biopython seq object方法translate,我假设您希望这样做。您需要将字符串转换为seq对象,然后将其转换。试一试
from Bio import Seq
OrigSeq = Seq.Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
或者
from Bio.Seq import Seq
OrigSeq = Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
您使用的是字符串方法“translate”,而不是biopython seq object方法translate,我假设您希望这样做。您需要将字符串转换为seq对象,然后将其转换。试一试
from Bio import Seq
OrigSeq = Seq.Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
或者
from Bio.Seq import Seq
OrigSeq = Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
您使用的是字符串方法“translate”,而不是biopython seq object方法translate,我假设您希望这样做。您需要将字符串转换为seq对象,然后将其转换。试一试
from Bio import Seq
OrigSeq = Seq.Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
或者
from Bio.Seq import Seq
OrigSeq = Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
您使用的是字符串方法“translate”,而不是biopython seq object方法translate,我假设您希望这样做。您需要将字符串转换为seq对象,然后将其转换。试一试
from Bio import Seq
OrigSeq = Seq.Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
或者
from Bio.Seq import Seq
OrigSeq = Seq(OriginalSeq_list[i])
translated_original = OrigSeq.translate()
输出从哪里来?你在哪里使用biopython?你似乎无缘无故地打开了两次文件是的,没错。我不需要两次写入该文件。我还修正了我的输出。你真的只想要区域的最后一个值吗?不,我不想要,但我现在无法得到任何类型的输出。我只想让我的翻译工作,这样我就可以修复我的代码。如果你添加一个链接到实际的文件,它会有所帮助,你的代码中似乎有很多问题输出来自哪里?你在哪里使用biopython?你似乎无缘无故地打开了两次文件是的,没错。我不需要两次写入该文件。我还修正了我的输出。你真的只想要区域的最后一个值吗?不,我不想要,但我现在无法得到任何类型的输出。我只想让我的翻译工作,这样我就可以修复我的代码。如果你添加一个链接到实际的文件,它会有所帮助,你的代码中似乎有很多问题输出来自哪里?你在哪里使用biopython?你似乎无缘无故地打开了两次文件是的,没错。我不需要两次写入该文件。我还修正了我的输出。你真的只想要区域的最后一个值吗?不,我不想要,但我现在无法得到任何类型的输出。我只想让我的翻译工作,这样我就可以修复我的代码。如果你添加一个链接到实际的文件,它会有所帮助,你的代码中似乎有很多问题输出来自哪里?你在哪里使用biopython?你似乎无缘无故地打开了两次文件是的,没错。我不需要两次写入该文件。我还修正了我的输出。你真的只想要区域的最后一个值吗?不,我不想要,但我现在无法得到任何类型的输出。我只想让我的翻译工作,这样我就可以修复我的代码。如果你添加一个指向实际文件的链接,这会有所帮助,你的代码中似乎有很多问题。当我尝试此操作时,我遇到了一个错误:AttributeError:type object'Seq'没有属性'Seq'
ah,让它工作了。应该是OrigSeq=Seq(OriginalSeq\u list[i])
对不起,您已经从Bio.Seq导入了Seq,而我刚刚导入了Bio.Seq。您应该能够使用“Seq(OriginalSeq_list[i])”。我将更新我的答案以澄清当我尝试此操作时,我遇到了一个错误:AttributeError:type对象“Seq”没有属性“Seq”
Ahh,开始工作了。应该是OrigSeq=Seq(OriginalSeq\u list[i])
对不起,您已经从Bio.Seq导入了Seq,而我刚刚导入了Bio.Seq。您应该能够使用“Seq(OriginalSeq_list[i])”。我将更新我的答案以澄清当我尝试此操作时,我遇到了一个错误:AttributeError:type对象“Seq”没有属性“Seq”
Ahh,开始工作了。应该是OrigSeq=Seq(OriginalSeq\u list[i])
对不起,您已经从Bio.Seq导入了Seq,而我刚刚导入了Bio.Seq。您应该能够使用“Seq(OriginalSeq_list[i])”。我将更新我的答案以澄清当我尝试此操作时,我遇到了一个错误:AttributeError:type对象“Seq”没有属性“Seq”
Ahh,开始工作了。应该是OrigSeq=Seq(OriginalSeq\u list[i])
对不起,您已经从Bio.Seq导入了Seq,而我刚刚导入了Bio.Seq。您应该能够使用“Seq(OriginalSeq_list[i])”。我会更新我的答案来澄清