ambiguous symbols (IUPAC)과 함께 dna 서열을 포함하는 FASTA 파일을 입력해야만한다. FASTA 파일의 이름과 모호하지 않은 DNA 문자열을 감안할 때 주어진 시퀀스가 서브 시퀀스 일 수있는 시퀀스 식별자 ('>'
헤더)를 작성하고 싶습니다. 가능한 모든 시퀀스를 생성하지 않고이 구현하고 싶습니다 및 하위 시퀀스 FASTA 파일의 시퀀스뿐만 아니라 모호한 기호가있을 수 있습니다. 예 : "ACC"시퀀스는 "CGMBHTW"의 서브 시퀀스 일 수 있습니다. 누군가 나를 도와 줄 수 있습니까?fasta 서열 내에서 뉴클레오티드 서브 서열을 찾는다
0
A
답변
0
"일반화 된"뉴클레오타이드를 나타내는 문자 세트로 정의한 다음 해당 세트의 목록에서 시퀀스를 변환하고 다른 시퀀스와 호환되는 위치가 있는지 한 시퀀스를 스캔 할 수 있습니다.
다음은 가장 효율적인 코드는 아니지만 작동하는 것처럼 보입니다. (이중 루핑 인덱스가 올바른지 ...).
A = {"A"}
C = {"C"}
G = {"G"}
T = {"T"}
R = A | G
Y = C | T
S = G | C
W = A | T
K = G | T
M = A | C
B = C | G | T
D = A | G | T
H = A | C | T
V = A | C | G
N = {"A", "C", "G", "T"}
letter2nucl = {
"A" : A,
"C" : C,
"G" : G,
"T" : T,
"R" : R,
"Y" : Y,
"S" : S,
"W" : W,
"K" : K,
"M" : M,
"B" : B,
"D" : D,
"H" : H,
"V" : V,
"N" : N}
def is_subseq(seq1, seq2):
l1 = len(seq1)
l2 = len(seq2)
nucls1 = [letter2nucl[letter] for letter in seq1]
nucls2 = [letter2nucl[letter] for letter in seq2]
i = 0
while i < 1 + l2 - l1:
subseq = True
for j, nucl in enumerate(nucls1):
if not (nucls2[i+j] & nucl):
# empty set intersection
subseq = False
break
if subseq:
return True
i += 1
return False
seq1 = "ACC"
seq2 = "CGMBHTW"
if is_subseq(seq1, seq2):
print("%s is subsequence of %s" % (seq1, seq2))
seq1 = "GRT"
seq2 = "AATCBAT"
if is_subseq(seq1, seq2):
print("%s is subsequence of %s" % (seq1, seq2))
결과는 다음과 같습니다
ACC is subsequence of CGMBHTW
GRT is subsequence of AATCBAT
그런 다음, 바이오 파이썬의 SeqIO
기능을 사용하여 읽기 시퀀스에 사용할 수 있습니다.
관련 문제
- 1. FASTA 형식의 서열 검색
- 2. 파이썬으로 Fasta Moonlight 단백질 서열 추출하기
- 3. 뉴클레오티드 서열의 각 뉴클레오타이드 위치로부터 시작하여 주어진 길이의 모든 서브 스트링을 추출한다
- 4. 파이썬은 문자열 내에서 서브 문자열을 찾는다
- 5. .fasta 시퀀스를 읽어서 뉴클레오티드 데이터를 추출한 다음 TabDelimited 파일에 쓰기
- 6. python - fasta 파일에서 선택적으로 염기 서열을 선택 하시겠습니까?
- 7. 1000 개 뉴 클레오 티브 창에서 서열 반복하기
- 8. 일련의 숫자 내에서 서브 시리즈의 길이와 위치를 찾는다.
- 9. playframework의 스칼라 방법 평면에 미래 [서열 [서열 [지능]
- 10. 계산 DNA 서열
- 11. for 루프로 파이썬 계산 뉴클레오티드
- 12. 여러 개의 fasta 파일에서 생물체 및 DNA 서열 데이터 목록 만들기
- 13. 생물학적 서열 저장에 능숙한 상용 데이터베이스
- 14. 파이썬 계산 DNA 뉴클레오티드
- 15. fasta 파일의 시퀀스 인쇄
- 16. 가장 길게 증가하는 서브 시퀀스의 길이를 찾는다.
- 17. 서브 디렉토리에있는 모든 심볼릭 링크를 찾는다.
- 18. 배열의 최대 서브 세트의 합을 찾는다.
- 19. 나가서 설명하자면 NameError : 이름이 '서열'
- 20. fasta 파일을 평평하게하기
- 21. 위치를 기반으로 fasta 시퀀스를 추출합니다.
- 22. 찾기 서열
- 23. 계수 서열
- 24. 첨가제 서열
- 25. I이 형식의 서열을
- 26. 벡터 Clojure의에 서열을 변환
- 27. 많은 서열에 대한 (평균) 서열 차이 계산
- 28. 특정 fasta ID가있는 fasta 블록 블록 추출하기
- 29. C에서 FASTA 파일을 읽는 가장 좋은 방법 #
- 30. 좌표로 인간 게놈 서열을 얻는 빠른 방법
시도는 무엇입니까? -> 지금까지 코드 표시 – shash678
시작하려면 * 어떤 * 코드도 제공 할 수 있습니까? 나에 관해서는, 나는이 질문 뒤에 생물학에 대해 전혀 모른다. 그래서 당신이 해결하려고하는 문제에 대한 더 명확한 것이 도움이 될 것이다. – davedwards
각 테스트에 대한 입력과 올바른 결과를 보여주는 몇 가지 테스트 예제를 제공 할 수 있는가? ? – Steve