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])”。我会更新我的答案来澄清