Tìm lặp lại trong chuỗi dna python

Number of records:  18 

Sorted records length:  {'gi|142022655|gb|EQ086233.1|255': 4894, 'gi|142022655|gb|EQ086233.1|16': 4804, 'gi|142022655|gb|EQ086233.1|91': 4635, 'gi|142022655|gb|EQ086233.1|454': 4564, 'gi|142022655|gb|EQ086233.1|293': 4338, 'gi|142022655|gb|EQ086233.1|396': 4076, 'gi|142022655|gb|EQ086233.1|45': 3511, 'gi|142022655|gb|EQ086233.1|250': 2867, 'gi|142022655|gb|EQ086233.1|527': 2646, 'gi|142022655|gb|EQ086233.1|4': 2095, 'gi|142022655|gb|EQ086233.1|277': 1432, 'gi|142022655|gb|EQ086233.1|75': 1352, 'gi|142022655|gb|EQ086233.1|304': 1151, 'gi|142022655|gb|EQ086233.1|594': 967, 'gi|142022655|gb|EQ086233.1|584': 964, 'gi|142022655|gb|EQ086233.1|88': 890, 'gi|142022655|gb|EQ086233.1|322': 442, 'gi|142022655|gb|EQ086233.1|346': 115} 

ORF1, sorted by length:  {'gi|142022655|gb|EQ086233.1|45': [384, 2394], 'gi|142022655|gb|EQ086233.1|250': [561, 1560], 'gi|142022655|gb|EQ086233.1|16': [1527, 1509], 'gi|142022655|gb|EQ086233.1|255': [291, 1443], 'gi|142022655|gb|EQ086233.1|91': [978, 1296], 'gi|142022655|gb|EQ086233.1|396': [528, 1059], 'gi|142022655|gb|EQ086233.1|454': [2337, 1044], 'gi|142022655|gb|EQ086233.1|293': [1389, 312], 'gi|142022655|gb|EQ086233.1|4': [444, 249], 'gi|142022655|gb|EQ086233.1|277': [597, 204], 'gi|142022655|gb|EQ086233.1|527': [1224, 195], 'gi|142022655|gb|EQ086233.1|75': [819, 180], 'gi|142022655|gb|EQ086233.1|88': [81, 120], 'gi|142022655|gb|EQ086233.1|304': [858, 105], 'gi|142022655|gb|EQ086233.1|584': [159, 90], 'gi|142022655|gb|EQ086233.1|594': [27, 42], 'gi|142022655|gb|EQ086233.1|322': [0, 0], 'gi|142022655|gb|EQ086233.1|346': [0, 0]} 

Counter of repeats of length n, most common 5:  [['CGCGCCG', 63], ['CGCCGCG', 62], ['GCCGCGC', 61], ['GCGCGCG', 59], ['GCGCGGC', 58]]

Một thẻ đã tồn tại với tên chi nhánh được cung cấp. Nhiều lệnh Git chấp nhận cả tên thẻ và tên nhánh, vì vậy việc tạo nhánh này có thể gây ra hành vi không mong muốn. Bạn có chắc chắn muốn tạo nhánh này không?

Lặp lại song song [TR] trong trình tự bộ gen là một tập hợp các trình tự DNA ngắn liền kề được lặp lại liên tiếp. Trình tự cốt lõi hoặc đơn vị lặp lại thường được gọi là motif. Theo độ dài mô-đun, các lần lặp lại song song có thể được phân loại thành vệ tinh siêu nhỏ và vệ tinh nhỏ. Microsatellites còn được gọi là chuỗi lặp lại đơn giản [SSR] hoặc chuỗi lặp lại song song ngắn [STR] với độ dài mô-đun từ 1-6 bp. Vệ tinh nhỏ đôi khi còn được gọi là số lần lặp lại song song có thể thay đổi [VNTR] có độ dài họa tiết dài hơn so với vệ tinh nhỏ

stria là một tiện ích mở rộng Python C nhẹ để xác định và phân tích các lần lặp lại song song ngắn. stria cho phép xác định nhanh cả SSR và VNTR chính xác và không hoàn hảo từ số lượng lớn trình tự DNA. stria cũng cung cấp các công cụ dòng lệnh để người dùng trích xuất các phần lặp lại song song từ các tệp Fasta

Tất cả DNA bao gồm một loạt các nucleotide được viết tắt là A, C, G và T, ví dụ. “ACGAATTCCG”. Khi nghiên cứu DNA, đôi khi rất hữu ích khi xác định các trình tự lặp lại trong DNA

Viết hàm tìm tất cả các chuỗi [chuỗi con] dài 10 ký tự xuất hiện nhiều lần trong một phân tử DNA

Ví dụ,

Cho s = “AAAAACCCCCAAAAACCCCCCAAAAAGGGGTTT”,

Quay lại.
[“AAAAACCCCC”, “CCCCCAAAAA”].

Phân tích.  

Đó là một câu hỏi thực tế đặc biệt đối với nhà sinh học tính toán. Sẽ không mất nhiều thời gian để có được ý tưởng. thiết lập cửa sổ trượt để quét chuỗi đã cho từ chữ cái đầu tiên. Đồng thời, thiết lập bảng băm để lập chỉ mục cho từng chuỗi 10 ký tự. Nó sẽ là một tổ hợp 4^10=2^20. Đối với mỗi chuỗi 10 chữ cái được quét, hãy lấy chỉ mục của nó và đếm số lần nó xuất hiện. Bí quyết là. xem xét Rolling Hash

