我有一个缩写列表
字母= ['Ala','Asx','Cys',......'Glx']
我想将其输出到一个文本文件,看起来像这样:
#Letters
Ala,Asx,Cys,..... Glx
Noob程序员在这里!我总是忘记最简单的事情!啊
请帮助和谢谢!
import Bio
from Bio import Seq
from Bio.Seq import Alphabet
output = 'alphabetSoupOutput.txt'
fh = open(output, 'w')
ThreeLetterProtein = '#Three Letter Protein'
Letters = Bio.Alphabet.ThreeLetterProtein.letters
fh.write(ThreeLetterProtein + '\n')
#Don't know what goes here
fh.close()
Run Code Online (Sandbox Code Playgroud) 我正在寻找一种方法来查找 python 中两个字符串之间不匹配的总数。我的输入是一个看起来像这样的列表
['sequence=AGATGG', 'sequence=AGCTAG', 'sequence=TGCTAG',
'sequence=AGGTAG', 'sequence=AGCTAG', 'sequence=AGAGAG']
Run Code Online (Sandbox Code Playgroud)
对于每个字符串,我想看看它与序列有多少差异"sequence=AGATAA"。因此,如果输入[0]来自上面的列表,则输出将如下所示:
sequence=AGATGG, 2
Run Code Online (Sandbox Code Playgroud)
我不知道是否将每个字母拆分为单独的列表,或者是否应该尝试以某种方式比较整个字符串。任何帮助都是有用的,谢谢
例如,我有一个包含以下序列的fasta文件:
>human1
AGGGCGSTGC
>human2
GCTTGCGCTAG
>human3
TTCGCTAG
Run Code Online (Sandbox Code Playgroud)
如何使用python读取具有以下内容的文本文件来提取序列?1表示真,0表示假.仅提取值为1的序列.
示例文本文件:
0
1
1
Run Code Online (Sandbox Code Playgroud)
预期产量:
>human2
GCTTGCGCTAG
>human3
TTCGCTAG
Run Code Online (Sandbox Code Playgroud) 我正在编写一个脚本,将多个fastq文件转换为fasta和qual.总是当我运行它时,脚本之后有零个字节.
import sys
import re
import os
import fileinput
from Bio import SeqIO
from Bio.Alphabet import IUPAC
Directory = "/users/etc"
def process(Directory):
filelist = os.listdir(Directory)
for f in filelist:
SeqIO.convert(f, "fastq", f.replace(".fastq",".qual"), "qual", alphabet=IUPAC.ambiguous_dna)
my_directory = "/users/etc"
process(my_directory)
Run Code Online (Sandbox Code Playgroud)
我同时忙于同时执行fastq到fasta和qual转换 - 只是复制SeqIO.convert行并交换文件格式不起作用...而且,我希望有一个数字打印多少个文件已被转换.
干杯
我正在尝试使用以下代码搜索一些文章:
handle = Entrez.esearch(db="pubmed", term="lung+cancer")
record = Entrez.read(handle)
Run Code Online (Sandbox Code Playgroud)
从record['Count']我可以看到有 293279 个结果,但是当我查看record['IdList']它时只给了我 20 个 Id。这是为什么?如何获取全部 293279 条记录?
我有一个像这个例子的大文本文件:
例:
>chr9:128683-128744
GGATTTCTTCTTAGTTTGGATCCATTGCTGGTGAGCTAGTGGGATTTTTTGGGGGGTGTTA
>chr16:134222-134283
AGCTGGAAGCAGCGTGGGAATCACAGAATGGCCGGGACCTTAAAGGCTTTGCTTGGCCTGG
>chr16:134226-134287
GGAAGCAGCGTGGGAATCACAGAATGGACGGCCGATTAAAGGCTTTGCTTGGCCTGGATTT
>chr1:134723-134784
AAGTGATTCACCCTGCCTTTCCGACCTTCCCCAGAACAGAACACGTTGATCGTGGGCGATA
>chr16:135770-135831
GCCTGAGCAAAGGGCCTGCCCAGACAAGATTTTTTAATTGTTTAAAAACCGAATAAATGTT
Run Code Online (Sandbox Code Playgroud)
此文件分为不同的部分,每个部分有2行.第一行以>(此行称为ID)开头,第二行是字母序列.我想GGAC在字母序列中搜索一个短主题(),如果它们包含主题,我想获得该行的ID(在该行之上一行).
对于上面的例子,这是预期的输出:
预期产量:
>chr16:134222-134283
>chr16:134226-134287
Run Code Online (Sandbox Code Playgroud)
我试图使用以下命令在python中执行此操作,但它不返回我想要的.
infile = open('infile.txt', 'r')
ss = 'CCGA'
new = []
for line in range(len(infile)):
if not infile[line].startswith('>'):
for match in pattern.finder(ss):
new.append(infile[line-1])
Run Code Online (Sandbox Code Playgroud)
你知道怎么解决吗?
我有 DNA 序列数据。例如,
X="ACGGGT"
Y="ACGGT"
Run Code Online (Sandbox Code Playgroud)
我想知道对齐分数,因此我使用了biopythonpairwise2函数。例如,
from Bio import pairwise2
from Bio.pairwise2 import format_alignment
alignments = pairwise2.align.globalxx(X, Y)
for a in alignments:
print(format_alignment(*a))
Run Code Online (Sandbox Code Playgroud)
这成功地显示了 DNA 比对,但我只需要如下的分数。有没有办法只显示分数?
我使用了biopython,但如果有更好的方法,我们将不胜感激。
我遇到了一个问题,它要么将所有 Gs 替换为 Cs,但不将 C 替换为 Gs,我该怎么做才能解决这个问题?我现在得到的输出是“GUGAGGGGAG”我正在寻找的输出是“CUCAGCGCAG”这是我到目前为止的代码:
a_string = "GAGTCGCGTC"
remove_characters = ["G", "A", "T", "C"]
ch1 = "G"
ch2 = "A"
ch3 = "T"
ch4 = "C"
a_string = a_string.replace (ch1, "C")
a_string = a_string.replace (ch2, "U")
a_string = a_string.replace (ch3, "A")
a_string = a_string.replace (ch4, "G")
print (a_string)
Run Code Online (Sandbox Code Playgroud)
biopython ×8
python ×8
fasta ×2
dna-sequence ×1
genetics ×1
pairwise ×1
pubmed ×1
python-2.7 ×1
python-3.x ×1