อินเทอร์เฟซ R ไปยัง Meme Suite Family ของเครื่องมือซึ่งให้บริการสาธารณูปโภคหลายอย่างสำหรับการวิเคราะห์ motif เกี่ยวกับ DNA, RNA และลำดับโปรตีน Memes ทำงานโดยการตรวจจับการติดตั้งในท้องถิ่นของ Meme Suite โดยใช้คำสั่งจากนั้นนำเข้าผลลัพธ์ลงใน R. โดยตรง
Memes มีให้บริการในสาขา devel
Bioconductor:
if ( ! requireNamespace( " BiocManager " , quietly = TRUE ))
install.packages( " BiocManager " )
# The following initializes usage of Bioc devel
BiocManager :: install( version = ' devel ' )
BiocManager :: install( " memes " )
คุณสามารถติดตั้ง memes เวอร์ชันการพัฒนาจาก gitHub ด้วย:
if ( ! requireNamespace( " remotes " , quietly = TRUE ))
install.packages( " remotes " )
remotes :: install_github( " snystrom/memes " )
# To temporarily bypass the R version 4.1 requirement, you can pull from the following branch:
remotes :: install_github( " snystrom/memes " , ref = " no-r-4 " )
# Get development version from dockerhub
docker pull snystrom/memes_docker:devel
# the -v flag is used to mount an analysis directory,
# it can be excluded for demo purposes
docker run -e PASSWORD= < password > -p 8787:8787 -v < path > / < to > / < project > :/mnt/ < project > snystrom/memes_docker:devel
Memes อาศัยการติดตั้งในท้องถิ่นของ Meme Suite สำหรับคำแนะนำในการติดตั้งสำหรับ Meme Suite ดูคู่มือการติดตั้ง Meme Suite
Memes จำเป็นต้องทราบตำแหน่งของ meme/bin/
directory บนเครื่องในพื้นที่ของคุณ คุณสามารถบอก memes ตำแหน่งของ meme suite ของคุณติดตั้งได้ 4 วิธี มส์มักจะชอบคำจำกัดความที่เฉพาะเจาะจงมากขึ้นหากเป็นเส้นทางที่ถูกต้อง ที่นี่พวกเขาได้รับการจัดอันดับจากมากที่สุดถึงน้อยที่สุด:
meme_path
ของฟังก์ชั่น memes ทั้งหมดoptions(meme_bin = "/path/to/meme/bin/")
ภายในสคริปต์ของคุณMEME_BIN=/path/to/meme/bin/
ในไฟล์ .Renviron
ของคุณ~/meme/bin/
หากมส์ล้มเหลวในการตรวจจับการติดตั้งของคุณในตำแหน่งที่กำหนดจะกลับไปเป็นตัวเลือกถัดไป
ในการตรวจสอบ MEMES สามารถตรวจจับการติดตั้ง MEME ของคุณให้ใช้ check_meme_install()
ซึ่งใช้ herirarchy ค้นหาด้านบนเพื่อค้นหาการติดตั้ง meme ที่ถูกต้อง มันจะรายงานว่าเครื่องมือใด ๆ หายไปและพิมพ์เส้นทางไปยัง meme ที่เห็น สิ่งนี้มีประโยชน์สำหรับการแก้ไขปัญหาเกี่ยวกับการติดตั้งของคุณ
library( memes )
# Verify that memes detects your meme install
# (returns all green checks if so)
check_meme_install()
# > checking main install
# > ✓ /opt/meme/bin
# > checking util installs
# > ✓ /opt/meme/bin/dreme
# > ✓ /opt/meme/bin/ame
# > ✓ /opt/meme/bin/fimo
# > ✓ /opt/meme/bin/tomtom
# > ✓ /opt/meme/bin/meme
# > x /opt/meme/bin/streme
# You can manually input a path to meme_path
# If no meme/bin is detected, will return a red X
check_meme_install( meme_path = ' bad/path ' )
# > checking main install
# > x bad/path
ชื่อฟังก์ชั่น | ใช้ | อินพุตลำดับ | อินพุต motif | เอาท์พุท |
---|---|---|---|---|
runStreme() | Motif Discovery (ลวดลายสั้น ๆ ) | ใช่ | เลขที่ | universalmotif_df |
runDreme() | Motif Discovery (ลวดลายสั้น ๆ ) | ใช่ | เลขที่ | universalmotif_df |
runAme() | การเพิ่มระดับลวดลาย | ใช่ | ใช่ | data.frame (ตัวเลือก: คอลัมน์ sequences ) |
runFimo() | การสแกน | ใช่ | ใช่ | เกรนจ์ของตำแหน่ง motif |
runTomTom() | การเปรียบเทียบแม่ลาย | เลขที่ | ใช่ | universalmotif_df w/ best_match_motif และคอลัมน์ tomtom * |
runMeme() | Motif Discovery (ลวดลายยาว) | ใช่ | เลขที่ | universalmotif_df |
* หมายเหตุ: หาก runTomTom()
ทำงานโดยใช้ universalmotif_df
ผลลัพธ์จะเข้าร่วมกับผลลัพธ์ universalmotif_df
เป็นคอลัมน์พิเศษ สิ่งนี้ช่วยให้สามารถเปรียบเทียบลวดลายที่ค้นพบได้อย่าง ง่ายดาย กับการแข่งขัน
อินพุตลำดับ สามารถเป็นของ:
Biostrings::XStringSet
(สามารถสร้างขึ้นจาก Granges โดยใช้ฟังก์ชั่น get_sequence()
ผู้ช่วย)Biostrings::XStringSet
วัตถุ (สร้างโดย get_sequence()
)อินพุต motif สามารถเป็นของ:
universalmotif
หรือรายการของวัตถุ universalmotif
runDreme()
(ซึ่งจะช่วยให้ผลลัพธ์ของ runDreme()
ส่งโดยตรงไปยัง runTomTom()
)list()
(เช่น list("path/to/database.meme", "dreme_results" = dreme_res)
)ประเภทเอาต์พุต :
runDreme()
, runStreme()
, runMeme()
และ runTomTom()
ส่งคืนวัตถุ universalmotif_df
ซึ่งเป็น data.frames ที่มีคอลัมน์พิเศษ คอลัมน์ motif
มีวัตถุ universalmotif
โดยมี 1 รายการต่อแถว คอลัมน์ที่เหลือจะอธิบายคุณสมบัติของแต่ละบรรทัดฐานที่ส่งคืน ชื่อคอลัมน์ต่อไปนี้มีความพิเศษในการใช้ค่าของพวกเขาเมื่อเรียกใช้ update_motifs()
และ to_list()
เพื่อเปลี่ยนคุณสมบัติของลวดลายที่เก็บไว้ในคอลัมน์ motif
ระวังเกี่ยวกับการเปลี่ยนค่าเหล่านี้เนื่องจากการเปลี่ยนแปลงเหล่านี้จะเผยแพร่ไปยังคอลัมน์ motif
เมื่อเรียก update_motifs()
หรือ to_list()
MEMES ถูกสร้างขึ้นรอบ ๆ แพ็คเกจ UniversalMotif ซึ่งเป็นกรอบสำหรับการจัดการลวดลายในวัตถุ R. universalmotif_df
สามารถเชื่อมต่อระหว่าง data.frame และรูปแบบรายการ universalmotif
โดยใช้ฟังก์ชั่น to_df()
และ to_list()
ตามลำดับ สิ่งนี้ช่วยให้สามารถใช้ผลลัพธ์ของ memes
กับแพ็คเกจ motif bioconductor อื่น ๆ ทั้งหมดเนื่องจากวัตถุ universalmotif
สามารถแปลงเป็น motif ประเภทอื่น ๆ โดยใช้ convert_motifs()
runTomTom()
ส่งคืนคอลัมน์พิเศษ: tomtom
ซึ่งเป็น data.frame
ของข้อมูลการจับคู่ทั้งหมดสำหรับแต่ละ motif อินพุต สิ่งนี้สามารถขยายออกไปได้โดยใช้ tidyr::unnest(tomtom_results, "tomtom")
และถูกนำมาใช้กับ nest_tomtom()
คอลัมน์นำหน้า best_match_
ที่ส่งคืนโดย runTomTom()
ระบุค่าสำหรับ motif ซึ่งเป็นการจับคู่ที่ดีที่สุดกับ motif อินพุต
suppressPackageStartupMessages(library( magrittr ))
suppressPackageStartupMessages(library( GenomicRanges ))
# Example transcription factor peaks as GRanges
data( " example_peaks " , package = " memes " )
# Genome object
dm.genome <- BSgenome.Dmelanogaster.UCSC.dm6 :: BSgenome.Dmelanogaster.UCSC.dm6
ฟังก์ชั่น get_sequence
ใช้ GRanges
หรือ GRangesList
เป็นอินพุตและส่งคืนลำดับเป็น BioStrings::XStringSet
หรือรายการของวัตถุ XStringSet
ตามลำดับ get_sequence
จะตั้งชื่อรายการ FASTA แต่ละรายการโดยพิกัดจีโนมแต่ละลำดับมาจาก
# Generate sequences from 200bp about the center of my peaks of interest
sequences <- example_peaks % > %
resize( 200 , " center " ) % > %
get_sequence( dm.genome )
runDreme()
ยอมรับ XStringset หรือเส้นทางไปยังไฟล์ fasta เป็นอินพุต คุณสามารถใช้ลำดับอื่น ๆ หรือลำดับอินพุตแบบสับเปลี่ยนเป็นชุดข้อมูลควบคุม
# runDreme accepts all arguments that the commandline version of dreme accepts
# here I set e = 50 to detect motifs in the limited example peak list
# In a real analysis, e should typically be < 1
dreme_results <- runDreme( sequences , control = " shuffle " , e = 50 )
Memes ถูกสร้างขึ้นรอบ ๆ แพ็คเกจ UniversalMotif ผลลัพธ์จะถูกส่งกลับในรูปแบบ universalmotif_df
ซึ่งเป็นข้อมูล R r data.frame ที่สามารถเชื่อมต่อระหว่าง data.frame และ universalmotif
ได้อย่างราบรื่นโดยใช้ to_list()
เพื่อแปลงเป็นรูปแบบรายการ universalmotif
และ to_df()
เพื่อแปลงรูปแบบ data.frame การใช้ to_list()
อนุญาตให้ใช้ memes
ผลลัพธ์กับฟังก์ชัน universalmotif
ทั้งหมดเช่น SO:
library( universalmotif )
dreme_results % > %
to_list() % > %
view_motifs()
ลวดลายที่ค้นพบสามารถจับคู่กับลวดลาย TF ที่รู้จักโดยใช้ runTomTom()
ซึ่งสามารถยอมรับเป็นอินพุตพา ธ ไปยังไฟล์ที่จัดรูปแบบ., รายการ universalmotif
หรือผลลัพธ์ของ runDreme()
TomTom ใช้ฐานข้อมูลของลวดลายที่รู้จักซึ่งสามารถส่งผ่านไปยังพารามิเตอร์ database
เป็นพา ธ ไปยังไฟล์รูปแบบ. meme หรือวัตถุ universalmotif
คุณสามารถตั้งค่าตัวแปรสภาพแวดล้อม MEME_DB
ใน .Renviron
เป็นไฟล์บนดิสก์หรือค่า meme_db
ใน options
ไปยังไฟล์รูปแบบ. meme และ memes ที่ถูกต้องจะใช้ไฟล์นั้นเป็นฐานข้อมูล MEMES มักจะชอบการป้อนข้อมูลของผู้ใช้ในการเรียกใช้ฟังก์ชั่นผ่านการตั้งค่าตัวแปรส่วนกลาง
options( meme_db = system.file( " extdata/flyFactorSurvey_cleaned.meme " , package = " memes " ))
m <- create_motif( " CMATTACN " , altname = " testMotif " )
tomtom_results <- runTomTom( m )
tomtom_results
# > motif name altname consensus alphabet strand icscore type
# > 1 <mot:motif> motif testMotif CMATTACN DNA +- 13 PPM
# > bkg best_match_name best_match_altname
# > 1 0.25, 0.25, 0.25, 0.25 prd_FlyReg prd
# > best_db_name best_match_offset best_match_pval best_match_eval
# > 1 flyFactorSurvey_cleaned 0 9.36e-05 0.052
# > best_match_qval best_match_strand
# > 1 0.0353 +
# > best_match_motif
# > 1 <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>
#> tomtom
#> 1 prd_FlyReg, tup_SOLEXA_10, CG13424_Cell, CG11085_Cell, BH2_Cell, CG13424_SOLEXA_2, Tup_Cell, Tup_SOLEXA, Bsh_Cell, Exex_SOLEXA, Odsh_SOLEXA, Unc4_Cell, Ubx_FlyReg, Unc4_SOLEXA, E5_Cell, inv_SOLEXA_5, BH2_SOLEXA, Zen_SOLEXA, CG33980_SOLEXA_2_10, BH1_SOLEXA, CG33980_SOLEXA_2_0, Hgtx_Cell, NK7.1_Cell, Slou_Cell, CG13424_SOLEXA, Zen2_Cell, AbdA_SOLEXA, Antp_SOLEXA, Btn_Cell, Dfd_SOLEXA, Eve_SOLEXA, Ftz_Cell, Hmx_SOLEXA, Hmx_Cell, CG34031_Cell, zen2_SOLEXA_2, En_Cell, Pb_SOLEXA, Slou_SOLEXA, Unpg_Cell, inv_SOLEXA_2, ovo_FlyReg, lim_SOLEXA_2, C15_SOLEXA, Ems_Cell, Btn_SOLEXA, Unpg_SOLEXA, Pb_Cell, Bsh_SOLEXA, Scr_SOLEXA, Zen2_SOLEXA, CG34031_SOLEXA, Eve_Cell, Pph13_Cell, BH1_Cell, CG11085_SOLEXA, CG32532_Cell, en_FlyReg, Dll_SOLEXA, Dfd_Cell, Dr_SOLEXA, Ap_Cell, Ro_Cell, CG4136_SOLEXA, CG33980_SOLEXA, Hbn_SOLEXA, Lbl_Cell, Otp_Cell, Rx_Cell, CG32532_SOLEXA, NK7.1_SOLEXA, Dr_Cell, Odsh_Cell, Al_SOLEXA, Antp_Cell, Hgtx_SOLEXA, Ftz_SOLEXA, Lab_SOLEXA, Dfd_FlyReg, Ap_SOLEXA, Awh_SOLEXA, CG11294_SOLEXA, CG4136_Cell, E5_SOLEXA, Ro_SOLEXA, PhdP_SOLEXA, CG12361_SOLEXA_2, Ind_Cell, Scr_Cell, CG9876_Cell, CG18599_Cell, CG9876_SOLEXA, Otp_SOLEXA, Lbl_SOLEXA, Ubx_Cell, Ubx_SOLEXA, en_SOLEXA_2, Pph13_SOLEXA, Rx_SOLEXA, CG15696_SOLEXA, CG18599_SOLEXA, Ems_SOLEXA, Repo_Cell, Dll_Cell, C15_Cell, CG12361_SOLEXA, Abd-A_FlyReg, Repo_SOLEXA, Zen_Cell, Inv_Cell, En_SOLEXA, Lim3_Cell, Lim1_SOLEXA, CG15696_Cell, Crc_CG6272_SANGER_5, Lab_Cell, CG32105_SOLEXA, Bap_SOLEXA, CG9437_SANGER_5, AbdA_Cell, pho_FlyReg, CG33980_Cell, Cad_SOLEXA, CG4328_SOLEXA, CG4328_Cell, Gsc_Cell, vri_SANGER_5, AbdB_SOLEXA, Xrp1_CG6272_SANGER_5, Al_Cell, Exex_Cell, br-Z4_FlyReg, CG11294_Cell, Aef1_FlyReg, CG7745_SANGER_5, PhdP_Cell, Awh_Cell, prd, tup, lms, CG11085, B-H2, lms, tup, tup, bsh, exex, OdsH, unc-4, Ubx, unc-4, E5, inv, B-H2, zen, CG33980, B-H1, CG33980, HGTX, NK7.1, slou, lms, zen2, abd-A, Antp, btn, Dfd, eve, ftz, Hmx, Hmx, CG34031, zen2, en, pb, slou, unpg, inv, ovo, Lim1, C15, ems, btn, unpg, pb, bsh, Scr, zen2, CG34031, eve, Pph13, B-H1, CG11085, CG32532, en, Dll, Dfd, Dr, ap, ro, CG4136, CG33980, hbn, lbl, otp, Rx, CG32532, NK7.1, Dr, OdsH, al, Antp, HGTX, ftz, lab, Dfd, ap, Awh, CG11294, CG4136, E5, ro, PHDP, CG12361, ind, Scr, CG9876, CG18599, CG9876, otp, lbl, Ubx, Ubx, en, Pph13, Rx, CG15696, CG18599, ems, repo, Dll, C15, CG12361, abd-A, repo, zen, inv, en, Lim3, Lim1, CG15696, crc, lab, CG32105, bap, CG9437, abd-A, pho, CG33980, cad, CG4328, CG4328, Gsc, vri, Abd-B, Xrp1, al, exex, br, CG11294, Aef1, CG7745, PHDP, Awh, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, <S4 class 'universalmotif' [package "universalmotif"] with 20 slots>, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, flyFactorSurvey_cleaned, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, -1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, -2, 0, 0, 0, -3, 0, 4, 1, 0, 0, 0, 0, -2, 0, -2, 1, 0, -2, 1, 0, 2, -1, 0, 9.36e-05, 0.000129, 0.00013, 0.000194, 0.000246, 0.000247, 0.000319, 0.000364, 0.000427, 0.000435, 0.000473, 0.000473, 0.000556, 0.000643, 0.000694, 0.000728, 0.000748, 0.000748, 0.000785, 0.000828, 0.000849, 0.000868, 0.000868, 0.000868, 0.00102, 0.00113, 0.00116, 0.00116, 0.00116, 0.00116, 0.00116, 0.00116, 0.00118, 0.00126, 0.00134, 0.00141, 0.00144, 0.00145, 0.00145, 0.00154, 0.00161, 0.00165, 0.00173, 0.00177, 0.00177, 0.00179, 0.00179, 0.0019, 0.00191, 0.00191, 0.00191, 0.00203, 0.00203, 0.00203, 0.00212, 0.00214, 0.00219, 0.00232, 0.00242, 0.00247, 0.0026, 0.00264, 0.00264, 0.00268, 0.00282, 0.00282, 0.00282, 0.00282, 0.00282, 0.00286, 0.00286, 0.00296, 0.00305, 0.00316, 0.0032, 0.0032, 0.00326, 0.00326, 0.00341, 0.00348, 0.00348, 0.00348, 0.00348, 0.00348, 0.00348, 0.0035, 0.00359, 0.00359, 0.00359, 0.00364, 0.00372, 0.00372, 0.00372, 0.00387, 0.00387, 0.00412, 0.00415, 0.00424, 0.00424, 0.00439, 0.00452, 0.00452, 0.00467, 0.00483, 0.00497, 0.00497, 0.00528, 0.00549, 0.0059, 0.00597, 0.00624, 0.00635, 0.00709, 0.00761, 0.0079, 0.00856, 0.00859, 0.00912, 0.00935, 0.0097, 0.00974, 0.0101, 0.0109, 0.0116, 0.0123, 0.0123, 0.0127, 0.0138, 0.0138, 0.014, 0.014, 0.0147, 0.0148, 0.0155, 0.0165, 0.0166, 0.0177, 0.052, 0.0718, 0.0725, 0.108, 0.137, 0.137, 0.177, 0.202, 0.238, 0.242, 0.263, 0.263, 0.309, 0.357, 0.386, 0.405, 0.416, 0.416, 0.436, 0.46, 0.472, 0.483, 0.483, 0.483, 0.566, 0.629, 0.646, 0.646, 0.646, 0.646, 0.646, 0.646, 0.654, 0.702, 0.745, 0.785, 0.8, 0.808, 0.808, 0.858, 0.897, 0.92, 0.961, 0.985, 0.985, 0.993, 0.993, 1.05, 1.06, 1.06, 1.06, 1.13, 1.13, 1.13, 1.18, 1.19, 1.22, 1.29, 1.34, 1.38, 1.45, 1.47, 1.47, 1.49, 1.57, 1.57, 1.57, 1.57, 1.57, 1.59, 1.59, 1.65, 1.7, 1.76, 1.78, 1.78, 1.81, 1.81, 1.9, 1.94, 1.94, 1.94, 1.94, 1.94, 1.94, 1.95, 2, 2, 2, 2.02, 2.07, 2.07, 2.07, 2.15, 2.15, 2.29, 2.31, 2.36, 2.36, 2.44, 2.52, 2.52, 2.6, 2.68, 2.76, 2.76, 2.94, 3.05, 3.28, 3.32, 3.47, 3.53, 3.94, 4.23, 4.39, 4.76, 4.77, 5.07, 5.2, 5.39, 5.41, 5.61, 6.06, 6.42, 6.81, 6.81, 7.03, 7.66, 7.65, 7.78, 7.78, 8.15, 8.26, 8.59, 9.18, 9.2, 9.85, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0353, 0.0368, 0.0369, 0.0369, 0.0369, 0.0369, 0.0369, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0372, 0.0379, 0.0379, 0.0381, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0396, 0.0404, 0.0404, 0.0424, 0.0424, 0.0424, 0.0424, 0.0435, 0.0439, 0.0439, 0.0449, 0.046, 0.0464, 0.0464, 0.0489, 0.0504, 0.0536, 0.0538, 0.0557, 0.0562, 0.0622, 0.0662, 0.0681, 0.0727, 0.0727, 0.0765, 0.0778, 0.0797, 0.0797, 0.0819, 0.0877, 0.0923, 0.0964, 0.0964, 0.0987, 0.106, 0.106, 0.106, 0.106, 0.11, 0.111, 0.114, 0.121, 0.121, 0.128, +, -, -, -, -, -, -, -, -, -, -, -, +, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, +, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, +, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, -, +, -, -, -, -, -, -, -, +, -, -, -, +, -, -, -, -, -, -, -, +, -, +, -, -, -, +, +, +, -, -
# >
# > [Hidden empty columns: family, organism, nsites, bkgsites, pval, qval,
# > eval.]
runTomTom()
จะเพิ่มผลลัพธ์เป็นคอลัมน์ลงใน runDreme()
ผลลัพธ์ data.frame
full_results <- dreme_results % > %
runTomTom()
AME ใช้เพื่อทดสอบการเพิ่มระดับลวดลายที่รู้จักในลำดับเป้าหมาย runAme()
จะใช้รายการ MEME_DB
ใน .Renviron
หรือ options(meme_db = "path/to/database.meme")
เป็นฐานข้อมูล Motif อีกวิธีหนึ่งจะยอมรับอินพุตที่ถูกต้องทั้งหมดคล้ายกับ runTomTom()
# here I set the evalue_report_threshold = 30 to detect motifs in the limited example sequences
# In a real analysis, evalue_report_threshold should be carefully selected
ame_results <- runAme( sequences , control = " shuffle " , evalue_report_threshold = 30 )
ame_results
# > # A tibble: 2 x 17
# > rank motif_db motif_id motif_alt_id consensus pvalue adj.pvalue evalue tests
# > <int> <chr> <chr> <chr> <chr> <dbl> <dbl> <dbl> <int>
# > 1 1 /usr/lo… Eip93F_… Eip93F ACWSCCRA… 5.14e-4 0.0339 18.8 67
# > 2 2 /usr/lo… Cf2-PB_… Cf2 CSSHNKDT… 1.57e-3 0.0415 23.1 27
# > # … with 8 more variables: fasta_max <dbl>, pos <int>, neg <int>,
# > # pwm_min <dbl>, tp <int>, tp_percent <dbl>, fp <int>, fp_percent <dbl>
view_tomtom_hits
อนุญาตให้เปรียบเทียบลวดลายอินพุตกับการโจมตีสูงสุดจาก TomTom การตรวจสอบด้วยตนเองของการจับคู่เหล่านี้เป็นสิ่งสำคัญเนื่องจากบางครั้งการแข่งขันด้านบนไม่ได้เป็นการมอบหมายที่ถูกต้องเสมอไป การเปลี่ยนแปลง top_n
ช่วยให้คุณสามารถแสดงการแข่งขันเพิ่มเติมตามลำดับจากมากไปน้อยของอันดับของพวกเขา
full_results % > %
view_tomtom_hits( top_n = 1 )
# > $m01_AGAGC
มันจะเป็นประโยชน์ในการดูผลลัพธ์จาก runAme()
เป็น mapap plot_ame_heatmap()
สามารถสร้างการสร้างภาพข้อมูลที่ซับซ้อนสำหรับการวิเคราะห์การเพิ่มคุณค่าระหว่างประเภทภูมิภาคที่แตกต่างกัน (ดูบทความสั้น ๆ สำหรับรายละเอียด) นี่คือตัวอย่างความร้อนง่ายๆ
ame_results % > %
plot_ame_heatmap()
เครื่องมือ FIMO ใช้เพื่อระบุการแข่งขันกับลวดลายที่รู้จัก runFimo
จะส่งคืนการโจมตีเหล่านี้เป็นวัตถุ GRanges
ที่มีพิกัดจีโนมของการจับคู่ motif
# Query MotifDb for a motif
e93_motif <- MotifDb :: query( MotifDb :: MotifDb , " Eip93F " ) % > %
universalmotif :: convert_motifs()
# > See system.file("LICENSE", package="MotifDb") for use restrictions.
# Scan for the E93 motif within given sequences
fimo_results <- runFimo( sequences , e93_motif , thresh = 1e-3 )
# Visualize the sequences matching the E93 motif
plot_sequence_heatmap( fimo_results $ matched_sequence )
Memes ยังรองรับการนำเข้าผลลัพธ์ที่สร้างขึ้นโดยใช้ Meme Suite นอก R (ตัวอย่างเช่นการรันงานบน meme-suite.org หรือทำงานบน Commandline) สิ่งนี้ช่วยให้สามารถใช้ผลลัพธ์ MEME Suite ที่มีอยู่ก่อนหน้าด้วยฟังก์ชั่น MEMES ดาวน์สตรีม
เครื่องมือ meme | ชื่อฟังก์ชั่น | ประเภทไฟล์ |
---|---|---|
คน | importStremeXML() | streme.xml |
เครื่องราง | importDremeXML() | dreme.xml |
tomtom | importTomTomXML() | tomtom.xml |
AME | importAme() | ame.tsv* |
การใช้ไฟ | importFimo() | fimo.tsv |
มส์ | importMeme() | meme.txt |
* importAME()
ยังสามารถใช้เอาต์พุต“ sequences.tsv” เมื่อ AME ใช้ method = "fisher"
นี่เป็นตัวเลือก
Meme Suite ไม่รองรับ Windows ในปัจจุบันแม้ว่าจะสามารถติดตั้งได้ภายใต้ Cygwin หรือ Windows Linux Subsytem (WSL) โปรดทราบว่าหากมีการติดตั้ง meme บน Cygwin หรือ WSL คุณจะต้องเรียกใช้ R ภายใน Cygwin หรือ WSL เพื่อใช้ MEMES
ทางเลือกอื่นคือการใช้ Docker เพื่อเรียกใช้สภาพแวดล้อมเสมือนจริงด้วยการติดตั้ง Meme Suite เราให้บริการ Memes Docker Container
เรือนั้นมี Meme Suite, R Studio และ memes
ทั้งหมดขึ้นอยู่กับการติดตั้งล่วงหน้า
memes เป็น wrapper สำหรับเครื่องมือสองสามตัวที่เลือกจาก Meme Suite ซึ่งพัฒนาโดยกลุ่มอื่น นอกเหนือจากการอ้างถึงมส์โปรดอ้างอิงเครื่องมือ Meme Suite ที่สอดคล้องกับเครื่องมือที่คุณใช้
หากคุณใช้ runDreme()
ในการวิเคราะห์ของคุณโปรดอ้างอิง:
Timothy L. Bailey,“ Dreme: Motif Discovery ในปัจจัยการถอดรหัสข้อมูล Chip-Seq”, ชีวสารสนเทศศาสตร์, 27 (12): 1653-1659, 2011
หากคุณใช้ runTomTom()
ในการวิเคราะห์ของคุณโปรดอ้างอิง:
Shobhit Gupta, Ja Stamatoyannopolous, Timothy Bailey และ William Stafford Noble,“ การหาปริมาณความคล้ายคลึงกันระหว่างลวดลาย”, ชีววิทยาจีโนม, 8 (2): R24, 2007. ข้อความเต็ม
หากคุณใช้ runAme()
ในการวิเคราะห์ของคุณโปรดอ้างอิง:
Robert McLeay และ Timothy L. Bailey,“ การวิเคราะห์การเสริมสมรรถนะ: การประเมินกรอบและวิธีการแบบครบวงจร”, BMC Bioinformatics, 11: 165, 2010, DOI: 10.1186/1471-2105-11-165 ข้อความเต็ม
หากคุณใช้ runFimo()
ในการวิเคราะห์ของคุณโปรดอ้างอิง:
Charles E. Grant, Timothy L. Bailey และ William Stafford Noble,“ Fimo: การสแกนสำหรับการเกิดขึ้นของ motif ที่กำหนด”, ชีวสารสนเทศศาสตร์, 27 (7): 1017-1018, 2011. ข้อความเต็ม
Meme Suite ฟรีสำหรับการใช้งานที่ไม่แสวงหาผลกำไร แต่ผู้ใช้ที่แสวงหาผลกำไรควรซื้อใบอนุญาต ดูรายละเอียดหน้าลิขสิทธิ์ของ Meme Suite