Các giá trị trả về là một danh sách có thể lặp lại chứa bốn bộ, trong đó bộ thứ nhất và thứ hai tương ứng với tọa độ của một trong các cặp lặp lại, còn bộ thứ ba và thứ tư tương ứng với cặp lặp lại khác. Danh sách được sắp xếp với các cặp lặp lại có điểm cao hơn sẽ đến trước

Bạn có thể tìm thấy các phần lặp lại khá dễ dàng với tham chiếu ngược lại regular expression và phương pháp findall;

seq = 'ATCGTTTTTCGAAACTGCCCCCCACTGGGGA'

import re
hits = re.findall[r'[[[A-Z]]\2\2+]', seq] # regex matching all repeating A-Z groups
print [hit[0] for hit in hits]          # Comprehension to filter the results

['TTTTT', 'AAA', 'CCCCCC', 'GGGG']

Tôi muốn tìm mọi trình tự codon lặp lại trong trình tự DNA bằng Python, vì vậy, nếu tôi nhập trình tự, hãy tìm loại và thời gian lặp lại. hoàn toàn SỬ DỤNG PYTHON

cảm ơn các bác

trình tự lặp lại bài tập python • 11k lượt xem

THÊM NHẬN XÉT • liên kết đã cập nhật 11. 4 năm trước bởi Leonor Palmeira 3. 8k • viết 11. 4 năm trước bởi Wang ▴ 30

4

Vào chế độ chỉnh sửa

Điều này trông giống như một bài tập về nhà, phải không?

THÊM TRẢ LỜI • liên kết 11. 4 năm trước bởi Vitis ★ 2. 5k

0

Vào chế độ chỉnh sửa

Bạn không cần Perl để sử dụng các biểu thức chính quy. Chúng là hai ngôn ngữ rất khác nhau

THÊM TRẢ LỜI • liên kết 10. 3 năm trước bởi veronicaschroeder78 ▴ 140

0

Vào chế độ chỉnh sửa

Ý bạn là SSR?

THÊM TRẢ LỜI • liên kết 11. 4 năm trước bởi Renm79 • 0

9

Vào chế độ chỉnh sửa

11. 4 năm trước

Fucitol ▴ 140

Rất dễ thực hiện trong python bằng hàm đếm

from itertools import product    
[sequence.count[''.join[codon]] for codon in product['ATCG', repeat=3]]

Hoặc lấy kết quả trong từ điển [bạn có thể tự tìm ra cách lấy tối đa, v.v.]

dict[["".join[codon], sequence.upper[].count[''.join[codon]]] for codon in product["ATCG", repeat=3]]

[được chỉnh sửa sau bình luận chính xác của brentp bên dưới]

THÊM NHẬN XÉT • liên kết 11. 4 năm trước bởi Fucitol ▴ 140

2

Vào chế độ chỉnh sửa

+1. nitpick nhỏ, để có kết quả trong từ điển, bạn sẽ sử dụng. chính tả[["". tham gia [codon], seq. đếm[''. tham gia [codon]]] cho codon trong itertools. sản phẩm ["ATCG", lặp lại = 3]]

nếu không, bạn nhận được một danh sách các từ điển có độ dài 1

THÊM TRẢ LỜI • liên kết 11. 4 năm trước bởi brentp 24k

0

Vào chế độ chỉnh sửa

Giải pháp tốt đẹp;

THÊM TRẢ LỜI • liên kết 11. 4 năm trước bởi Neilfws 49k

0

Vào chế độ chỉnh sửa

Bạn đã đúng Neil, đó là rủi ro khi phiên Python đã mở với một số dữ liệu trình tự được tải. Để an toàn, bạn cũng có thể sử dụng. sự liên tiếp. phía trên[]. đếm[. ] hoạt động trên cả dữ liệu chữ thường và chữ hoa

THÊM TRẢ LỜI • liên kết 11. 4 năm trước bởi Fucitol ▴ 140

3

Vào chế độ chỉnh sửa

11. 4 năm trước

Leonor Palmeira 3. 8k

Chúng ta có nên thực sự chấp nhận làm bài tập về nhà không?

Một lời mời đơn giản để sử dụng

  • trợ giúp [str]

sẽ cung cấp cho 'wang' tất cả các công cụ cơ bản để bắt đầu việc này, bao gồm cả

  • phương thức đếm[]
  • phương thức tham gia []
  • các phương thức upper[] và Lower[]

Và anh ấy đã học cách sử dụng phương thức help[] và tài liệu tích hợp sẵn là những công cụ cơ bản của Python

Nhiều lần lặp lại DNA được tìm thấy ở đâu?

Các đơn vị nhỏ của DNA được lặp lại song song hàng nghìn lần. Do đó được gọi là VNTR [số lần lặp lại song song thay đổi]. Tính đa hình lớn này được tìm thấy chủ yếu ở tâm động và telomere .

Liệu DNA có một mô hình lặp đi lặp lại?

Các trình tự DNA lặp lại, nằm xen kẽ trong bộ gen của con người, có khả năng hình thành nhiều loại cấu trúc DNA khác thường với các kiểu gấp nếp đơn giản và phức tạp .

Chủ Đề