SAMtools

SAMtools היא חבילת תכנה שנכתבה על ידי Heng Li ומאפשרת צפייה וביצוע פעולות ברצפי DNA שהתקבלו מריצוף DNA בפורמטים SAM, BAM ו-CRAN. קבצים אלה נוצרו כפלט על ידי תוכנות עימוד רצפים (alignment) לרצפים קצרים, כגון תוכנת BWA. חבילת התוכנה, הבסיסית והמתקדמת, מאפשרת ביצוע משימות מורכבות כגון אפיון שונות (variant calling) וצפייה בתוצאות עימוד, כמו גם מיון, אינדוקס (מיפתוח), חילוץ נתונים והמרות בין פורמטים שונים. לאור העובדה שקובצי SAM יכולים להיות גדולים למדי (עשרה ג'יגה בייט הוא גודל סביר), הקבצים לרוב נדחסים כדי לחסוך בשטח דיסק. קובצי SAM הם קובצי טקסט הניתנים לקריאה ישירה, ואילו קובצי BAM הם הגרסה הבינארית השקולה שלהם. קובצי BAM הם לרב דחוסים יותר מאשר קובצי SAM, ומאפשרים פעולה יעילה יותר של תוכנות. SAMtools מאפשרים לעבוד ישירות עם קובצי BAM, ללא צורך להמיר אותם לקובצי SAM קודם לכן. בנוסף לכך, לאור העובדה שפורמט ה-SAM/BAM הוא מורכב, וכלל מידע בנוגע לקריאות, לרצף הייחוס (reference), לעימוד, לאיכות ומידע נוסף, SAMtools מקל על העבודה עם הקבצים על ידי הסתרת מידע בעל חשיבות משנית.

==פקודות SAMtools==
SAMtools כל אחת מהפקודות נקראת על ידי samtools ושם הפקודה.
; view :
פקודת ה-view מסננת נתונים בפורמט SAM או BAM. אפשרויות וארגומנטים גורמים לתוכנה להעביר חלק (או את כל) המידע. הקלט הוא לרב בפורמט SAM או BAM ומופיע כארגמונט, אך יכול להיות מוזרם (piped) מכל פקודה אחרת. שימושים אפשריים כוללים חילוץ תת-קבוצה של נתונים לקובץ חדש, המרה בין פורמט BAM ל-SAM, וכן צפייה בתוכן הקובץ הגולמי. סדר הרצפים שחולצו נשמר על ידי התוכנה.
; sort :
פקודת sort ממיינת קובצי BAM על פי המיקום ברצף הייחוס, כפי שנקבע על ידי העימוד. על פי ברירת המחדל הפלט הממויין מופנה לקובץ חדש (אף על פי ניתן להפנות אותו ל-stdout). מכיוון שהמיון צורך זיכרון רב, וקובצי ה-BAM לרוב גדולים מאוד, התוכנה תומכת במידור (באמצעות האופציה m) ומאפשרת הגבלה של כמות הזיכרון שהתוכנה צורכת, ויצירה של מספר קובצי פלט.
; index :
פקודת ה-index יוצרת קובץ אינדקס חדש שמאפשרת חיפוש מהיר בקובץ ה-SAM או ה-BAM הממויינים. בדומה לאינדקס בבסיס נתונים, קובצי ה-.sam.sai וה-.bam.sai מאפשרים גישה יעילה למידע בקבצים אליהם הם מקושרים.
; tview :
פקודת ה-tview מתחילה תצוגה אינראקטיבית מבוססת ascii שמשמשת להמחשת האופן בו מספר קריאות עברו עימוד כנגד אזורים קטנים בגנום הייחוס. בהשוואה לתצוגות גרפיות, כגון תוכנת IGV, היא ענייה ביכולות. בזמן התצוגה, ניתן לעבור לאזור אחר ברצף הייחוס (באמצעות 'g'), וכן להציג עזרה (באמצעות '?')
; mpileup :
פקודת ה-mpileup מייצרת קובץ בפורמט pileup, שמציג, עבור כל אתר גנמי, את הקריאות החופפות, וכן מוטציות והכנסות או החסרות (indel) בקובץ ה-BAM הנשלח אליה. התוכנה מאפשרת לייצר קובץ בפורמט BCF.

==דוגמאות==
: <code>samtools view sample.bam > sample.sam</code>
המרה של קובץ BAM לקובץ SAM
: <code>samtools view -bS sample.sam > sample.bam</code>
המרה של קובץ SAM לקובץ BAM
: <code>samtools view -h -b sample_sorted.bam "chr1:10-13" > tiny_sorted.bam</code>
חילוץ כל הקריאות שהועמדו כנגד טווח גנומי מסוים (בדוגמה – הבסיסים ה-10, 11, 12 ו-13 שבכרומוזום מס' 1). התוצאות נשמרות לקובץ BAM. קובץ ה-BAM שנשלח כפלט חייב לעבור אינדוקס קודם לכן.
: <code>samtools sort unsorted_in.bam sorted_out</code>
מיון הקובץ unsorted_in.bam על פי מיקום הקריאות שעברו עימוד וכתיבת הפלט לקובץ sorted_out
: <code>samtools index sorted.bam</code>
יצירת קובץ אינדקס בשם sorted.bam.bai עבור קובץ ה- sorted.bam

== ראו גם ==
* ריצוף DNA

==קישורים חיצוניים==
* 
* 

קטגוריה:גנומיקה
קטגוריה:ביואינפורמטיקה