โปรดดู: https://github.com/DominikBuchner/BOLDigger3
โปรแกรม Python ที่ดียิ่งขึ้นในการสืบค้นไฟล์ .fasta กับฐานข้อมูล COI ของ www.boldsystems.org
ชุดข้อมูลบาร์โค้ดเมตาบาร์โค้ดของ DNA มักประกอบด้วยหน่วยอนุกรมวิธานปฏิบัติการ (OTU) หลายร้อยหน่วย ซึ่งต้องมีการสืบค้นกับฐานข้อมูลเพื่อกำหนดอนุกรมวิธาน ระบบข้อมูลบาร์โค้ดของชีวิต (BOLD) เป็นฐานข้อมูลที่ใช้กันอย่างแพร่หลายเพื่อจุดประสงค์นี้ในหมู่นักชีววิทยา อย่างไรก็ตาม แพลตฟอร์มออนไลน์ของ BOLD จำกัดผู้ใช้ให้ระบุชุดข้อมูลได้ครั้งละ 50 ลำดับเท่านั้น นอกจากนี้ การใช้ API ของ BOLD ยังไม่สามารถแก้ไขปัญหานี้ได้อย่างสมบูรณ์ เนื่องจากไม่ได้ให้การเข้าถึงข้อมูลส่วนตัวและข้อมูลที่เผยแพร่ก่อนกำหนด
BOLDigger2 ซึ่งเป็นผู้สืบทอดต่อจาก BOLDigger มีเป้าหมายที่จะเอาชนะข้อจำกัดเหล่านี้ เนื่องจากเป็นโปรแกรม Python อย่างแท้จริง BOLDigger2 จึงนำเสนอ:
ด้วยการใช้ประโยชน์จากคุณสมบัติเหล่านี้ BOLDigger2 จะช่วยปรับปรุงกระบวนการระบุตัวตน OTU ได้อย่างมีประสิทธิภาพ ทำให้มีประสิทธิภาพและครอบคลุมมากขึ้น
identify
ซึ่งจะดำเนินการระบุตัวตน ดาวน์โหลดข้อมูลเพิ่มเติม และการเลือกรายการยอดนิยมโดยอัตโนมัติ สิ่งนี้ทำให้สามารถนำไปประยุกต์ใช้กับไปป์ไลน์ได้โดยตรงidentify
ใน BOLDigger2 ยอมรับเฉพาะอาร์กิวเมนต์เดียวเท่านั้น นั่นคือเส้นทางไปยังไฟล์ FASTA ที่จะระบุ จะบันทึกผลลัพธ์ทั้งหมดไว้ในโฟลเดอร์เดียวกันBOLDigger2 ต้องใช้ Python เวอร์ชัน 3.10 ขึ้นไป และสามารถติดตั้งได้อย่างง่ายดายโดยใช้ pip ในบรรทัดคำสั่งใดก็ได้:
pip install boldigger2
คำสั่งนี้จะติดตั้ง BOLDigger2 พร้อมกับการขึ้นต่อกันทั้งหมด
หากต้องการรันฟังก์ชันระบุ ให้ใช้คำสั่งต่อไปนี้:
boldigger2 identify PATH_TO_FASTA
ในการทำให้ฟังก์ชันระบุในไปป์ไลน์ชีวสารสนเทศเป็นแบบอัตโนมัติ ข้อมูลประจำตัว BOLD ก็สามารถส่งผ่านโดยตรงเป็นอาร์กิวเมนต์เสริมได้
boldigger2 identify PATH_TO_FASTA -username USERNAME -password PASSWORD
เพื่อกำหนดเกณฑ์ที่นำไปใช้ให้เหมาะสมกับความต้องการเฉพาะของผู้ใช้ treshold สามารถส่งผ่านเป็นอาร์กิวเมนต์เพิ่มเติม (สั่ง) ได้ สามารถส่งผ่านเกณฑ์ที่แตกต่างกันได้ถึง 5 ระดับสำหรับระดับอนุกรมวิธานที่แตกต่างกัน (ชนิด ชนิด วงศ์ ลำดับ ชั้นเรียน) เกณฑ์ที่ไม่ผ่านจะถูกแทนที่ด้วยค่าเริ่มต้น แต่ BOLDigger2 จะแจ้งให้คุณทราบเกี่ยวกับเรื่องนี้ด้วย
boldigger2 identify PATH_TO_FASTA -thresholds 99 97
เอาท์พุท:
19:16:16: Default thresholds changed!
19:16:16: Species: 99, Genus: 97, Family: 90, Order: 85, Class: 50
19:16:16: Trying to log in.
BOLD username:
BOLDigger2 จะแจ้งให้คุณระบุชื่อผู้ใช้และรหัสผ่าน จากนั้นจะดำเนินการระบุตัวตน
เมื่อมีการออกเวอร์ชันใหม่ คุณสามารถอัปเดต BOLDigger2 ได้โดยพิมพ์:
pip install --upgrade boldigger2
Buchner D, Leese F (2020) BOLDigger – แพ็คเกจ Python เพื่อระบุและจัดระเบียบลำดับด้วยระบบ Barcode of Life Data Metabarcoding และ Metagenomics 4: e53535 https://doi.org/10.3897/mbmg.4.53535
อัลกอริทึม BOLDigger2 ทำงานตามผังงานต่อไปนี้:
เข้าสู่ระบบ BOLD:
สร้างลิงค์ดาวน์โหลดสำหรับบาร์โค้ดระดับสายพันธุ์:
ดาวน์โหลดเพลงฮิต 100 อันดับแรก:
"top_100_hits_unsorted"
ระบุลำดับที่ไม่มีการโจมตีระดับสายพันธุ์:
สร้างลิงค์ดาวน์โหลดสำหรับบันทึกทั้งหมด:
ดาวน์โหลดเพลงฮิต 100 อันดับแรกสำหรับบันทึกทั้งหมด:
"top_100_hits_unsorted"
จัดเรียงและบันทึกเพลงยอดนิยม:
"top_100_hits_sorted"
บันทึกข้อมูลเพิ่มเติม:
"top_100_hits_additional_data"
ส่งออกข้อมูลเพิ่มเติมไปยัง Excel:
คำนวณและบันทึกรายการยอดนิยม:
identification_result.xlsx
) และรูปแบบ Parquet ( identification_result.parquet.snappy
) เพื่อการประมวลผลที่รวดเร็วยิ่งขึ้นเกณฑ์ที่แตกต่างกัน (97%: ระดับสายพันธุ์, 95%: ระดับสกุล, 90%: ระดับครอบครัว, 85%: ระดับการสั่งซื้อ, <85% และ >= 50: ระดับชั้นเรียน) สำหรับระดับอนุกรมวิธานถูกนำมาใช้เพื่อค้นหาการเข้าชมที่เหมาะสมที่สุด . หลังจากกำหนดเกณฑ์สำหรับ Hit ทั้งหมดแล้ว ระบบจะเลือก Hit ที่พบบ่อยที่สุดที่อยู่เหนือเกณฑ์ โปรดทราบว่าสำหรับการเข้าชมทั้งหมดที่ต่ำกว่าเกณฑ์ ความละเอียดทางอนุกรมวิธานจะถูกปรับตามนั้น (เช่น สำหรับการเข้าชม 96% ข้อมูลระดับชนิดพันธุ์จะถูกยกเลิก และข้อมูลระดับสกุลจะถูกนำมาใช้เป็นระดับอนุกรมวิธานต่ำสุด)
อัลกอริทึม BOLDigger2 ทำหน้าที่ดังต่อไปนี้:
ระบุความคล้ายคลึงกันสูงสุด : ค้นหาค่าความคล้ายคลึงกันสูงสุดจากรายการยอดนิยม 100 อันดับแรกที่อยู่ระหว่างการพิจารณา
ตั้งค่าเกณฑ์ : ตั้งค่าเกณฑ์เป็นระดับความคล้ายคลึงกันสูงสุดนี้ ลบ Hit ทั้งหมดที่มีความคล้ายคลึงกันต่ำกว่าเกณฑ์นี้ ตัวอย่างเช่น หาก Hit สูงสุดมีความคล้ายคลึงกันที่ 100% เกณฑ์จะถูกตั้งค่าเป็น 97% และ Hit ทั้งหมดที่ต่ำกว่าเกณฑ์นี้จะถูกลบออกชั่วคราว
การจำแนกและการเรียงลำดับ : นับการจำแนกแต่ละประเภททั้งหมดและจัดเรียงตามความอุดมสมบูรณ์
กรองข้อมูลที่ขาดหายไป : ยกเลิกการจำแนกประเภททั้งหมดที่มีข้อมูลที่ขาดหายไป ตัวอย่างเช่น หากการโจมตีที่พบบ่อยที่สุดคือ "สัตว์ขาปล้อง --> แมลง" ซึ่งมีความคล้ายคลึงกัน 100% แต่ไม่มีค่าสำหรับลำดับ ตระกูล สกุล และสปีชีส์
ระบุ Hit ทั่วไป : ค้นหา Hit ที่พบบ่อยที่สุดซึ่งไม่มีค่าที่หายไป
Return Hit : หากพบ Hit ที่ไม่มีค่าที่หายไป ให้ส่งคืน Hit นั้น
การปรับเกณฑ์ : หากไม่พบ Hit และไม่มีค่าที่หายไป ให้เพิ่มเกณฑ์ไปยังระดับที่สูงขึ้นถัดไป และทำซ้ำขั้นตอนนี้จนกว่าจะพบ Hit
BOLDigger2 ใช้ระบบการตั้งค่าสถานะเพื่อเน้นเงื่อนไขบางประการ ซึ่งระบุระดับความไม่แน่นอนใน Hit ที่เลือก ปัจจุบันมีการใช้งานแฟล็ก 5 รายการ ซึ่งอาจได้รับการอัปเดตตามความจำเป็น:
Reverse BIN Taxonomy : ธงนี้จะปรากฏขึ้นหาก Hit 100 อันดับแรกทั้งหมดที่แสดงถึงการจับคู่ที่เลือกใช้การจัดอนุกรมวิธาน BIN แบบย้อนกลับ อนุกรมวิธาน Reverse BIN จะกำหนดชื่อสปีชีส์ให้กับลำดับที่ฝากไว้บน BOLD ที่ไม่มีข้อมูลสปีชีส์ ซึ่งอาจทำให้เกิดความไม่แน่นอน
ข้อมูลอนุกรมวิธานที่แตกต่างกัน : หากมีข้อมูลอนุกรมวิธานสองรายการขึ้นไปที่มีข้อมูลอนุกรมวิธานต่างกันเหนือเกณฑ์ที่เลือก (เช่น สองสายพันธุ์ที่สูงกว่า 97%) ธงนี้จะถูกทริกเกอร์ ซึ่งบ่งบอกถึงความคลาดเคลื่อนที่อาจเกิดขึ้น
ข้อมูลส่วนตัวหรือข้อมูลที่เผยแพร่ก่อนกำหนด : หาก Hit 100 อันดับแรกทั้งหมดที่แสดงถึง Hit สูงสุดนั้นเป็น Hit ส่วนตัวหรือที่เผยแพร่ก่อนกำหนด การตั้งค่าสถานะนี้จะถูกยกขึ้น ซึ่งบ่งชี้ว่ามีการเข้าถึงข้อมูลอย่างจำกัด
การเข้าชมที่ไม่ซ้ำ : ธงนี้บ่งชี้ว่าผลลัพธ์การเข้าชมสูงสุดแสดงถึงการเข้าชมที่ไม่ซ้ำจากการเข้าชม 100 อันดับแรก ซึ่งอาจต้องมีการตรวจสอบเพิ่มเติม
ถังหลายรายการ : หากการโจมตีระดับสายพันธุ์ที่เลือกประกอบด้วยมากกว่าหนึ่งถัง ธงนี้จะถูกยกขึ้น ซึ่งบ่งบอกถึงความซับซ้อนที่อาจเกิดขึ้นในการกำหนดอนุกรมวิธาน
เนื่องจากมีธงเหล่านี้อยู่ จึงแนะนำให้ทำการตรวจสอบ Hit ที่ถูกตั้งค่าสถานะทั้งหมดอย่างใกล้ชิด เพื่อทำความเข้าใจและจัดการกับความไม่แน่นอนใดๆ ใน Hit ที่เลือกได้ดียิ่งขึ้น