MetagenomeDB היא ספריית פייתון נועד לאחסן בקלות, לאחזר ויסמנו רצפי metagenomic & nbsp;. מעשה MetagenomeDB כשכבת הפשטה על גבי מסד נתוני MongoDB. הוא מספק API כדי ליצור ולשנות ולחבר את שני סוגים של אובייקטים, כלומר רצפים ואוספים:
& Nbsp; * רצפים (כיתת רצף) יכול להיות קורא, contigs, שיבוטים PCR, וכו '
& Nbsp; * אוספים (כיתת גבייה) מייצגת קבוצות של רצפים; למשל, קורא כתוצאה מהרצף של מדגם, contigs הורכב מקבוצה של קוראת, ספריית PCR
כל אובייקט יכול להיות מבואר באמצעות תחביר כמו מילון-:
# הראשון, אנו מייבאים הספרייה
יבוא MetagenomeDB כmdb
# לאחר מכן אנו יוצרים אובייקט רצף חדש עם שתי
# נכסים (חובה), 'שם' ו 'רצף'
s = mdb.Sequence ({"שם": "הרצף שלי", "רצף": "atgc"})
# האובייקט כעת ניתן מבואר
["האורך"] של ההדפסה
ים ["סוג"] = "לקרוא"
# לשנות פעם אחת, האובייקט צריך להיות מחויב
# למסד הנתונים לשינויים להישאר
s.commit ()
אובייקטים של רצף סוג או אוסף יכולים להיות מחוברים זה לזה כדי לייצג את מערכי נתונים metagenomic שונים. דוגמאות כוללות, אך לא מוגבלות ל:
& Nbsp; * אוסף של קורא כתוצאה מריצת רצף (קשר בין רצף מרובה אובייקטים ואוסף אחד)
& Nbsp; * קבוצה של contigs כתוצאה מההרכבה של קבוצה של קוראת (יחסים בין שני אובייקטי גבייה)
& Nbsp; * קורא שהם חלק מcontig (קשר בין רצף מרובה אובייקטים ורצף אחד)
& Nbsp; * רצף דומה לרצף אחר (יחסים בין שני אובייקטי רצף)
& Nbsp; * אוסף שהוא חלק מאוסף גדול יותר (יחס בין שני אובייקטי גבייה)
התוצאה היא רשת של רצפים וגבייה, שניתן לחקור בשיטות ייעודיות; IEG, Collection.list_sequences (), Sequence.list_collections (), Sequence.list_related_sequences (). כל אחת מהשיטות הללו יאפשר למסננים מתוחכמים באמצעות תחביר שאילתות MongoDB:
# רשימה כל האוספים של 'collection_of_reads' הסוג
# 'S' הרצף שייך ל
אוספים = s.list_collections ({"סוג": "collection_of_reads"})
# רשימה כל הרצפים שגם שייכים לאוספים אלה
# באורך של לפחות 50 נ"ב
לג באוספים:
& Nbsp; c.list_sequences הדפסה ({"אורך": {"gt $": 50}})
MetagenomeDB מספק גם סט של כלי שורת הפקודה כדי לייבא רצפי נוקליאוטידים, רצפי חלבונים, פיצוץ ופלט אלגוריתמי יישור FASTA, וקבצי הרכבה ACE. . כלים אחרים הניתנים להוספה או הסר של מספר אובייקטים, או לתסמן אותם
דרישות :
- פייתון
תגובות לא נמצא