From ff358b365170bddf5b58717c81026a9036ee9e85 Mon Sep 17 00:00:00 2001 From: Aaron <aaronquinlan@gmail.com> Date: Mon, 23 Jul 2012 22:20:38 -0400 Subject: [PATCH] add plotting to conf.py --- .../doctrees/content/advanced-usage.doctree | Bin 19407 -> 0 bytes .../doctrees/content/annotateBed.doctree | Bin 19621 -> 0 bytes docs/_build/doctrees/content/bamToBed.doctree | Bin 25234 -> 0 bytes .../doctrees/content/bed12ToBed6.doctree | Bin 10081 -> 0 bytes docs/_build/doctrees/content/bedToBam.doctree | Bin 14831 -> 0 bytes docs/_build/doctrees/content/bedToIgv.doctree | Bin 18365 -> 0 bytes .../doctrees/content/bedtools-suite.doctree | Bin 5766 -> 0 bytes .../doctrees/content/closestBed.doctree | Bin 23571 -> 0 bytes .../doctrees/content/complementBed.doctree | Bin 7982 -> 0 bytes .../doctrees/content/coverageBed.doctree | Bin 36654 -> 0 bytes .../doctrees/content/example-usage.doctree | Bin 47881 -> 0 bytes .../doctrees/content/fastafromBed.doctree | Bin 18553 -> 0 bytes .../doctrees/content/general-usage.doctree | Bin 118074 -> 0 bytes .../content/genomecoverageBed.doctree | Bin 27087 -> 0 bytes docs/_build/doctrees/content/groupBy.doctree | Bin 41416 -> 0 bytes .../doctrees/content/installation.doctree | Bin 6156 -> 0 bytes .../doctrees/content/intersectBed.doctree | Bin 73443 -> 0 bytes docs/_build/doctrees/content/linksBed.doctree | Bin 14379 -> 0 bytes .../doctrees/content/maskfastafromBed.doctree | Bin 12552 -> 0 bytes docs/_build/doctrees/content/mergeBed.doctree | Bin 19686 -> 0 bytes docs/_build/doctrees/content/overlap.doctree | Bin 10450 -> 0 bytes docs/_build/doctrees/content/overview.doctree | Bin 110066 -> 0 bytes .../_build/doctrees/content/pairToBed.doctree | Bin 61156 -> 0 bytes .../doctrees/content/pairToPair.doctree | Bin 20533 -> 0 bytes .../doctrees/content/quick-start.doctree | Bin 9397 -> 0 bytes .../doctrees/content/shuffleBed.doctree | Bin 25403 -> 0 bytes docs/_build/doctrees/content/slopBed.doctree | Bin 16258 -> 0 bytes docs/_build/doctrees/content/sortBed.doctree | Bin 14950 -> 0 bytes .../doctrees/content/subtractBed.doctree | Bin 13559 -> 0 bytes .../doctrees/content/unionBedGraphs.doctree | Bin 23126 -> 0 bytes .../_build/doctrees/content/windowBed.doctree | Bin 36219 -> 0 bytes docs/_build/doctrees/environment.pickle | Bin 1374542 -> 0 bytes docs/_build/doctrees/index.doctree | Bin 4596 -> 0 bytes docs/_build/html/.buildinfo | 4 - docs/_build/html/_images/intersectBed-1.png | Bin 10209 -> 0 bytes docs/_build/html/_images/intersectBed-2.png | Bin 10523 -> 0 bytes docs/_build/html/_images/intersectBed-3.png | Bin 9274 -> 0 bytes .../html/_sources/content/advanced-usage.txt | 92 - .../html/_sources/content/annotateBed.txt | 99 - .../_build/html/_sources/content/bamToBed.txt | 88 - .../html/_sources/content/bed12ToBed6.txt | 49 - .../_build/html/_sources/content/bedToBam.txt | 71 - .../_build/html/_sources/content/bedToIgv.txt | 68 - .../html/_sources/content/bedtools-suite.txt | 45 - .../html/_sources/content/closestBed.txt | 130 - .../html/_sources/content/complementBed.txt | 48 - .../html/_sources/content/coverageBed.txt | 184 - .../html/_sources/content/example-usage.txt | 331 - .../html/_sources/content/fastafromBed.txt | 126 - .../html/_sources/content/general-usage.txt | 213 - .../_sources/content/genomecoverageBed.txt | 122 - docs/_build/html/_sources/content/groupBy.txt | 194 - .../html/_sources/content/installation.txt | 25 - .../html/_sources/content/intersectBed.txt | 385 -- .../_build/html/_sources/content/linksBed.txt | 74 - .../_sources/content/maskfastafromBed.txt | 70 - .../_build/html/_sources/content/mergeBed.txt | 120 - docs/_build/html/_sources/content/overlap.txt | 41 - .../_build/html/_sources/content/overview.txt | 348 -- .../html/_sources/content/pairToBed.txt | 378 -- .../html/_sources/content/pairToPair.txt | 103 - .../html/_sources/content/quick-start.txt | 60 - .../html/_sources/content/shuffleBed.txt | 155 - docs/_build/html/_sources/content/slopBed.txt | 84 - docs/_build/html/_sources/content/sortBed.txt | 77 - .../html/_sources/content/subtractBed.txt | 88 - .../html/_sources/content/unionBedGraphs.txt | 163 - .../html/_sources/content/windowBed.txt | 157 - docs/_build/html/_sources/index.txt | 31 - docs/_build/html/_static/ajax-loader.gif | Bin 673 -> 0 bytes docs/_build/html/_static/basic.css | 540 -- docs/_build/html/_static/bedtools.png | Bin 14929 -> 0 bytes docs/_build/html/_static/comment-bright.png | Bin 3500 -> 0 bytes docs/_build/html/_static/comment-close.png | Bin 3578 -> 0 bytes docs/_build/html/_static/comment.png | Bin 3445 -> 0 bytes docs/_build/html/_static/default.css | 256 - docs/_build/html/_static/doctools.js | 247 - docs/_build/html/_static/down-pressed.png | Bin 368 -> 0 bytes docs/_build/html/_static/down.png | Bin 363 -> 0 bytes docs/_build/html/_static/file.png | Bin 392 -> 0 bytes docs/_build/html/_static/jquery.js | 154 - docs/_build/html/_static/minus.png | Bin 199 -> 0 bytes docs/_build/html/_static/plus.png | Bin 199 -> 0 bytes docs/_build/html/_static/pygments.css | 62 - docs/_build/html/_static/rtd.css | 1438 ----- docs/_build/html/_static/searchtools.js | 560 -- docs/_build/html/_static/sidebar.js | 151 - docs/_build/html/_static/underscore.js | 23 - docs/_build/html/_static/up-pressed.png | Bin 372 -> 0 bytes docs/_build/html/_static/up.png | Bin 363 -> 0 bytes docs/_build/html/_static/websupport.js | 808 --- docs/_build/html/content/advanced-usage.html | 181 - docs/_build/html/content/annotateBed.html | 224 - docs/_build/html/content/bamToBed.html | 229 - docs/_build/html/content/bed12ToBed6.html | 177 - docs/_build/html/content/bedToBam.html | 202 - docs/_build/html/content/bedToIgv.html | 200 - docs/_build/html/content/bedtools-suite.html | 162 - docs/_build/html/content/closestBed.html | 251 - docs/_build/html/content/complementBed.html | 163 - docs/_build/html/content/coverageBed.html | 317 - docs/_build/html/content/example-usage.html | 314 - docs/_build/html/content/fastafromBed.html | 240 - docs/_build/html/content/general-usage.html | 521 -- .../html/content/genomecoverageBed.html | 257 - docs/_build/html/content/groupBy.html | 324 - docs/_build/html/content/installation.html | 135 - .../html/content/intersectBed-1.hires.png | Bin 28671 -> 0 bytes docs/_build/html/content/intersectBed-1.png | Bin 10209 -> 0 bytes docs/_build/html/content/intersectBed-1.py | 8 - .../html/content/intersectBed-2.hires.png | Bin 30023 -> 0 bytes docs/_build/html/content/intersectBed-2.png | Bin 10523 -> 0 bytes docs/_build/html/content/intersectBed-2.py | 8 - .../html/content/intersectBed-3.hires.png | Bin 26615 -> 0 bytes docs/_build/html/content/intersectBed-3.png | Bin 9274 -> 0 bytes docs/_build/html/content/intersectBed-3.py | 8 - docs/_build/html/content/intersectBed.html | 500 -- docs/_build/html/content/linksBed.html | 200 - .../_build/html/content/maskfastafromBed.html | 194 - docs/_build/html/content/mergeBed.html | 244 - docs/_build/html/content/overlap.html | 173 - docs/_build/html/content/overview.html | 506 -- docs/_build/html/content/pairToBed.html | 495 -- docs/_build/html/content/pairToPair.html | 237 - docs/_build/html/content/quick-start.html | 161 - docs/_build/html/content/shuffleBed.html | 274 - docs/_build/html/content/slopBed.html | 216 - docs/_build/html/content/sortBed.html | 211 - docs/_build/html/content/subtractBed.html | 207 - docs/_build/html/content/unionBedGraphs.html | 296 - docs/_build/html/content/windowBed.html | 297 - docs/_build/html/genindex.html | 100 - docs/_build/html/index.html | 139 - docs/_build/html/objects.inv | Bin 207 -> 0 bytes docs/_build/html/search.html | 104 - docs/_build/html/searchindex.js | 1 - docs/_build/latex/Makefile | 66 - docs/_build/latex/bedtools.aux | 463 -- docs/_build/latex/bedtools.idx | 0 docs/_build/latex/bedtools.ilg | 5 - docs/_build/latex/bedtools.ind | 0 docs/_build/latex/bedtools.log | 1131 ---- docs/_build/latex/bedtools.out | 10 - docs/_build/latex/bedtools.tex | 5394 ---------------- docs/_build/latex/bedtools.toc | 203 - docs/_build/latex/fncychap.sty | 683 -- docs/_build/latex/python.ist | 11 - docs/_build/latex/sphinx.sty | 481 -- docs/_build/latex/sphinxhowto.cls | 81 - docs/_build/latex/sphinxmanual.cls | 122 - docs/_build/latex/tabulary.sty | 452 -- docs/_build/man/bedtools.1 | 5506 ----------------- .../content/intersectBed-1.hires.png | Bin 28671 -> 0 bytes .../plot_directive/content/intersectBed-1.png | Bin 10209 -> 0 bytes .../content/intersectBed-2.hires.png | Bin 30023 -> 0 bytes .../plot_directive/content/intersectBed-2.png | Bin 10523 -> 0 bytes .../content/intersectBed-3.hires.png | Bin 26615 -> 0 bytes .../plot_directive/content/intersectBed-3.png | Bin 9274 -> 0 bytes docs/build.sh | 2 +- docs/conf.py | 8 +- 160 files changed, 8 insertions(+), 31548 deletions(-) delete mode 100644 docs/_build/doctrees/content/advanced-usage.doctree delete mode 100644 docs/_build/doctrees/content/annotateBed.doctree delete mode 100644 docs/_build/doctrees/content/bamToBed.doctree delete mode 100644 docs/_build/doctrees/content/bed12ToBed6.doctree delete mode 100644 docs/_build/doctrees/content/bedToBam.doctree delete mode 100644 docs/_build/doctrees/content/bedToIgv.doctree delete mode 100644 docs/_build/doctrees/content/bedtools-suite.doctree delete mode 100644 docs/_build/doctrees/content/closestBed.doctree delete mode 100644 docs/_build/doctrees/content/complementBed.doctree delete mode 100644 docs/_build/doctrees/content/coverageBed.doctree delete mode 100644 docs/_build/doctrees/content/example-usage.doctree delete mode 100644 docs/_build/doctrees/content/fastafromBed.doctree delete mode 100644 docs/_build/doctrees/content/general-usage.doctree delete mode 100644 docs/_build/doctrees/content/genomecoverageBed.doctree delete mode 100644 docs/_build/doctrees/content/groupBy.doctree delete mode 100644 docs/_build/doctrees/content/installation.doctree delete mode 100644 docs/_build/doctrees/content/intersectBed.doctree delete mode 100644 docs/_build/doctrees/content/linksBed.doctree delete mode 100644 docs/_build/doctrees/content/maskfastafromBed.doctree delete mode 100644 docs/_build/doctrees/content/mergeBed.doctree delete mode 100644 docs/_build/doctrees/content/overlap.doctree delete mode 100644 docs/_build/doctrees/content/overview.doctree delete mode 100644 docs/_build/doctrees/content/pairToBed.doctree delete mode 100644 docs/_build/doctrees/content/pairToPair.doctree delete mode 100644 docs/_build/doctrees/content/quick-start.doctree delete mode 100644 docs/_build/doctrees/content/shuffleBed.doctree delete mode 100644 docs/_build/doctrees/content/slopBed.doctree delete mode 100644 docs/_build/doctrees/content/sortBed.doctree delete mode 100644 docs/_build/doctrees/content/subtractBed.doctree delete mode 100644 docs/_build/doctrees/content/unionBedGraphs.doctree delete mode 100644 docs/_build/doctrees/content/windowBed.doctree delete mode 100644 docs/_build/doctrees/environment.pickle delete mode 100644 docs/_build/doctrees/index.doctree delete mode 100644 docs/_build/html/.buildinfo delete mode 100644 docs/_build/html/_images/intersectBed-1.png delete mode 100644 docs/_build/html/_images/intersectBed-2.png delete mode 100644 docs/_build/html/_images/intersectBed-3.png delete mode 100644 docs/_build/html/_sources/content/advanced-usage.txt delete mode 100644 docs/_build/html/_sources/content/annotateBed.txt delete mode 100644 docs/_build/html/_sources/content/bamToBed.txt delete mode 100644 docs/_build/html/_sources/content/bed12ToBed6.txt delete mode 100644 docs/_build/html/_sources/content/bedToBam.txt delete mode 100644 docs/_build/html/_sources/content/bedToIgv.txt delete mode 100644 docs/_build/html/_sources/content/bedtools-suite.txt delete mode 100644 docs/_build/html/_sources/content/closestBed.txt delete mode 100644 docs/_build/html/_sources/content/complementBed.txt delete mode 100644 docs/_build/html/_sources/content/coverageBed.txt delete mode 100644 docs/_build/html/_sources/content/example-usage.txt delete mode 100644 docs/_build/html/_sources/content/fastafromBed.txt delete mode 100644 docs/_build/html/_sources/content/general-usage.txt delete mode 100644 docs/_build/html/_sources/content/genomecoverageBed.txt delete mode 100644 docs/_build/html/_sources/content/groupBy.txt delete mode 100644 docs/_build/html/_sources/content/installation.txt delete mode 100644 docs/_build/html/_sources/content/intersectBed.txt delete mode 100644 docs/_build/html/_sources/content/linksBed.txt delete mode 100644 docs/_build/html/_sources/content/maskfastafromBed.txt delete mode 100644 docs/_build/html/_sources/content/mergeBed.txt delete mode 100644 docs/_build/html/_sources/content/overlap.txt delete mode 100644 docs/_build/html/_sources/content/overview.txt delete mode 100644 docs/_build/html/_sources/content/pairToBed.txt delete mode 100644 docs/_build/html/_sources/content/pairToPair.txt delete mode 100644 docs/_build/html/_sources/content/quick-start.txt delete mode 100644 docs/_build/html/_sources/content/shuffleBed.txt delete mode 100644 docs/_build/html/_sources/content/slopBed.txt delete mode 100644 docs/_build/html/_sources/content/sortBed.txt delete mode 100644 docs/_build/html/_sources/content/subtractBed.txt delete mode 100644 docs/_build/html/_sources/content/unionBedGraphs.txt delete mode 100644 docs/_build/html/_sources/content/windowBed.txt delete mode 100644 docs/_build/html/_sources/index.txt delete mode 100644 docs/_build/html/_static/ajax-loader.gif delete mode 100644 docs/_build/html/_static/basic.css delete mode 100644 docs/_build/html/_static/bedtools.png delete mode 100644 docs/_build/html/_static/comment-bright.png delete mode 100644 docs/_build/html/_static/comment-close.png delete mode 100644 docs/_build/html/_static/comment.png delete mode 100644 docs/_build/html/_static/default.css delete mode 100644 docs/_build/html/_static/doctools.js delete mode 100644 docs/_build/html/_static/down-pressed.png delete mode 100644 docs/_build/html/_static/down.png delete mode 100644 docs/_build/html/_static/file.png delete mode 100644 docs/_build/html/_static/jquery.js delete mode 100644 docs/_build/html/_static/minus.png delete mode 100644 docs/_build/html/_static/plus.png delete mode 100644 docs/_build/html/_static/pygments.css delete mode 100644 docs/_build/html/_static/rtd.css delete mode 100644 docs/_build/html/_static/searchtools.js delete mode 100644 docs/_build/html/_static/sidebar.js delete mode 100644 docs/_build/html/_static/underscore.js delete mode 100644 docs/_build/html/_static/up-pressed.png delete mode 100644 docs/_build/html/_static/up.png delete mode 100644 docs/_build/html/_static/websupport.js delete mode 100644 docs/_build/html/content/advanced-usage.html delete mode 100644 docs/_build/html/content/annotateBed.html delete mode 100644 docs/_build/html/content/bamToBed.html delete mode 100644 docs/_build/html/content/bed12ToBed6.html delete mode 100644 docs/_build/html/content/bedToBam.html delete mode 100644 docs/_build/html/content/bedToIgv.html delete mode 100644 docs/_build/html/content/bedtools-suite.html delete mode 100644 docs/_build/html/content/closestBed.html delete mode 100644 docs/_build/html/content/complementBed.html delete mode 100644 docs/_build/html/content/coverageBed.html delete mode 100644 docs/_build/html/content/example-usage.html delete mode 100644 docs/_build/html/content/fastafromBed.html delete mode 100644 docs/_build/html/content/general-usage.html delete mode 100644 docs/_build/html/content/genomecoverageBed.html delete mode 100644 docs/_build/html/content/groupBy.html delete mode 100644 docs/_build/html/content/installation.html delete mode 100644 docs/_build/html/content/intersectBed-1.hires.png delete mode 100644 docs/_build/html/content/intersectBed-1.png delete mode 100644 docs/_build/html/content/intersectBed-1.py delete mode 100644 docs/_build/html/content/intersectBed-2.hires.png delete mode 100644 docs/_build/html/content/intersectBed-2.png delete mode 100644 docs/_build/html/content/intersectBed-2.py delete mode 100644 docs/_build/html/content/intersectBed-3.hires.png delete mode 100644 docs/_build/html/content/intersectBed-3.png delete mode 100644 docs/_build/html/content/intersectBed-3.py delete mode 100644 docs/_build/html/content/intersectBed.html delete mode 100644 docs/_build/html/content/linksBed.html delete mode 100644 docs/_build/html/content/maskfastafromBed.html delete mode 100644 docs/_build/html/content/mergeBed.html delete mode 100644 docs/_build/html/content/overlap.html delete mode 100644 docs/_build/html/content/overview.html delete mode 100644 docs/_build/html/content/pairToBed.html delete mode 100644 docs/_build/html/content/pairToPair.html delete mode 100644 docs/_build/html/content/quick-start.html delete mode 100644 docs/_build/html/content/shuffleBed.html delete mode 100644 docs/_build/html/content/slopBed.html delete mode 100644 docs/_build/html/content/sortBed.html delete mode 100644 docs/_build/html/content/subtractBed.html delete mode 100644 docs/_build/html/content/unionBedGraphs.html delete mode 100644 docs/_build/html/content/windowBed.html delete mode 100644 docs/_build/html/genindex.html delete mode 100644 docs/_build/html/index.html delete mode 100644 docs/_build/html/objects.inv delete mode 100644 docs/_build/html/search.html delete mode 100644 docs/_build/html/searchindex.js delete mode 100644 docs/_build/latex/Makefile delete mode 100644 docs/_build/latex/bedtools.aux delete mode 100644 docs/_build/latex/bedtools.idx delete mode 100644 docs/_build/latex/bedtools.ilg delete mode 100644 docs/_build/latex/bedtools.ind delete mode 100644 docs/_build/latex/bedtools.log delete mode 100644 docs/_build/latex/bedtools.out delete mode 100644 docs/_build/latex/bedtools.tex delete mode 100644 docs/_build/latex/bedtools.toc delete mode 100644 docs/_build/latex/fncychap.sty delete mode 100644 docs/_build/latex/python.ist delete mode 100644 docs/_build/latex/sphinx.sty delete mode 100644 docs/_build/latex/sphinxhowto.cls delete mode 100644 docs/_build/latex/sphinxmanual.cls delete mode 100644 docs/_build/latex/tabulary.sty delete mode 100644 docs/_build/man/bedtools.1 delete mode 100644 docs/_build/plot_directive/content/intersectBed-1.hires.png delete mode 100644 docs/_build/plot_directive/content/intersectBed-1.png delete mode 100644 docs/_build/plot_directive/content/intersectBed-2.hires.png delete mode 100644 docs/_build/plot_directive/content/intersectBed-2.png delete mode 100644 docs/_build/plot_directive/content/intersectBed-3.hires.png delete mode 100644 docs/_build/plot_directive/content/intersectBed-3.png diff --git a/docs/_build/doctrees/content/advanced-usage.doctree b/docs/_build/doctrees/content/advanced-usage.doctree deleted file mode 100644 index bdac8ae70fa23276f08a5e6a1238556c00cb4e61..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19407 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�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 diff --git a/docs/_build/doctrees/content/annotateBed.doctree b/docs/_build/doctrees/content/annotateBed.doctree deleted file mode 100644 index 97b0fc521092645e1f3c194c055660f7405354ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19621 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 bvjI9TpM#^hfV>uqi|677FPd<y<+J|>JoESS diff --git a/docs/_build/doctrees/content/bamToBed.doctree b/docs/_build/doctrees/content/bamToBed.doctree deleted file mode 100644 index ee5d9153bb4fb3767c32febac4ceb026c17ccc37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25234 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 Wzo|vkNw^3f!i%pzjNj^H^8W!@NAd6g diff --git a/docs/_build/doctrees/content/bed12ToBed6.doctree b/docs/_build/doctrees/content/bed12ToBed6.doctree deleted file mode 100644 index 1ef4dbb0efad6fdbb3a9d7faa9f0808f2aad1522..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10081 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 B1Q!4R diff --git a/docs/_build/doctrees/content/bedToBam.doctree b/docs/_build/doctrees/content/bedToBam.doctree deleted file mode 100644 index 49d598988392cb6b2376c4d0fcdc71fd823572b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14831 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 diff --git a/docs/_build/doctrees/content/bedToIgv.doctree b/docs/_build/doctrees/content/bedToIgv.doctree deleted file mode 100644 index c890c43af97f356a18fc026d81954d0483bf4092..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18365 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 RG*S2+UX=VjeruW3{{nxJ<@x{s diff --git a/docs/_build/doctrees/content/bedtools-suite.doctree b/docs/_build/doctrees/content/bedtools-suite.doctree deleted file mode 100644 index e0948ee3afd0fe654b75a2535af39a9802c39b2b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5766 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 IKdR>c2O)9z9{>OV diff --git a/docs/_build/doctrees/content/closestBed.doctree b/docs/_build/doctrees/content/closestBed.doctree deleted file mode 100644 index 7ff121e6886ed7e8872f1c3cafffc298556a3b65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23571 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 BHERF> diff --git a/docs/_build/doctrees/content/complementBed.doctree b/docs/_build/doctrees/content/complementBed.doctree deleted file mode 100644 index 7e4e5bd2d32e63de7a5ea7f29199f32931a300af..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7982 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 K$Q*wCT=HM0#~u9u diff --git a/docs/_build/doctrees/content/coverageBed.doctree b/docs/_build/doctrees/content/coverageBed.doctree deleted file mode 100644 index 5589f5c5e98b4748dc51e499552b1692f02629f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36654 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 diff --git a/docs/_build/doctrees/content/example-usage.doctree b/docs/_build/doctrees/content/example-usage.doctree deleted file mode 100644 index 9fa62658136ade0b3556dd651f75268e4f7a7adc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47881 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 Ck&PSx diff --git a/docs/_build/doctrees/content/fastafromBed.doctree b/docs/_build/doctrees/content/fastafromBed.doctree deleted file mode 100644 index d6c12aa9001de3811296673d033948b088df7c89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18553 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 diff --git a/docs/_build/doctrees/content/general-usage.doctree b/docs/_build/doctrees/content/general-usage.doctree deleted file mode 100644 index 3d9efcc0472f1cc24a8191eeda480b357f667c99..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 118074 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 diff --git a/docs/_build/doctrees/content/genomecoverageBed.doctree b/docs/_build/doctrees/content/genomecoverageBed.doctree deleted file mode 100644 index ff2ff1fd1a5b9808ef75bb09148647d0aacb052e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27087 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 diff --git a/docs/_build/doctrees/content/groupBy.doctree b/docs/_build/doctrees/content/groupBy.doctree deleted file mode 100644 index 222166fe0f1c0088c5469e45c5a109f7bfe13b91..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41416 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	E7 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 diff --git a/docs/_build/doctrees/content/installation.doctree b/docs/_build/doctrees/content/installation.doctree deleted file mode 100644 index 00f7911f34847654fa55e5c1ba831a258db1c32d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6156 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 diff --git a/docs/_build/doctrees/content/intersectBed.doctree b/docs/_build/doctrees/content/intersectBed.doctree deleted file mode 100644 index d8f1587d548a5e036ce67f40a9e5fd85d177f337..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 73443 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 aDLmStviOZIVx55YIo#kS0)9)Q?f(y`8ff_d diff --git a/docs/_build/doctrees/content/linksBed.doctree b/docs/_build/doctrees/content/linksBed.doctree deleted file mode 100644 index 919731d870be856bd978e77781d763083d762b86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14379 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 Z1L&9>!BuajkVK)d4-eRQ#?{ZJ{|8<Y754xD diff --git a/docs/_build/doctrees/content/maskfastafromBed.doctree b/docs/_build/doctrees/content/maskfastafromBed.doctree deleted file mode 100644 index 5abe80eeff11c29d20d856c66f24905578553ba9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12552 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 diff --git a/docs/_build/doctrees/content/mergeBed.doctree b/docs/_build/doctrees/content/mergeBed.doctree deleted file mode 100644 index 8ec8c517faf720591cde0f35c99a9d0bb25530a2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19686 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 E0on0>2mk;8 diff --git a/docs/_build/doctrees/content/overlap.doctree b/docs/_build/doctrees/content/overlap.doctree deleted file mode 100644 index bd3aaab28681af8373ae1a4d435b96d001a091a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10450 zcmeHNX_OpSb=EdpOEa30EN_ymvV`Q;Fw>)vEL$Fo!LlR}gGWM|G6SY*S9iajSEKH# zez&S-F@9hH!j^3e2D6!cHH*O*a3BjLAsbmpLK2b?2w6!&c9M{UkU+lss;Z}_d!(bB z<C7!K;YW8>y?5Vz_kMSI>)oqLWxo`KZZ*hxepv(={;UZv%&3*SPpeg0t<Ks#o>LRy zLR|!EjaD7msdXz>tk|C$y}|Nl1y!B8>YSLmEGf(FwaTL6MAgtL3hB(cKB=yWscmWX zs1*gyw6GknZ29%j^*t+yYBh%zRQE(=4+K#$2;C4e`Cb8>0@b5c#_p>-6o^7i1l&4M zYx8PdwpI9GAqYh+CCaE?sL-d?dZ<9oT;NAk5~|-`VRwQXlvD$497Ksb&ZrG&x>2i3 zvJ&)iK=St{tu9T!SJ|Bjzsp*Akf>ASxh3G4QI}7RL-P?k5EP6!r1sB`97-S#Mot=u zZUNzlid?Vicq0c7ADZ<2YA^yr1S2Ki3nAx7f^&|7P+f86w7OEO%|*K_bf(!fYKz?! z#Dc4>cE$-qa*I(2l&;chTh{I_M|GwPl$E!;N>wKa@P2jP?k+l|Q^Xi=&)cira-eqP z)zj>*)T}!lyCZJ6E3dARola!0sk)v}+40rjn&_c+%T;!FNxIcCKvjcz_4GE&z@k;4 zF$5HcwaNj-b|)GE%$ww8@=CeI?l2A19tjObv(n1TtMhVuUhc@tUHM3&e~Dft`r6wH z|D>3Q_wH-we=UI9uhn(vTykH-QPGKtt<B*X&NMl7nNin6+5=kMz|x*vxnjlOU;@nG zpjGl~b%xjqC49N&M_y?8l{6r%tm~PYk`o9nuls=;y0gNXb*hmFc3VDKWj6>NuOwQD zGoF}smJk<3I46W>RfH2pB+$7}W!H1Kf4@|Uh+J>lLL{*;0W58~9;CC_RwmHkl0Jp8 zup|NwPAAMTwcs$UEH>mOIqN91aszA5Ss1e1(88;OxD}PCY9SR!zid^YK@0--U5bLx zuQk*UN<O-=D&*HpFMbrVJPZ&zB`fvvT$9Or8px|LHv2P{Gy9s<>^HW#SP+u$O=r|I zVYQpIdKO!4En=_9YRvZ8?Q93+0rsSu<-VydG)TSwApGSPtqy^aNdY&(U*MXZaYyQK zR78X4!Y_X83{Q<Ss3So9Ia)oJP4{D9pVBBh5ETU+cB2`{j%xM1)T@(>E4OlRj4ufe z^?bWO8Ow(oWBIKPGO(JET@I(=&1pOy%Suk}$F+I^Td!$0aHw@QZ~{SpG|uzVB>0m{ zdQB31gYzV!?0oEOIL&QZy%60>W_{eGb;-$lN~;&KG!G%FCz0%0CnlWNLO%^(lLXsS zd76AVTP6uOuonEt3hJWdRu-%xay*i#$-Wt+bV71PR^`mvl&Evo5oAm;@6_s5F_sw{ zYeK=~yB9Bq!j=@@+kwJ^7o8gFB>+FK)k_)Wi%&d2Jhki~Uv)!4PPI_1`lVADRe-PD zp_Rj0lmPOa>y`bvgRttbW8Iu9@=MV=7{AO}qkA$XNuw5CENd@*H(ORxupb5Z9c&@E zB_-g>efS+(w7%WDL>g7(KrCU(I$x`f1$75g*0SAQ$9O7eRw%)9Ak2i~DN#Hb+Ln4r z1zz(1q=1@+>7`aKKr_SR9gA@{qtz+K@;+d>!<z8ttf~mF2{1KTu;v726__lw#GMz_ zikKK+hQQ%u)g6~Gw`okMGCQ!Eh$lfDhsh9K=cz{{CV94DVt8@3(J*9gnSiS<7jQdL zC~JW7o{L9*<pFMAt2*O)5y=HVo{0_5L8P=I7V!QH2_oyR)Q;A$YXu=@wAOG5YaeUx z(7vJThOTc3qV_1Wto<!C?SW=l!}}M5O`7Nmva&3f3#47C^+Q<yB2z*|@PJvZ=F)&u z26v3=Jg}Q(Q#^>zFY#-&U|()l+`|}@hT|3YaJu5Y(+uV>lig-8Uz=)wS3H<&tzOR7 zY+Ae9=UThJ0vK;>9@Ot%B1JN&H+nb?d@qFUE1~nNw0bqfklck{OfqM*dJRk0179;@ zC4*`zg&9=uSx$;|sh;;jiq1xJbrzl7r`7$;b+H(|o>}zp2ef)E*XPhI$wJoc$Bs`P zJvMPN&whNPS$f@+cycg0Bu0mVy+dMe6F|lZA3T>6_NC&z4&wda`%$ll8V_mp28d}A z^8-fu)^%>^6nRDdMnvtyTD>VHPSC>woa@z_c`$m*G9XT*LcX<)@ih5SJ)_<R&W~vI z_Lwu+yd&E(blGb-+Q(N#faYOdfxWYBQO5+BW@Xg7!0p{yy{EzLy=~mOK|JS{Lpi>g zIX(i8Sgv&?EY$lDCCughT796w<%8$p@{L6<5{=vRl)@=z)Q7<GQLR4QVEK`Dv|?e@ zM_XBtKbKJ-1B1u3`gnuECzfOIDC6^Z8$Q?^qJ@n5BzQcb)u$RfKD``|$C$@w%*^;n zt$qT;#?6nJT{!hwVD>~3!6tS-*Ulq5KEOPFGKrg{<xj!kep;)a0Yk}Lo-_`}Yvm3j zpZYwYXA!@k)z3CW{JD1a1Ja22^G3ukYV`{&BCp{OiJ(MoEaxwxhc7hC`AhAL5;=bv za<(@A6$tw!t$vk-WmaEIg_V#}K<3r3iuyH_viz8AIA!(g%UHkYmjV25K&vln^_vZ? zeyd%W#QMLTm2B#-X!Sb{>fc?C`pXRQ?_~{QU)AdO8`OWW9Q9Y2`VS3aU(@Q3Kx~XU zI5_MM4yvz1!>=}j^^JBO+3}6c<BuipoP1NOKLHQ<bq@SLZ6_X(Ut{7w1G1}Nm|<7_ zIRO0&t^P6=b3lI6Kqn73<7#yImR5h&(B-d}V{LT#8>7p&wfbAuWji`KYBsYfZWTLI z*hsauo4LYvvjtUmu`Qibe+NCk)vV{=xARZ*{0E4Bfn5I)s{NBz|IC1J58rOq3BDrX zCdR1W(du6ss{Lzw*8|cR_1|Knepjo1Z&3foa@5~pjQ`UB@jb2ni-F)_4o2l{2D^SA z(tNjB-~VoBlO4Z=+5C^O>kqX0A*=Cy*p*gb)2f|*Kz<MOv=WtosDrJ`z0oQZoH<Ra z@zAu!G>r$AADqL|)L}?F8>Hy6%Y3x%;|@sHl)6#L%2JPMn28%seF-9*OcvQZ>xVQ^ z%?qsT=&)IH?=~L5HD=X~J<535Z59q(ytp*L(tA$2CCLl-Ys%OdJtbOKAjxPxl5Wf9 ztjVT6YuMn#5(F)A#8Afms#$4N{A$(5A_JSRR2DR54H`)>=zC=h`@9!`q2DX-9i+9a z<G>6<(_}YVXLN1FB{m)Pn#z4skN@ZaL4A-NUb7w#P5nlZ{vSm}U^Dj0_7OnT>e30^ zAVUMFhx2YQs%}hFy@KQQT;9Mzc!?owwS3$g2gN4TBMy1%>l|$8Qjh@S%ka>2x#4Fb zbB0AR!D)A=V$v0+3~L1pY{^*1`HP3Vj*v$)x-zCfL1$<takM$+)3n5}`<5QE(H4-f zI$QDNoMLxW#jL1~uZ$;q=`k5jb#Q{SD<2;qjrZDX_(0KKb9Ca!F}jMo!ER!2GO46( z%#;&?g%?d%8{VuMI@)eN+HjM74B8HExNoWg(2n~-;9?GInWH2t@(`eWx-o>n_pLzU zK%|jB3`s6CNjPBPXvUF;gDheWS!lruaioOcFF7~@K^^a8Bph<|H1r4??8HOUE+boP z0~S37dkhZ@6gZ8fYYbU-kt|&_&7?T)Hg$_Qu0Ai0eF=^ohfkb1c7g`E&t@Q>jsgSZ z5MDG58|Dd+IrGs5<P6KmSdQ>Bc0k(`^GL*T<||`T2bg>>M|(g5<wx<*v={&Jur@Hm z-L)yd&yZcaNS1B`H<aIR>Mm6IZL#t*sn%De?sFa37_F~2JsxQE2=}=m>0;@D;=l|G z$6Al^^ZZ&r10>M;Mm#h<6aT5!++Ca2HyN^LEt0iq{cKZrp<3^1(Ryd9_03>ov_5Eh zyrt12v_6z{(W*5I$66oe=lQih0upHb96U7f=}f9Mch{`7u>1H(5?)e>kI3mLC?@Po zS>RaEcn&?!lx%RK(69J@==q^2m@G%*s2N{rck#J1PNeDi_||kQ{<E@E?v!2fR@p7@ zj9BUkl*&yGuXF9SAvs=vgQ%JyI);h~ySKrb&$#Kh;q(Ih+ubNI2itVQ6!Ph=-5)H} zihi|_whCwx#d)&1a$t$5hTm<b_Jv$~NlVj$A(%1*FJgk8k{icNKrc3>x8t7;XRk}K z;@m_pLGgsWp`lB9mm#3MY4%e5v-EtN3q1>lyxT1&;N5|5fY;kBY(S1_TI8m^sT{F{ zC6s9@b4@??yj?<!7cgs?7GXfbG^=oBcOXJei~&vKvuPEIJy*V=P|n<D&b2cnQSXzB ze@!z?Yi~&LEbwguXn882Q>cNQ8_^$<EUtOf!9#c@R|Hf=-Gsf4DkU_)m5+$3R707) zS%zVKY-9xK8`o7_5ms_OO^?X1RvjUaDSCigNtjCwe%wP}UDR1s0e38cdEGGY!x64q zFW~r^uet=JOlfcEbC;=%ghKgw?9Myhbc8!6Ajb$2pwwO^JPP@xr_5*YA<lFtGCbDB zrYV>)kY-Uf4iiH`+-bpiJ(4EP8N!Tos$oJl&tx5TZz5HEKZ6#SPVSkox4_Uo6`+8R zEz;>i{3$Wnt>X1gklFn#c7TQw{a1kjy^M=H%Ay!e(_PHT?ibi$XGdA6ia-hxl1BMi zduzO1elGqmXGVPH?Uq7%1%LGNT@&or7v?$I=x&t3mg~z=tzKw2Za}9|ju^x(5!b8u z3Gpjq;=VbDJk|w#g;S$f8QM*3EMDfZ%?r5616APVuSO*fKtz3b=bmfJbcR0%#Jr32 zf|!be1jW}d>khjUcV;T?G~HuZ8cV~cXI<RC@QLm<rJG7s-#JwfHOH+MoHDMh@QoNc zi^_ZLtx&brNCJz_Q!r;SbRUS$+N*^(OZOXQvEubWL}h4MtI`9exE~{?5BGHuALKb$ zN4?gRZ(#Ir$;nJP5>y^EJlDqAvcMriuQSAb90g78`+8HlzQtnn5Q^=ND69-0pf~V) zCSk>~^TwEy*_Lb=nI2}c9@Atv09<e4@AU;Net6#xzHUH#vuWFd{DSkRiaSqlVKNRh zr&ut1ZS+=@jCb38OP!S7#)KXA<PnJU2)}owgTdSRYy2s^5k>D{j_Z-Lc%H^ljYG4L z-igwC?Vf3YwCb?!--Ut+yU+OPqE+5)O4qULHPX#{nBlf0-OSC+<?0K#^WvFwQx>x$ zAPz?8y-c-bDXuNS`96@$n4sz7lw4Q@^8MU+m0P9{@Jk<}q}d@ph{Ch><~SjUsxWB^ zfQPb>T;HM(fdt`|SjvP=K#!s@PakHMmzqFwJ)9bH+JWWSux0uPDiN-0aUrfz_R+Yk z*Fe)q^&dm&L{zjlwGM9aK>ZjuT4An@(Z}(w=@a<R$~!Toy%lquopMuTZ&-4jFCKCq zH^iUBKNcdpc}o9;X^5GqIofPpGDLPyI)nuDDUjyr)A+YL*(EVU_zXTYJ&FIQnEPLo C%S%cC diff --git a/docs/_build/doctrees/content/overview.doctree b/docs/_build/doctrees/content/overview.doctree deleted file mode 100644 index f8b2806279545e83080a203ae565c90f5e8fd38e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 110066 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 diff --git a/docs/_build/doctrees/content/pairToBed.doctree b/docs/_build/doctrees/content/pairToBed.doctree deleted file mode 100644 index e47b8c02f11ab5b2b9423413df061c147d7aefd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 61156 zcmeHw2b>$l*}ef+85=O1=&+b(AJ#Ru^HI+QV-BB*Ie{?Phfb$EN$8~8k>rxF2_+<u z1d>1?Bq1RkLP&u0UI>t$klsk|m4vh}{r^1g%&b-`>1^Zj=ga4_e>>Wlx4-Yyot?dU z|I~0XRViolrM5zGI9-bHb}U^eN8J79U*qoYxd+UP&nP6v(&cUA>5@CybEnKpESWTE z(&DzRwx!Oz*id?SJUzcyDUVmmj@&pSMKzWzJ6kg8f>SAF3!~0Za?HsV0O3yUPn=`0 zmjFA7lKI2wkz^%bcCsa>Ty(amY&k6$hG;`N)A|#04V}fHQ<|SHfNhG*=9bDTSr|?a z7t*EDTz7hZqSZhy1SIvCUmP!Ii-ly~DQ-@yd~)1TX}6M9X=+|_XY?nc2BXWd!VRS} z$<5iKawGkTHdDF?^hV}uTyjo2W7$G>tTN`)9Z|^?S-CU&6SFjyGoH+<auKF-5A07I zXGnFzQpwS@1Hm0Fol~lejV0AKcUFHTen_b@R4Ql7a8<D|2$@RmY|lL?K6^Z=O6kEd zXbS9-d+<j0ka=OBmbR73=`jlwap%CZhkEW|@T^L1DHSU!m3CX=lj2iB4Hj^tbrjN~ zMZ`TEs7HA2k@GTu&qOo4Kgx5Dw)gwTry6?4glVYsxT+MgDTG<XJvOlxinqs0X;o@Z zDtGbL_LU~`O6?bkL@NN;4zCpQ$wK?`RVxRI#eAt9@mXq56$@p^*-lFi6ql!m+f=FS z9(VmU?(v@M48^CFlcS7T_k{Sgk`~>a8;>N*WtAPOlwqe6J@=$}@#({ral)0{lQ+hv zrSi#A3BOO-7@t0rOkJsH<x@At56BLe+<6<_`SBT5*R>|&Q#9&n8{Gw&1Cy2b<b1Y} zc4K`9fUeQSZOiN*pPtHO^TRN#+rH85sPhiInukR?VaYDfT?k9oM2hI=E`qI(${dq9 zK665RieR{lGf-m5yv)fPGpB6KoVqbHZ)4`Pjg<@p$bfAI%$A0IFp%Dgn%&)i!7>=H z$8%2y`wW?NRfdw4p)fw;BRQ&)<C%zi2IM`{bI+o@+u+OAR^J<~txl>q##kyj>0~P7 zq#4vBs2*_Rg{z#Abh2DgX{V@=MXdC2j3CQ<*E-33cC^51$fh9agN|hLX|y1bQaY(X z5X4N)Ewu$K1OFKL+_Pz&a~fG^vb9ccoh#6A6bqvfcR6%h;khfVFKTon;Z^m7qnR^l z@^drYi5W15Zwz-eEPI~kt^qNrGAm$NcyX#`=AK^}0!khzd(&ucAEdg#bJtSEz0DjR zJF_yBhT;sOe$QP;Dc-stgQ$Pqz^Wbz3JHAMFr#P4pi3!d(h?;)97;~9sLJW#_EA-= zjHid4p=|=8(#c_mm9xzm$Ye{AWIkWqQVI}7XrUsoX@<>}LJJXyyHv5LhO>nvnhEw~ z)d(I+mcXM}AdjqyAiBrdwroy2E7q*;UGKo5=mbh_&Ki;{A$&_{!a>Cs-4AX}Iq8f7 zyC8zm`4ZuxONkL)-ckgyflL}z1zlsISa!ChK^lzEOC;5>gI+mP92P0jy22LhgvQX7 zX2(%os@x*F7e@VR3s_-GHlKG!lG(hIMcpiD__T6{i;$VzG|d1V)Ih;6wY9do7gj4? zMrzwL>MKR8Z<?)b>ocrX7kTagoSnIlwJ2VX5Y6<n7F~=gaW~>&Uo<eXpZ3w<UV_#n z;klREHtr&6<1%R5(1~P@kYU0G&%Ml+o31P~mtk;uO&GWv;|H5D7si%m%(W?ruFW0H zM3U^^R@j)jVqS*bX3}$q*n(6CZ7a=)(kGBYux`-(XGS{C;Too<<Mauq5q}d<8-co` zo||DLlQNW~o@~vso|_X{5WUN{+0o+yzwc|;?U(5Rr3wzEO-)1Vf|}Tx&Z2=)t-9CL z<I_^0D?}ZXW^mO?hs|JHWR1>9Z%vM|+7G4C+AR>6e0rp8J740kQ}R1bXSp;d%vagb zj0UuIpY2Yiv_N;*?Gg6Oy=;VZlK??6tWTwdi5(#8(Yt9g06gMoMQZg}&i>kZLYj>$ z8+l@-b#Z<kT*3LqQ!}PJ23Hk4w@9Bnbuy4STR$2~kBw)NC3G<EI6Uuqt|FJ|91IyB zGQ3Om`hgl-xiVCn3TO@NRv_wT&)otdGEi{!Kw-LN<8GCq!Z$fokP+2?Uu?MBV1s9R z?z3pf|7JyXK-nSCRi5in;|{piG+jN;dg;+w?V7a-%iAJ7J>lx~?D}wv^_^#{({osz zTAHzOuZH=r@!V@EOj9Uuyb6)Xn7__*pG(+q%wJzG1dtf>&#R63=Y!!5o_iyRNX%cS zI}RP`2iHaV@;3Jcz<8nOzKCoa0ch!9+3?&Yk7Wgw%nuIbi>WIk?oAN?X3u>w=^Ty5 zdPPPR$BHG6!klOC;$I{p6P<S5Y&zzzm49v9`x7W3;GD}z&vJ|IY%+g-#&&;bgh*t4 zy2SOBn!hvow>@Fn1gaWh@mV!ibYH>-?xk2q*gBT)DUBzwj&MtS`Z$KhX|*}+-pV;C zW~O?Iswb!C+faNNB4MB5n|VMC@7{)Bzuj|RZmY-5GSFbN!G)JQJogp0q-I3*%9`ru zzA8SKt6nj?>J>9{=UC0E*PSxPdUa-ojIrX@O|Q{oth+q-wX7<2OKIySTuOT#V&{(F zxa;*bqM31*&+H9|iJj!|MwsYLp8IA9mm#;is$;RcJ@+2U{B^V=aao7NV5i`;w#p(P zRw=YW79hu;t|NC`6*p(G7V4DJ=wZ1?2sD4(WM`zZR47v~u12Y19;-j2PNujeVpk?G z5-V>>gJG~S;QAi!QLV8&;t!`}nuj^5jNnRo2<KpWR^d`6RzpEn=AjX@G$`ZRw5)wt z>&jT_Esd;uv32FWZ2V`|8pC}n?028%zKw<omBE^KBh)x=d%Ne}PY5n;`1WJvf1sWt zu-MW+2xe0NF2;7>0XFaS+;@S9H1u!R4ZU9dAXVQP?z;i{9?yNR<>!|K<awXxzMth> zQ?2nHW%@u<nLY@aYFB4I1ZE%h+>cnf-WQbXKFamKC>-36LYt3y?#F4G|82r+@7f{J zL!SEyYSAMOmKbt|P!U^O10$niA-_$AM^eH;F{a99Mc)pNYU;<s^^p<l+hFU*Bl9HI zANAZ%lJ)F5)(oys)su*39%8_M8o?C-PE}a<Gw{b}J@<1qx*iQi*P(!Ipp5%@Abr7e zzepLHz`#}ynIYI?p8F+2aw5?xcA%7BZYt$hAmwDh64d=FSbfcNzi#DwOv_h0{0iFC z{RS|;>ABw`OFR4u0%*zTMGmmO?YZ9}<bD4q23QgN1>1T%-r9=;zuh<Dv-L)Xc#qG^ z+>&WDn!DWAo$n&7_IY_P4exi8m)-B7GJoH5e_*Tsw^993bGeT7L(lyYYwkI0R`h_$ zDVSA_hE1?7tX-OD*b4u+zHy56joC>0iEf2|>bXCo0EaXZfKA-b>#0ODKV(Dv3&bJ^ z2D%|Og1NthvcK}&Ut48=x+87zZ-De$&;1=GY2Ft9(6q%*c<%2BDWfE75X$<8rm{W> zS*Jl(E9D=-@K2umXDj6sjap>e$(0;Ti2nkNzk2Tfkg;u%g8*oeA)jrL|K_=WC**_s zTI6O^FF(K0RGd}Mw(C2d?xqS0SJpJk|7g}M7j0$wC&Fu=tDjo4{QuR}?!Qp2|LwW| zu?@lB{I*$5Lf!S$ez>wGuL?AfTZ^jk0J&H&TT3`%#!cwyLZfC{?Jo@Kw-;P(f=eAB z0GJ-C$s*AdBaxnz>DE^yLKCQ_Hl!BKQ5iJaY8q2LJM%HsbYxzCjhcbPQxRN^HF9LQ z1MRn(sR<k?1ZHUh%^PwNMz`f^wxAqjQ0CCcbw;FK2Ma{lN>#lMK{@nd%N)j6b5I8L z4n^Xr!-SB`j&o$by@p@4XzZw9AFi>R^Z-UN(+Q{}1m#GBau3pdtDk<WANV1QaC>r8 zzXLr;ZPyX%0n}0A!^UItYi&K{Dl0;8pPvJ+t@-)%^RqezK10)RED}#0CtlV~1M6<J zD>z=t9bKNdC(spO14r}q5;NN5SiKdipX@c9`sOV>l$U41&Rj!zZUm2j^A#?XZsFdX zEyYS6TX3q2n%s^v*KnFE8ylH{4q>i&Ze_<ZT)I>zhz{X)G}d>kjpDfiz~1IWQTimK zbj<|8Dou(fH>4QN(Pr#%PGMRzQ_$GzR20DW^N@IIKCZUcA>$qCby_un(}chRO<;mv zhXR>iCnhLu21Pp3ps%P_yA*~ERaL74<xq=jxdBwwiEJp<g~U?}g@z6&vJCb$xSiwx za*;qT){qIw&1f!=m2Oxf080&ktUpO4QOIt|Z7$?8ltak<*()m5gFA3M9f_yT5L7K2 zSp*G^TaoQdfjmn?hGoNpNp-dWoMQl*_ujn%(Ok~uD2JR4d+!w}gVZaLcxsgp(o&Oo z(4reCb<Gp|<$8a`ZmCP^TrJ0Hk>flqM`F+N^aH_;DAow`^9}O~{JL*MQPahkn?2Uk z?EJK}c3@FE5)m;Q$zPMV$CRNkJ2?BQ)gnAR>XU$MJUqJHb}SbF2z7j4(AGFNaI?q! zyf0|EFGH<G0HP!5N8+h<60*7@VXKOc1pO_RWYvXI{tR87D4<iZ3$s~ly(rX7{IO>! zTRyeq%x%pU3V3)e0CR)Of==)Fcs`p-4q=apJV(Q(=qw&&Cu1qQ69$jI%~t(VqY>MB zktE!A#`^BJ73(4a;80;eM2{QM52_cPV}^?x(u?M(H^*z2Fx3May+R;rD|Y{|-la%9 zwE<T<S|iio;NdW^4Loo2O{6Z<6fPGE8#RSQGiY>u6v&L%HVMw4!8wqM1q@EDu8^{@ zm8x1LQ4X#6;IN9RhL8)TQb;^CEF^SDkYR9aaR%^q#jh%@IgJRXQOzl_t5kg>+3`U} z$Y%}tS0UZK<Ad7nYmFcC&Q-CA|E}6IkL+sY(Y+bFs$JfT)oe9lr+RE|KnZOwBfb?b z+>7SKZH;@;2W@4)5<rOKeXgx_{Z9F%aV+i>iS4*n<>4kYEMrJKRS?JOhJ`h>+Se4N zd|a2;^fko^`Wn2jxrh21S0o9yqOrb*ZTKkxU|&-b(aT2kU|(ZIXRBOkNH3bB-t22O zGY$4Nf~&S58`j&3#8caFwS5hl?oeOzOikfgLg6Y+VWPf<0-3(X6P#xo9O-KU2B%if zk+QIrs#;x*a?{sTG1WE5g;Lid@zixfLWcwy?$*BMxti1U!s&UM)9&bNw2^FI^L!zH zgCYMiq<f~XS?5Q)v)yi{+6nE!4oA<0^wqZIyS+8qmCY={9x&X=+$jEP+{rv@YxxTR zgaF>>(|}uds(WbM!|X1fsu#jPXi8p$#8WqkM|D%eI$7;qZkF;F>+*!hQM27*QY_a` zX6!b<Ml%}w!jhfZU`IsLnN46~6PajY^AZs(+>FNhzGcJkr2@dt<`&W9R-=imGuCOs zmYEUTU=K)+mSBH#8`Eyta%gs~7(=MrQ38{`9Eqpyz}0p+WF72sj)WNl)0<kOsaI$+ zuM{#Iq=8IgLKKYQDV^zj?i9pV8^lHvo!3ZN*lL;xRlE!3rt=9*bY6>GsP{S~o_f8I z&=Et1!OmxeOmueH-RcdR;TwhFn>543ZX)iR%yva@7A|)iF8jvD&1NsV(g3k340bGm zrV&4PqIC@SNcV`_8uv(#+os?x076vnbM4dGwd!8D3C+w~k$CDpajb4;SVOBF)7zx{ z?YcbS)^<#LZ00jzXLP>^6K+;xeNWg3d_Vx$89gY{zr#o$>Wl)DpLaGS8O>39w$$%p z8tRPn{O8>$ff?U}#8dCZ)pkZ?9qf#nt)8j(X$tQb3LnrECYt|HCesCdP;fqEa2m~j zJ}hNnTU8bN2+B<t6qx^f6uD69V@N#paUr2&gA9XR&{JC#t9n;Gq&a;;I6bU6J;nJ? zl`1+NZ6w?2JR;;DHRS(~kCpdCv$RKgn@@_r8uvC&+PeNJ03m?)`E<9xXR%v+sy+?> zpegwb5>I_rJgS=#)=BARSV{5jruv+Ke7*`|k9U$YG1M2NAkdPjFCr&?%7}Sq6Ym<v zk}-4InEyVfJ#9=q24KF<slJ3CnVEc}bM5r~Y!rQ2h~wl8^%eZ`)K}%cC3LLWdN~q} zFEu8c9&4t)M*7hlwF$iCslF~01LEr!Jp(d)gBaaUh2=Ma2^)V4iKo6Tj9PL=4(e0w z&A%fck86-b6q^!)he*`CHt5Jn9QMGQf<K$IuW<It{-xzOaLCEyh$tNG!?Q2+!93Xe zlusv1W$vrRxpk#<M9$g3c^Kwhv~d~{=LS{J!)S9Z#YsMV*}R<P2|?S66=y8D&DoOF z2Vda@Y8)nnV~PCpHtJp~?TyH*q&y}o1)ki5MR|Cfhdo~lCxtAxGT;OeD`w(kXI{E( zw9Q%Eaq@f~G}NnKKW%M2d&P+VR;)e-2(P53%K2@PGR{%5P_Y0Ig_g69u<r{e7!BbB zv|-q?oDo6vRMxz+%CnS`!^2r~@}7BXw#_-0XDsPAUl&9)4cZGU0wYdG+u{yLBn0ge zf!@_-U&A%0D>0K>Y+!Tf<KWmB?02>bLr-f4O)6=7PabH*6G?&rEW6RZD?w8qz%%?x z^gV&-PH-F&3@i106d*o-fW%Wj6sVRuD6nL7qA}pW?MDLpV*}ghomTY|DGUpwsc_8p zQ<S4V)x6xQeuhkl@^d7f`h`%?%@G*}hij8@zpn~l>*6nA2w3b_NIdmxT)9lL&pNv5 z*9Prx#74h0HsU)>rUBu4*Y6~|dAL4-a)j#vz(S*=evez2{SQby^`zkHKqZr4pdJqd zdp@SD1=TlD>W`Y(pM=<-HL=7FAl9n)7eW84LD#z*+451l|B>A0+WigX(2lzsV<YPC zxPx;4K;o%?3aVC)EP~1n1(e%!4XgT>mgnCh&wsQ$iM_+S*2I%wAiT$dD{C1ytOgo= z+IfE|YHsHPP!2mY_DpA?CL;^Ro`MALoCv-)Hkk#DO^@o{Kuyy)(*<XS#*z1_b$PAO z5rLX%pc=j-t`3ya=5o(MIpnT=SzOIVE<`^F30^A^5?XY!42pgMMK@=6?2i6V9ilnU z5zdEd&WYX4#Wy2|z}(Mtn6PUx?BY-=I215LAE#IEPO9z9ar`I7T0A2W!yTNHsJs5a zhzp|-Y&JKqHP!X*917O2#>dtk?Dy`60|Fjezej{pM}Rs!eIyc39VNoF>>*yTI_-?` zfz|O!zB*c%9%GntqTru>;>3~|3+gkRV?(eWemc5hVH&-AAENG=_vCBWekZ)+gs-|E zXHP5>kUe=!C`Pc5z*UigB|Eu}9SnHBzpsuJcQ;&ISUblL`r`nFpx+l0`n;_FrkGI2 z!?$R193*(xM#4dNE^H5^b+9WFa|PtYDoE|h#7R;R=-brE$cZ0O!V%7x;_(Fb7*8#- z2e7MCP%LW^r{YIux~xUa_hW9JkmFj!eEjlMtK7GQ4tHN=Nrw)1SErF?G)I|(>kkWr zN<c`n{!rx`BS!a*vS|Y}tk;gjQyoIQC1-e3Zr!}HQ|lCvE)9~HiRLvpIc&b>P&dD~ z52zg+LRH`)H-VWwCi9r;V@07jK3?R(RuOG+OwrFPZsDm_3y7gJF~@~pa3DWUj^`1c zaylE988G#gSu+n21woukMGmd4b7Q5s)l~o>RB-I^0y}}mIs?w7ipbOD;JaRONWU+$ z5sw5*IEUFt!ijdkQ!>$BD3+@CRI48$iv*&<M0+s`;FKjuJhfDy8cww75;M{67T9G5 zw&6s(M+(CNMRTOWiT3GC!xQZ@kO@)FMB=HlaJA1x$S^o`yG@TeaqzNPYkIo)U7f8} zI7d|I)hZ;Ow&Eg^0&ZO{La#7F%VCrzjM@3El>Fu%U4?RZl!qcQ_SLz#hcj0r@zi;O zteZ-*2|ANQRy!Hpt@T8$(IT8LBJ^ny5_^oDZ%jKfzd-n|4e;GlBlB=`&@Vj0zKX4F z^P7WpfPlC5(8&BkP>1iIfy7hmMVLJ}GN+w&*TIqbMZ$EzFy%9Z?TpMz9HH#_Vfk77 z3%m~0_~#k?lkH{Ut>tH&Q9G2K@J^W7&5O-OV7n^OS!YcsLrr0gKs6=KPKZ(4^U0Vz zE{<+IChzdW{bE2N-1kL8zWm=44eAnj70nD+2t9SF1cL5j*ak?8U`OK{1mv<RNbP9+ zaw!P3mue$&;@$kNQp_HspDo48#h83oDaL&4eZZ%fVjQx?<jW9}E8k~Qn}9B(^+Ei| zOq0?2YCjsU5Oy4`C-KWuLvpWA3F8N${7*XB1NhM`;sKTZq!Uj=)~th{hGMQ}og&9* zjv5EY^25R-prRSeSEWi5qg#$D+hrj}KntE3MdGQ9ux`m2$*8k#t~t`r3P?_aB=~st z5}q!rzkDN4u-JU3alk_LLmcwF2@2~0xib&zo%B>|>wKEYA3pP`6p#1U-_at}5I`10 z8cZJ+aGlFIdVw)Chuy}|q~!DCDn8cHvN+dYKFj0FMX`tk&<LjkxB=W)I$f5>oSXqD zyiAzlm$_6nsh<>K^iRLyLrl&*2=9NCM01{Bt14L|7UWoHOg8X8GL}wdl7(z(Odet4 zn=Lr!mS4FdQ>^S!Y+pb#;Tds;vc-IH6t6Afqb2wT6rYnqnR2Sl=`R9b<mRjf-+VFO z5ej_7Me?wuC68zArx&aaP{EkM*p9Q6KrG5^<x25(eJq~m*O0tGbSL=UNhluF7|IY^ z1tgv-3SdhkKrm)-Va~#%48{fAHQ+M1HG##!t&;q(M4AAnD<zbpZg90*W2rK7AO&A{ z_S9xU*KH3O>EW$D|MO@LZv%F$i6v*A+M)?<6++uIp~QBOs;cq1=Q9QMSq4>3&9fDP zx?Lp&&2{ro4&CICVOAscY-B*S=OFRa)q<^6BO|SvK5+P0s5W7hQ`cxx*9xiYG^xaP z(Q4Iut{`7;kj*0`)MV=RJjrdY+w)Nl-Ef^08&WqQg<>}%@ze`&wew4|2r9-0YG^3b z3pK)v1mPx)AWz#+SS#es0`g)5(r`-r5-Dsh>q}7%S!<s?--1ktd@B-ce-{ec7i1U| zIf<52w<!DCvOU(8soS(WZWnjFT)QK&&-8nz8_}(~on7A{K6r)k0XvGo?7Bxj=~375 zyi%aURWP=;-|u){1qf6^Zbu1{Q+FaC_3+h5JoOqOqgTm-P-qe;6{@9qN_3Zizt(`? zj<pf?9{Q7PXRlymE4^rXcs;(gR%+w@*(-+dRiH7fYvCTf>{VR)EAyj`&gN`-ixWdm zhF@ljEs8|WU$;Cy*wN9^*|V^xvu9CHXUCF`6FZz`%N)F<)7jxH>RQ;nbXixo)3prS zl-4?DGH2Psj%A(BVyDaLbQVT>dma66g|iy}_<I2Vcx8^hua?+6me|r2f?-Q6ofW{B zyvT5Blz$^bqa&lk@)I}1Blsl+Be-ga(Ig;-aOWfjdU|`-JN;{WvOSBPi<opcy*f#B z;BKLlfcQO5*6E4hw}wls6S%}`N!G6H+0fH5(6M6S!rsLLiv|`pGgs%LrB!=r>vUAj zr41Mh7_4_-_3GZ<ffc;yU%kC6aNira_e%x_Ry%#ps59)OaAk@uUbv1%E+4)Ec1Th8 z5!zrhwJ8PtQ~WuS+BBMitu7xLt+7Q{6I*mb<4$9TE|_MWF-?aPG)7nFK<A>>onb?C z_bghpBpf!~43c2fbS+)j?JRPZAaiNN=)c1159MKx)mm#@ttDtCZ7FBO8H89P_;-b~ z(OCmCTx#x^mxf7bBK{gddLf`vz_`S@9RJqi*T%@;^3b0)O<ae`qDH3abP_a;vCJYT z6d}$^*l7boXlZX(*NSB;x(1eng2dXUHb%r20poOwwPL<`1_rd!1FI1ffk3Ix?iEY+ z4miUjn?^>`sloFvx$KIym!#6`)2S=27)htE7*3^ANH-+YSEM#ZMmDAT)5u7rMmE(% zMrR}S5eifv2`dPUQC~q8cK3F6qTvdR(Pdrbb^CL8)OcOxLch6uJ)qEB?rYihwQT!Z zwtX!dT7JL5dwR5N>J4b2FmQV#5>LHJ8Z|wE;@C_^YIcqA%>r_F6{L2J@E$1$j2+cm zkQ3J%ee7bO?D~o66{p54gZBbSRtDdSADOALGC1P5r}qgHt_;2nzdZGJx!2!Zto>B{ zI{m45*#Kmhxa8@v|B+fO?O=UU-A_Kz9JLFs2R<N_1L~Odz^W_{5<`DA@+q=@2PnYy z??mFMcL~FmoRNq6iTPy{+q(tiJsKpzJ)WUeANjP@o?ZpiTkP?jW4uDZMLJo^3M>KY z&u+_d;*Ku@V!aNV^s$)$pIGJ^UDCn8JXOqB#$<Ui@F8z*9>9JB|5-L4|Bn<a$eoAH z{WvdnzPuM<Kb~yX6C-v#QGcwoX2H*2V)S2t&}*V(>Z^eTOHphtzx6y9Uqemf09uiH zY+PlrYawEG2(It%T?<5A?k{y#*S7Tb=D8(&3_3`M>w#m*ad~~itzadryv-39X9V90 zq>bgnsQwZeR}2HuDl3NXmB^@%)=|IayiXt+uNb}`Wr)KMAo0`(1+dwQAp_B@7=B2= zKWxCmD~2DD{IEpP90_p6@S{v?Rt!Ie97yqTB%XQ*SG)Q|MyLvz6EZutV)zM7=wTuB zh$gfHD~3ijt{6TlsGl^bbt{ISl7i;CeH!J^t-50P8Dv1U&m!^E=LB0fvSg%H+tC%n z&uda&5K>>%q;_b<FreOJg8U_eT)SfUWyx)>+gDHy-EifK;a8DDv9BTV)YoyfJ|l~u zVs^#w8yex8g77Vk5Lht`2>ERR`Hlf;xMKLY6gHRjyC{dOwJV0-LncK2J`zv;KqzQm zkYP~doBS2SeeGVbz2c*%|1a&H`k{8+kHmF9)~-wJbJNqWd(zd|u0;Ms{Pk1guf{8p z;STL*0v)c}v9$%iL;E=(P`T??B7cE=)bC#+@zk$`Ov9B(N`>lfRw92b;J-287a`s0 zl}LO?et10XFF!7h)T}Wsl}#Ob!EveF=win%Id%X*Rv$YTbwmW%X|jCjaJf?cPLpda zzzGX2dRem@WHgXt7Vk89EX|NRIdv`VUfPh8UDN@bVdT_tTGp|6ahH(6nrc@gPD?r# zEjFB%bSzukkW*(zPiOa%#aLWx#3|u8oeP(BE?&5FQK$WdRX6#A^-yd8mUVP?`#+a- zH)ge{r>jdiIbs3e29#O^0lF40S=O;or;8T~7rB5HiV3i&t7D<)DnGls8Z%mqrN$*) z)X93lFsdE6$uiP!CE^+{BaQp9{yRV+*7t>_ti#e3;+Pr_>gD`>VcD_MVX2-#c%jMs zJrYm-K_XHQiP$Pi8;Pczt@$yT<1q@K%O}fE3Rs|lR)0iJ{D?{^Ihu}Ps%E|e9V=DF z#*%8A`V)#}V*h9S$jsuzzV9G=R={6`8t3(Y#V@@2DEBRi<1ozR<hs*|ldkL^H!pfy zx_=|NXy%CE<o)l09uQ7X-mConL8R^-A^%T6!Z!ax;;DZN-Iko@nWL<_3*k<k{|Lw= zjC3&wHlGX@se4*m<#C%YqfFWM6To^I54JYh9{}>+_5t|esmX>gU*~IWwS?)4DGez_ za}<bEt*IoWr&=0KO+yZpnvTR%GXz~boUHsYu<aWo0ya~F$^NHm-+0-&3kTM$>%VBD za~WRiIzxscXE|40g_peewC)T{x6j(>;59E6wXZ(+-1duCoO@QlU(yO5D6|{4f_-zW zJ!Sz2YMcZ8ca^`I4O%e3K}hftq;S^;pswQ5)NnCXDQEMgwn7mfpNW)tgn2|Af^ztJ zjvyXdMYO(+PZ2<M7>ekd76GaAa=%q7it;*EqpDaLkEp{@23|)X@zjw*h(dzuQF2rJ z)%*BlESi-1_OGCqp?LKC(S!?=C)jv86;a2a6!ecpf{*_YRKA)G`p3&ni2igSZpjXp zGkr&s2gL%9%n9*nhN5ziRT;_|x+mbyQ*(usk^4lsX-fA`HFR^DTv&Xpha`t1>LieY z@FxqCQ-VxRm7B21eSy_Hl!u8bd{AA@M*&E-BJtE|LdD3vKyK<uk~{4jV|kcn8pqsk zi>Nk~foeMvywpQLYvoS4si#T-NVSV8Tb70R;i*Leu0O%NZk+GgsKtbc=1AK#f6}xp z5y&v%SYMP>ml9aF28K#Ea!?tTA@Nj?;I`xpX|k63faRC?6j4c?E_pel*cpO$rbg4@ zd6wLS`A2hBv9nPwik&04y&6|u&0d)<VZBakx13<n92o?)TOr_K>PEYj1lA`i2T83$ zHdH(piKkWzftH-1Pa&*|Ijvh7${v82Q0M6~>Mn7o)<{O!)%XV1FkF2;3gNCkB%Zne zSKrlZ<t8k1H75I6o-+ZsPVg@b;y<GaK3UPJ>sf9+auIGkH6SP^fa7vg&!4P_e=$>r z+9mkmDXz#scKx+)?3HV6RhJSXnj`I?Gd2ihm~gD`2vWU_z+6we96vm@QD9qgLJF<S zriQrD9AzN-AXBr{lvG#X4lYb0!H!^DwQ-|45)bxSh*aZ7Ymk)S4Es3XotB%h+|ish z$Oy{CAftkt(YT3Q(D~@;wrpU<kv6N6sf^uH%gw00c4-)^)3TnuoVlfRQUMMN#dh_& z4I`Q~-!mM}7UptUdpud<J9Z!-=g=gbc>kJ&GoBq!w>jovhTTjWUZhr8N*m2l&!BU1 zB6V0v<D4rA-2HUbC=co2?J*=cKwk7{$r&~2lKKjp({<HWqM~4qYfRlNxpEUWM>J<E zkz%=xnUdg_gZPyu_+-U+-OQAgXbXOLYO8?zl?XdB)iy#zbEF;g(=!D!ELg1XNK$<k zfmw;J!Vgb*0^5=kQV8T{H^hzRC<D=-!_;4|y&88g>orI`buF&85|Q}CmFPObd9IHG z-q*`bSZ*8yk9_ie9#b0R`S{_f8w6ZGtV1QjlM?I!$3e<XD#G&milA;J#b}PQ1P%BC zp&S;(81RJz*3aplBG(sz0<3lu5>MSMyjpTb6soq}V0^J)zC>f{V0@|Eghj3f<1H+= z!Fa3SzbuG<TN8Y;qU~>IO5492KX9b8fSYfI+uhIV6$FarNIq!JR|;@gwpia$B>XA@ zGam264^O>XU|VuR3Ni7ThPcrj#UT1!OoPuxUW*JE_jO2cG&8O?BuRhbkbHySywS%2 z`!~r=SoCPln&r(X7qi?gxc6w>#1Gi6^9=@uq;1vZTYA`V#TLHyvEiO+=X-*Ol=X!6 zHFDph%%-rwSe^cuO_I`!$kxcwbRpejW2AZub&uv~wV=1}6&r+2X1x7Y0(bx4u+M$a z6_NNhB-mLXR%yu@qcL2zTg~qm%m*~4uI3NQP1v~AYW@zE+iLz!!GBi}|J_aS$%@tK zJxp26--{ofdY^#%)f^JztsnJ%0!4EqA9VZ&1UM{PtnX+N{vd%_%|C=6p8BxBw&a8q z>e)vc;zn~6gXkY+YN|P<P#;4EjQepUc)E+Lt>&aZaW(&h;5_W(fc+zK6Ba$1vu1e| z<zkjk3ht*gZsL4Y^GjssLZu*&vC<_xzn99bw=w8P^yWn;j^y+{hsLn#)8rD(QNEyE zKO@}2!Wp}MmcZS+TawR#Dy;i?B%b<$@NdZ(@o0kWhVB;y^D&L7L-$K^6IP=dx?g6w z4c)H@{#S$eUu%L-Rt%A^GiB(013x_VO#yF_<Er>78Xu-0cE3faXpZ!QHvYCihlPvv z9Yf0BAuwb2as2SqcLla3C!`QO-)o2)%~1}bf1jzIA!{+z50C@%{t$_$euS$HUNV?C zcz-N7Kk;$E|EF>jmOYxYhWQ!F#V|h?++S$i#Jvn&zWW#2!Q{-7wYK^8y*#ra2XDX0 zOr<WQvByS7bztWXy1u~XD4|z#WM)r&pMzKF0$cK{{SG=Rx=#I)T10cyKj^q$i8f*7 zjpKez;O_rzn*Ih-BRYPI1V<8zel0npK3%xo%J+m|{$6A1%J&Dk37e@}`JQCCt$cqJ z{67Wp|J($htQg~eVam$)SNy<wyMVXI8F#3B*hto@{zi~!j>Llw{JVgLC5!bPOS1nU zFl*jF@xxR95?HL4GaHfrZ@CZSMspN`=>K7=&ufGXY7$-ufnoPUf>Zi%wbhQ)C$4q} z2+m|52h69)O+9mKlBp;clS~ub=^8ijBUC%iP&fiC7t44hG>y|`o#8BBMNOrhdHu*w zj?U+fF|$)lc5k&g_U+_q0Xh`aKD_5DJLg)>!OE?{Bj##%f@N`L4$-+sjHA9bM_K?F zhn*7$nd5Xsu-1@dcKetdU5Ar-KnqCzRyTdPu-<CMJ!Ldm(9tu*0AYI>M@OWvJ8|(I zvyPex7V!RoNIW%5__gdoey{)?Z#K8h7On>wuCfEndW(U4uoQ%CqbV?u4?#HsnMXz% zG&KiVQ0Gu2o;pnMxi}Zik(CZ+y}hj$NV^;nsztMl3cJHKyTooGU2CW#gu#)9ft=5( zgHfJSNOp5G9gT9Bi5ukvNgaa>80lCfcqAd%+DK#*G}7rbQf)=tnQ&LfYetSRIzcl^ z>>^R$FnCm2U4+D1a%gF4t}s1OGu6%gNpe$fs6Nv$p3HLF+@B)&rv~xoHNht<#^ZdZ zZ0=j}0}nR@++Ui)d9!K(A)-0b4mJWYfeZ^4>pPBA+X&3oz8ydCa6@2QazYA~q_ZI| z9s>{!=v_?B($t7rh&#A`5fV==#??0VBtCItzeI4B`Z(a-EjMAgaWEM2$$J@78l(q5 zJaxK&w<OL(Sgp+#vSXDoyHab9KpmFz1h6L;N0sx8Gpyxep}@BBXjnT}#g;kqvTaze z?Hn4P-=@wWk7$n41x<RU@Cu7&OnMf9yLYb~XM-jzdkzv$^$PcvoDq)d!?+U%>~g_e zp)qy9u9Taw64mj^Dwf-TJy-Bo2l3Bqf=^cT&l;xm&-wV_sXhVs1Ga>Ky?_wW9BBuw zyH+5>g2nodC)IueGho-@ho>$S*p{4-LeM;;A#OBB8Hm1~sR`JUx(IhL>i`l@#c{O( zOX3p;?8Sm}iH`%`JQ%G0u-ItM8st)xi$OLB?qwP`aR&nST%3m}j}ofKA<hl#zn4Sw z%sFtGERMb4;{%K+lK7MWw%zBG<9OzPfaVyZwUr0y;aom_s9&42JaFuXeRLtm0{X)U zKCQq^0@Z|1mCGF97-V>diUz%Nxrp7wI~%32JJGj$byAx^7mgZ4f)8a2la}4h1iI2O z7(Fn&lEP}pu+k^RX~VKtOi6y&2$}%HY#8MTGh8PTNu}`%@{b_#)F`et(8$IQG+?X( zhBf{!c}`_C%dD`>X_mW>yl<@Sbd*;L`@Cka+nq7Fskfc&C<`pN?M_kf$AkE86MV9w z?G;nDJ0<+^R9V3N^|bOfS(B&`2#-0K=q*w5*nP7Ahh>ZPIV8M=z>JNp_<^tb3T#VG zNFgSk*$@|xiiigEXE8PFX_P`;g$x9RhXfCSaJ4}}`hHN<H0;(a&k>xfeH^gAMsC8Q zM|0LJ*Gf6<a-ASQS0g7DBjS3;$5oMQ<f!?&Rp4Vxzp=32Hqnnw`3?_$wW;et0XC#8 zK^s0#2!{oU^_@T?JfFbbyTJ4Y5P;EcM1liOgjGw<NJ7P6x5`lX;r>v*n7VS%t>EMz zoOl8#Sm8xN;U-N%N9N6P6PDa)2;pDM@|?kciQvC9h<{5He6phQw@Nu(@G|`J)NOL# zlIVd8T3hu;Ut(yv*Qdve%5U1y+T#fZnrM76+dR)eW3QWiED&+tM_Ga{xLpW`6^Zqo zL@8b_g^c4n@XJ%Lkb8TqzApuvxmPx%6U|Y4l6n<WJx4Nl>P}?AKd(lDCrP;4pe8dv zsDaeZmTu=XRd;FPuNC62)5M<&A()IR$d1UmSgGXm>GEJ6ivtn$dO*QYZxDuW)C_g3 zyoopQsY3#--i*5hUN)H&%hYa-;&v$U4y<)IfWq9!W)Sb;jYZTwC<d>$Ao0|_xWaOJ zDb<WnTO;(zTcsrITRam&K7Dc@Q^wfa@B<G)1l%-#mXNxiK+zm|1>@!c0S?oS^_@b( z4-%N?OuYj?JoQe2#mkP&hFtHG`!Fs(ImdFKzniI!6(fdv53&#|??r;=9=O_AAqO2R zm{02lFh0XKm3qG|j?dKg7jLN#NVe$yLHzX8hj674*~GQB7W~k*VTX+#BaX@5(W>=f zp&3>));EtjenbjcwLU5We9Q>IHynZj&|V*JNGO`4=%n=!)9wUE9#(So3FN_G4<o?? z6kM&r$Szp9<^yYowN#I4vY!;PpVDL#J4FJqM7i}AV+P-+h1O>bEiPKLwr(w|CaoL4 z(ZFs+#<{%N!FKMmLciV_tu)~0q>#?|ya@9JBa9x)X<_JyFE%6+%~1u?d5ozZ%MnR^ z3HNZqmyvktE4W%GkWJ7D%K}dD+iSl4x+B`EuWB}56E<JhY!bUf5>BE{RVRHzXn)ht zULsE7nRrdSB!_@kKb>V%YTN^TONiEcW&thwZ7HN@z9SMmZX}R3x>h3rUGv?BRPdMw z`6To`rg}&vSnB)8fNy?)1fSHx)%u2vg1(70@l8`5)sHmk9}DT9Xwr$DCIcT(_^J<n zD)fG4=v^c}z<bcf2(}If!>6XfQrnNF#t!<qaIAMw8}0fFDWrpbDdPRgh-ca{Up)Hg z*9{3pb5xA9e#6wXV+K+E7I|>f?~r)v30$q4$S&xn)lJ;=6l|b=ubKWqm_DhQCUzqO zxRyFsUHeDj^e4mVOmVGzv%XRNvSaMaP{BGE@Q_SZ?%F6zRQij8jmCL@7TWbr?4aTQ zB87C~Uqz7rF@or~53C?`;olmP!E+<zlhWUr>Zhq1P5lEoaNs|Y;1Ln7)`4Udbl}29 z4&1)3>ff5de}us#tS*B=;wch?W2lKZCTB);`++1LNNK`)M0WshayvAVn+(vL8Lv$d zN>eo@X%Kk8Xpgf7XFO%__J5~y###DT7Y^;?hH^f_!I`5tLSVQ}hIG>eIqb%0jzZG@ z)0whYoq->oiU@d1VgYQsGrZJH(uw9Mad6akpwJ7mkM(tt_bdW;?>w*Bz(a%_gapr8 zghNZt2tYLuBoZe%e=wKR<2P>Ho*9_1sY3)>^q(Wt4%O5Wx<<+OrYEdXQkPJtP_t@l zlsXKQU=W#~1y%uCgh9PQ7SSM4DP*-e9KSqugxuRr4^|pht0Nnd!K)p}C#9p9>T0FY z)X~U+(T+iaPx0Vts}))8c(rP-@Nt^K@xs8-47O9Pni7NIsEMvtW>S2D5T2_E>uPnP z+=Pv3j1DWD#By6LPZs=Bg7~LO`GnPyTxrmGNNu&8kKg!643W`tu%F(Usv_0$G(oPH zoI;Y_0;a5%G5qjUn}9!sYS~UY(HtcXR?7~d7iJ&pTSDHQ1bzzDvI}^Ku!TtQI*M>; z$r%BtM$>93iY^wkB^oU;Dm@woE4D9j>~KXUR+6hbFn)lsaH_wefe}e0Cg(8kXfp}( zh?4`Abg4*DZ=P<Nr&|hHNtcPpJw{}G21P(**3;7)Qi|rNEs34MRG&fNW2!Te2}7QR z#8YSEYO5+42CM1@_JDiLFzOsFN3Y1ST+5NzvpnGpnx;C?Ss~0<8s>gj*tW1%d&%8% zVX;c2s1J+N>B)1YkYTY}L_W`m?1zOFnPIV}A*E=J+LGA$O#QGhEqEU?5f&F9@zh#e zZCH@u#9^^J4Ws(C9P31m3$+{#!eV#wL|D)?5*B=7uKVrUU#H8ipX&2;cJ@=`)hqQ3 zjf;$_WqEs2t(P1O6a4p<<FiZKN?0r##HX<NGO@Y{AoSG$Qa*Z%Ps!t>R{6gD^fFw0 zYN=SklQq2ae9A_=KpdZ($9Jdu4vA0Z0(^Y(n*MXwsW{o-P3A-F3!N8}DBJZ*@B@$a zgtmDL>r%N1hgURnC?jG65xWy3sPPvT@hT8rH+9O{GOjq`3Xkc)8z)#5@pLW2^<BFw zNI=>m13cND>+aZ^gpEB#h1ZJk*0obkZ!J4R=~R-Nj<RJOua9qw3xzgy88{-`E=Piw zvqUz%*@B|$a64O?^voRSvq``Pt6=t(*PONE6;f8U;{g-eagMR$lvV53uUoH@<QX*N z5HiG&Dg5x%un;$fOv_E3A#;?Gwj5#Foj4q}j2F^d`CKxM9aFGlp)6l0Yg3~Df$|w7 zp335C>l)eBDW4OtE306c4Z64WmCs9ARr!g7XpL4rXTxWW4WBWP5v>ctvFLL|oQ@k7 z498P9(zvH><PtH3qt-6dy&6FZ9AU%~5<Dxz)f$n~*BP-QV4JI8bw=DGWmO|i96{$B zBihjMjkpzL#E9F3<1>AZFygZei?9(X9F2Gt(}_dJ0|>N!HWE)g2Un{#+0|)%wSZky z1<TwK3Y}}Etg7|Ip>tU%bS|@@a~;Tt*3T7=*ZUly_45piu+|igT0fuZUJacaz!65g z5eXi};cAUY>FbR6LIHbG6|ByPH%VF5h!cm-<)P5=jd(N2h!I~b9ADydgb`nAScHv8 z;b_ELm`)rzw*mxOzYGbU;NfbuCc8SVZx^taSHbGEzC+5YT2CB0g;3}eZ0NiKWJK#% z3ddLZ9HI4{hDBIw3P-J9&2+DZ&TGICM!XA&r(TPzH6o?2Gvez6?DbW!IwQV8%Bn`3 zICP4k(D9A<MvxIBzDYQ~+2;r&-fdWfjY#2W#Cw=d96E0S2(-Qz37+HOYPBZ2I<4;$ zu(wsg>a>2llvTB!ICQQFh0ZlLbnXWk(fR@5_@K`bTED}v2y0E@sP#LU?$ywF7dXO* z??&RO_uy)cNa^d0_+9~fUlpv*i0_xOsu3p+oohp(;~Vh<AR|Wnpm6+<&k;uauwfB4 zB88(7Kf-k4(D^7pp!LU);L#zjR%^1W)A}I+`$QG2PV0xIY)7@eJ*4$*Hgp~V8PWPt z;rL0PBeedMVG-7v!cpr_Go4uL&j18ke-;T2-Ne;uO?Gu!e_p`8Pz9^g`ioLl)q3Iz z^FXM=JYcnc3}i&>FA2vl`y8S5R}71=))bCff0gN8tuS8$M;P(zNIdloT&)o)eVq}% zDPZ5Kg4G%E+fr6F;=~o^!BFV<M*I%Qh!Gzbj^Fh;!ie89EW$>la5UognNA!!KL7}{ z{vi^)?}e+?n(XSd{;`1lqzYE2^-ra&s`bR7^GGOk9<ibGGmsIje=Zz<;d6x6zcehu zT2nY`{VS$>HFSOrjxgeHka+61xLPAp`Z^>2PQae1g4G%E_fl3h;>4lzXee}iBmMzo z#E4G{$3OZUVZ=Wf7GWb&I2!TKOeYSVzW@YU{}l;dtHRZ4O?Gu!|4qRDUInYu`X5rZ zqgp>6()v3#bp8o4qV>Oo<G+25(E2}yMObSJN3AE}gy8LHy&piJ_5MgabpWnbYqG1; zda{5`se;vMJyptfRO=^0TK~anJq=_;>*>OAhR+dNM+}Rw))bCf&ty8WuMY$Ww4Q~; zQ?qfkT9aL!)&~jL!2z((VbfP=E_jF(R~4VIrC58&ezi>nGOX%zKuA<SRM;NovxVv{ zhDlg;N=VhCO!sPAaX2`_l1CuHqc2>oB`JNKC65xYqXS?KEP0F+S1mbVbFp@gwPcb3 zn~4Q1c`OKtC65!f$NOwyNyjh=Tapsek|!{oIEdx~1gf8i#8W5XYE>t@I@M1Wuu}qH zbN2@ed9>lLMV%_eRn;dBqIRo#+^F8}2hltb64mDm+g6_~R6ory39C*Csrmw@do_q+ z;0Q~$A@Ni@uGW&2zRr>z0@fJ-YhcMPDXv;_;vnj<mb5`swd6t&5=$-;wu^nXu;dcM zBy34aNJ}ndI&lzn0|crsLxLmRaJ8zFU7hNu3)mR}unqM=bfy$nRi8MB)>+kU5Uulr z=qwNt)z22T=lE=)daq#;R-F=3_2o?WY7ngeM_6(t5>Ktd)moC$*IDvh0b3maYhcOq zq_}FyiG%1uYe^eKRZFe`A+hB7!nV(63rk*Ln1n4!32Di-OeYSaet<yrbx81T6s}fv zva3`583MLG09HN2+i!_3lH#iB69-Yzs&0d*=m*gN2#M-(VSBO97OG!jn1ofQgjAi! z*zMgQx)dB?$qh(6bs4VKl9ayAl9vnE#sF9YOKy_lswF25qH$|U8$?x04uX(a@(N*_ z^x49aLxxG%l9Z5^Ofj7}h=u_I)ze5kHG->Eo$P|Dr{l9z6{YY*W>7z8Q=@?Bk4J{n z_&|z0rBNBlnUk!PizCHi84u9YgR-SWWl_?%Uwj(B$&wu|sT}S-btSIzGE;N>h)`x) zZWEK~xl@?T$lRHUWHx1H<{smy>%dHFW>$`85?82L9*CKvl02C+KC_JX=t_9LhF7oD z7z+C1vwZF<JyKEyVOGR7J{=j9p`^wo(`DwtrEOzF#r&YfDk+6*d?lHMhty~z^vY6N zVd-HZ)IkB*EC5>wFe8=KkFZK=tK@FOm4m+cf!3USRH&Yb?Ed&1Ul;q-v!tFSXjkD% z>G`q<^z;OLdUn{@_u06IeQ`{4)$}Fx96`OBsI#mbTEc6PhZE&kaxk8=;fv&{@*uV$ zj^aDp>N-JtE(@pQ!`pmLSyI>IHgIMt-rmNSwhP0Ni<9{Z&f8VbLwQj>A6J|lN7(or zYtO-<Wa>(2d1Xo6h!V(oDEQ%-=iqR995m8}6b?>MFF;v;{6IC50zxT0SW$WPLgdAd z&XmjJJ?-uC+0eFZx;)ZWRHN;g@>srIy@(JqV7FA7Y}8Gf!|d_&I90{#csTW;q;3}C zv+=59c6<=$1C1e&OX|gvJF8qIODp3`kSQlp#%JY|h0zM0Jp%*JbYF^s`2OjFx`jVx z4D*PFauQ$HxK+p;sJ$~NPo>q%kk<z<L&p*<s4K{A0vO38^LXim53kkj1e+3{WdzIP zR7ptta>8X6_s5TcuZwCBIu!AQcyv(T;tT1+dHlQsVDW<~c?pOa@Xx~x>J`kMGMpZ& zjH*|XQvBfb7*2UXtZd7tOBsB@UA+qVH^z_EXUa6Ae<uk|rD&<LdNprml@KU}%Glsm zRyg$<<iVW>4Ohm-2mRPBsk@MmYKSwLvxSkO0e-Cpp1mch3e*L3(>Q7BbpqQ$fAKgs zx_uCj{h<m1{q-n}Pe)no<c>wd>J7X-B)v6@MhMlaQZiP2BS}w*PsNw1MzW*oO+r$f zjj-OFEoI9^rQR&LEvbAldF5bwESb#@CWnXd9xN?>Hwtfv9}88-{C1!kKZB)l8ulIl z-55V0UD&MNBE+=f<E3<E7+Q|y)xDB^FrHx-5yA2?`a&{aQg4;~IkX<WW-prnj8*Ov znlp8qig#NISE{!O@N8CuKm@;Cat{i5Ox=&{_>@X{B-X7S;O~eb#p?5*rX*iZ^PQ~T zL9iKu5-Y)6@8tbKgE%6Ehh`(z#fa|`+!<(M#vw&^t9m!VSl5z6gL1I6dJl5?rpIU3 z2B~^40jI<V&V@+t<L_y<%XmNU*0$q(7FB9bDtGbL_LVrdTPkDwMY4Tk1!`KmTgets z_uBF5;Q+rC+>S^pwL>s8Ipuc$JiRuB82SKd9)yOAdnZ`6;i|IwAaZYr&)_*n=$zpF z4<VyJK3gKS>X#2o?tu(Gzs>mw2_A3SoGn|nw2g1WE7JvObB5EK+W}l^S05$RF}0Qr zRnLzBBq!BoHrwUFswqEC<o&b5>LLD^4ef#<@d;$!7(ZG!3F&-V%mb5`GlMD9Ks*c( zR50T!sW>I|2r@Uuqf(2q1=yGeAHePO>acngrKqbjRdS1;_eq^MORVBI^`9c~%22!| z+_~w#{L@656hDCd_-F9jQ=i3kp7h%}PRgV|mv5d)=be+;{-(?Z>EQL3Sz9wlNpFr# zDR*Y>sKn=>R-l<I;|O<%tb6Fs3GL70ijNqyap%t$$Ok)r8gEpo#AnzZr=-3JP`u8A VYkVrh7qWf{H=g=3u9cy-{|DNU=CuF- diff --git a/docs/_build/doctrees/content/pairToPair.doctree b/docs/_build/doctrees/content/pairToPair.doctree deleted file mode 100644 index d1b3945f4f1ce87f3bd73797d8fa3dbb0e2b9389..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20533 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 b0O+`!h4-iCe2PrW7Y;xLYvK5>=d=F@D9ZqX diff --git a/docs/_build/doctrees/content/quick-start.doctree b/docs/_build/doctrees/content/quick-start.doctree deleted file mode 100644 index d00a93bfef665e6d4770c3f179bd8b51fe87bf29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9397 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 DDP2Z| diff --git a/docs/_build/doctrees/content/shuffleBed.doctree b/docs/_build/doctrees/content/shuffleBed.doctree deleted file mode 100644 index 1bdfc48c6853b7cae0e5da71339b2097581bfec6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25403 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 diff --git a/docs/_build/doctrees/content/slopBed.doctree b/docs/_build/doctrees/content/slopBed.doctree deleted file mode 100644 index 5dc021dd1670735850cf3f5f0591fddd10ee8768..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16258 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 diff --git a/docs/_build/doctrees/content/sortBed.doctree b/docs/_build/doctrees/content/sortBed.doctree deleted file mode 100644 index 93f3442d6dc2e2f04c5faca49ea8231f4e5a6d5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14950 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 diff --git a/docs/_build/doctrees/content/subtractBed.doctree b/docs/_build/doctrees/content/subtractBed.doctree deleted file mode 100644 index cf0171b0c6d0d876621e1a8f55b1c3520851afb3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13559 zcmeHO2Yehy)wgA<oh{jx+!D9NDV7!A$t5O^(`?69Vw6b1_6Cul9D8?r+CAUh-puY= zlF5V^2*mVILrZ`_=%GU(gcfQjfzU#)p@b43^n~(%Z_AzT&ie9$knj6`a6kRF%)EK! z|K7~JnH^o(lFd0;-?NKus_f)UH$kr@v+O0r?Da=PixPAC^v<$TGQFva>592ZwDyfI zoi%IL*3@aK&05aP8-CH#GNxr5vK=YfhDR3!wVLZ^JZWUTjF}Vd!=pRHMq9MLWPZIg zg>Or{Jgym9$u8R^qo_HDOj$H4TAo_jP8nSDjx=LNpcWm&qiaJ(r-G5Y-YkPAON`dK z5LeEbxw7fHYenbq=<1Miljgg|xT&F5b1KZ*^-Co~PKm^@uP=h8u4j9|!6~O<k}KvZ zF<<Yl7}7P<C9p$lS9Fbu?!J1!+$q;HOA%2*EC6f^l~@GWq%q+-zRa4UN1vs)fg6Ao zy$u{pwl*Oaqv;YQmiAeow|XslU#7(J=)Fa63;7*a&qJCO>6h&+e3%f&kB-3b0o^sF zJ77q$b#h>L=vH@NKWlU@2nXPSa?vOc?Ao*Yfa4V10XW|s$U0>YdJaVH+hyib()GlO ztB#13O03H0?Vd4CAt6@l?QWpFSfeKl&y#k>_kfh9#3TCjj+|d1I#;Y6)7!H}!*%g| z!kFHXF|r3G;e6tlKF7|v;-oQgvOX^oNfEQo&|8DXePd$1)o%Fu+@f7JMgPzoa1QMe zr&uj|N7k~7Ie;rRjEQ7}hv3;FP)PyJ0VOs9&4v(#jbalJUuGR=t+ZC_t=vXzwqVGX zK5Olmb;6i+;+S>PnAJDtTTsD*U<=|-t@p$Ma}u3rYf}-A1caw4u?;F%ByPaZ7=EUn z1LDLOmqx`(h|{6-b|ubWooCOQ)!!dM1daRqHP<v`)-qiUeL%~bhUZJX*kx^(=2?ap z_o$sIZEqgo9~D%nzl8LfP0f9D4QjUm4b4Q@6Pc{yNbWHplV%AuIdo8`r0wMH1ZpZa z(1pP=qIL49<_1)P0Ale~i4YXYa5bZdt`F^Mt9P;<U=k@gVS}pd&`1M$A=es@b;hWP zGs$abHS^ls$ZKae1PR6tr#zkz=K%2?O6-iHqz-Xny{nORueF_m;aqF$=sa}28YhX} z@cAAk2EmX!^$z$P5!Mz66zBOFG@1q9{---roDZb-D)A_S{=b0aQi$&De#S(AEa9nO zNQn!gC<+HEYYheDh0_934C@QSX*n5B%OeH`E^(37X3*%hBI*Z^?z3oE+^58TLcKb# z@2;QM4?vrtV05&2Sk$Kp4Tr^;@x=)08Mr+Lt{zq5u@Gtz=Y2d7S~T2UqQs@7O9K69 z&>qKtwmq?ZdyRDN-j8c0ePv|U7^JsX+l$K}F0I7liEm9gm|oI!1TNa1DUD(}Q*^Qi z6T*O686~pR{BE#4*TVScxK7E`v@8C_Um}6oR~y`W!5$2DwZHz_Ut>ks&Mul5>!aUg z;V*ixxkpvFCldQimy)(-zq6uW6>+_58Xh7?F=rybnJg8zyA=cZO<wP)VCFI9AybUg zEQz@?m^6dwa&_bx3!eFpfl%0pyMhu25jZ^dXR2XdRH8)jM9K0XCU0}nC{>D0W4+ug z)=!QQb%5ynIwqn5!9od166!1A*kYgu#kH%1M^u-CMHU&u&J>cbMAnj<G;PzyjheQ3 z<Hq<E0ke5yB0+S!YUn_vX<K5lZFt{;R*9NvP)iyCYb}|X)|O>#+P1M8ZWhOv-)H5m zW}(y<8GZ<c|8Hw8CIIxL5>t_fVKOp08nY>RKdi(PqMB(V_T|%DDwKYDJ{hlwl14II z5hcSsEE%ncFrd?lC>bG3E21lSXn&&B!9)A@2%am0q5X&wPa^;Bf`4hrwngLR*S>#p z`SoP@>2U2d@RVtmgwsH*#8vRoLnQgBK>BG)Tn%F^(&9+9FCA6l>15+ZWKjn!q@Cd! zk7qyR!<3`CSchmv@SMy?6qGjGSngn%m-UcRBTp@Z94xYiYi@{Fo~Y6|19i&9sW`4{ z5^B_X7Di$_ui2iKCBGrD^|YdCxE?DIxsX!bowRPoS|+DurnF?fE;)}A@(l^Brifq8 zffbbemP|9?76wMVR1VT*N800d87t{(-dvM}vyKip#?j-HQ{ovl9_6X^naw<UMif@h zf=B<0^FM*}vk||~QR2B2zl8bGYW!ZK#PcYAo6iMNcVp)~znOE+iJbF-W^=&{A^1f~ zyqF|3nG3F|&IQ*h@e-oCZl<}QVf4q~{b0s>#JRRHwJDw@Xl_B%|6!I0T7hi(j8qe| zJX^f<ShK~>2%47xn*aNDiI>A!uTbJTxPdc<Yp2a8*DLYLsAk%H@~UZJAzrO7ca!nP zSh99sOx(cJ#cQlio-X!9_`EilE^bufbrb??!|5W}W7~7AJ+{}w5!csF2XC0BNH`tD zLf!}`JV?%O0uXOj;w@0dA}KdkyUR^Vyp?pk6*@ks;Xa-a>W6!60vkt|8?r{3w=bx^ zaTg`wT8>}DSY6$TjQ2oN+J4jI@jYj|S>JVO+Y<XIH09JzELhwJTbd*yXL<(hxQe&c zz{lPD?akoZANlAVfbajm(eH$3-=)O6$+HB&O;Lzb*2LRy!K(H>)36Zl)tB=oZW5cg z$zXy<8We2e-pn!mJ}bd7JukxR{XtCMqQnO%UaGsn`muI{Z-qWfYUBBX)07C~ITr9C zIOIWa{V**4h!P(qi%G&Q)mXkwiI0(Porq=DDqQSFN^n$syqOa7BP%}vCEDWV;*${e zDJ4ElT&u;9dRrislK$J3_zcybhGtPRKq=0pBNrXmJ2Jd~jMDWpu`nGtZ*Xwn;&TVj zrnG%pK@Ctm0)O^cBXD=5=jWj3zaUV29){ha#227A4~@68J@uQXo{^!=-Y>$+JC*oS zL>%IYja{l2U#2DOSDL^&9BKR22FByk@hb`OHE_O5iLVEo!R8x%bqij7ZWf#ALoGfq zx|6mAzuB<cNCXu#n-Jduw{I))otWEq8@P3Vc*4$k*3b&#co#Tg|FAt|A-;!RLtMVE z#1CRFKb(Qf9aSzC8aLQ!nMN)legu|xEAiu)<xd*X3X~B)t!E*fiG=tW7~G@8&tnF^ zXvW}f!snL__~844oJxpafycc{{5t0Gn`S)jAs)Zw&7=F2_#KEj@JIMVkN7<>yEp98 z+?)Q;$fJK~5%KtA*ptGRe?q|hS&6@Zp+#Ko<A9^h+g8?3+z;qU#Rru5Ypmkm8rk<+ ztm5BEMM*oGO3ucW6s6tb-KLwBHft+eP!3TK)F>?HFm2;E2+~>3r3S&Sb1k1%6kl~j zw&A8^J2U7h1k4MhL1c;r8%$U<2R@S>K?NCz`OC=3PA;f-ua|LhQwf<sCG44po09W! zjUbR+{8F!Q5G}HsD-j)X0k>RO+j3F!mIV?**7k5cFqge}QgSiB(|DjMxrARD#1=>n zHC{@0a=|h@D7l=;gIMYBPv-mk<#9yOTOi)G4mh4E>lybC^%B<=M2xQnawQ&=T*b6K z1!e`MRyS?iTOb{%`5L-!9c@7zV3n`o4Q_h`Zc47jHNdpDK+NGYYqf<B2H0Vsr!f5F z2~2%rObw|g@k_nNy)hIgqn@Ey$8Gz9wxj1miwo&vtY3=06yakFeW=CcfW<RD(L|qS zX%(B&qHSWVGB@o>p04%TDKn*Q%2d{;<a(0PTOjRf!R%*Q^{Rzno<hW1A6h*&fG03b z;-+MZrS}v<<;eV6Jkb>jK`*c<LI=1FEqCMC-o!8U>i5PGx|!=KLbq_^Q)?S<Jw{`a zL&5M!x>JOnh6g3LF?k%JE+X`FqUbFU?^;l|GiAM2{X>h1>ls8$5qc&blst=RdkV}7 zv2u3Pw!H<?ftsH~_b@_TxdU%Nb0=;}?!q;SP-1?p2tAjncgNI_x`$utHSR4$Pz<7; zp*WA*o*%RwJ&Xt)#P@!r;x!-pQ`!Og+G)ERG;FKnIQz~P9ei!}qI{k|Zbm`vVuJ*E zdb}?b@JeY~|E{U%NCWMtAgu9+%$|~lTz^XLC9Qf3WKS*pk7DiWjS1l&;>xX~m;QTI zmlr?|JaZv#N)EHoo`1JcU_t(A%p%NE#WGymO~?_{Bla$0wH_U+MM?9_Skr*MkE!cn z4Mb98?ngZ$b0wI~<TrT$bU;SOP05RyDW{MHQi@|%?}!wZkKr<~#eG%^&FDeN$Kr}m z4@zURv1AEH;_Apj(`hTuk@6DeMFnjhr;qYdE(y1YgR=(R(@&7d$AN^bA7hC)Ini1) z51GZG*+H5aodLl)1)NFf8w*ZF40Y*q>4c6xckl4vh`fx%;6q<mn9j;HF{P2^@pw?u zVBX=pnc<fPn5~6`ah4ix9nAxbiySO((GfI09HHUF0FLWm7ZW|jaWpKFC3+i{x74ke zB$YTIaVCKd24E8t^M@mI*q)SAnukLYSWjmS-^DuFTjy$S$RQ<jkO<gK+?33-Zh^N* z^#JcPaYOEfqc(D!$*d|_w0<i@INDrS#c|GzICh6Pw(i-tZ)Be=kjz>j52Ap9EaE}Q z5;G5hEb~hPkOk6_uyp9Yb#xi9)XU~1763RJfq^N9bP_OOH&#|a0^<d4N=jU#;g!TS z81FKfS0#%+(Z<I6Tvs)I<{(-X7+;9OXH^tFhroudo?wZSu|!SDsZhl9BQm`OQjV-X zO!tR1f}Q}00P%9%lvKDzAd>bCAYQ>_PppzPfOsX>RY9CNf>wthMxhgfcm!-1#3!-D zC&v;2;!{Eq^&paR1mab6pE-1%3KCfTG~ATD8rR5b64zk$Q6_tOm8`+)XK-EB>X}1l zU0vv`i$dp_V8d2FizPlgmI$k#6N;#}nv^4}pG)_LHFU0lM1c4_+?0Git`Uf&eFKOu zV6qoh$r?a>5!Y2goH=y*>Ov<5@x@@nAYRK7UlL0Mh%XIA)PqRM5r{9N`^=&9a*)94 zSKy}Pb+|@Wleh+}uV=DXR>`6-g7K*HDz2+qJ#*;ns0*DPQRuuHY}o1>SmJA9iLm;$ zp@@2`Njb9mM!G+&q4PRO1c<N4P02Ul8i7dKH-Pv?CVNwrtO3L~b6pk0nL}r1UFgIh zz6ER;#G6>+TVsg;@ok}qdJsuD0`cv1pE-2i0TNjKPTZ7y7p{@jB(BzKQ}53Dl1{*; zgF~$H-JlrO6FD>MNS^-Wd$^>>@I5E*I3B)unrYWFq$l5tnxWZxJDmu{c~N;Y-j#eG zu6<UUHDa|}>#Ppz3ait)!Ae*+`=tH*QEM$TXuD9KN2>)F*-6Qi@)lGK>s_%3I*BSj zz#MPIRqsFnA3c>H<iZb8;X-$+lyQpbsFf=}jN&o*5vp7?O=afyQLep>Y8TfvO*6sA znBe0?(3!P^1i+P_;L=axO1(gzA7Ms`mi!cohxMM=mgv;6D?iQ6ZpW3h=i`x5eul|A z>|6-qXYmdYyK0qn<>$ER=c#E|q(`9P9Vk=s3skcZSqgRmvR)eQ7&kpvevzBqNtGS0 z=~0&F$}i!yW-|}xMCmMXE^)C@^l`Xcei`+S{0gp0ewAqTo(Ru0oe74O2VMC!)IiT( z$V0}61KAbuFw0rnbmd*B8`kH`d=?FGINO&+`E``(D=g2eY#$gvE{abpw&~?ljvODb zyi##MeuF4Ffm_z(qsQM2By?BI3YlsmEVE$#EoR=0<)B?jXPpuqgm>k)xwOl3NMxkr zcTi~EkE2mWdECe8aF8P%{w_-O7PBnBM-QDj1BanK9PE+bXCCtd*Q7b2mp?$+5L^rc zar(R*bb%i-VZt(sUP$&MB5T#VLal;R)behkvo;UwD-qC+Ov3;N$@O?Tc(w4Aq=?5K zgG^sYYP)D?L4FY!$e&PgYtGF0<MOA(NndD|aPS9#GF3EP3&#xP&rp6;Uxfn$72i7+ z|9glLon^JNp8PqzbkUctvR_J1Qg4&LKpA|wAm^7V={Rs*`Ad|e58@oRjgN~V@vj2n z?g>NE_c&;S^+QSC%d|_#S$TY~BcG>n<{qZt<i@X2iPL9hC3(`uQ*-h+^t#BLv@y(} zPx)?$;%|v{tKNpw?Rk4#-p4H2(}?LqwrhKil)vNBCD=MJ4yNf)b1`k?aIl=tt;^q| z@@jn*OfAKOKs9*Md=O6l0YpdjIcE8g{3A0946nGRpM#a9qWlvVFGTu}{fRVxBgBaf zSN@sHdk8)HBtvJ`Lsb64Jm&?YW}3Q)yq}4?sTb6Q?*m-Apw46RuPD}AeJ`KfCjUmy ziI5fboxca1>~gJ><t*$+>Ydyq=>o3V^u8b+?t~!L8N?Qp4(pv5UvT&@Z%@iOL`EIW z$fWs`g`A6$p$@%!dXUOiB5c(U3__(gdTx&<g?4%yd5HgaL3R+=1sJzz;YmFkrxrcg ziPEd}&T$h%t3m!xpkP?<=2)$IW*(Q$r|^r1ocY9XO*rICOiZLIQ=Wwd91S@+^Uwf@ z-2vG}R4b=rTh~FmK~mt3(@n#2x(en3YTRPy<U)GrMo*~?ibW_qs;>wJ1+!@KPzBIE zD;@r$h3o+dx>)Ef?mDjQMd6sfl>3og#)(b-pBJ;tJ6v)xYSCNg;XhZ<<Abs#L0K20 z5|8vtiMgNAm(<T~!F;`p8qMPW?U2jytmJXH_F;xTjG1~FX6fs#o3T_Mv4(uT2LWIG z|C?auJ)Rq_z!f{)r_g@LN@jr7H6Jgn-v;sZ&S)la<tmVl$<?^(Z4{YE7}nrLNex#& GllliS#HZ;1 diff --git a/docs/_build/doctrees/content/unionBedGraphs.doctree b/docs/_build/doctrees/content/unionBedGraphs.doctree deleted file mode 100644 index b1b7d76d9566afdd3f5ac938b668ce1755dfa751..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23126 zcmeHv37i~7^?%5@JIQWBV1{snGz7?IlbJn2HU}bv5FjjWLb463xURD^z1uUHotdug z$!38<P(ctCITTbp@IpmJL=;a{yirjR#S;~8R8&Oq<oA8As(X66CkrT_{Qdua?B}yx zJyoyX@vT?ybys)Sg)?*cO0MP=N^YiH$y;uMeok0rFX8OB@*-!ZbY^v!t>x^5<xN#B z*O@JyIUPd>%$PA_ZKijPQ7acJ<xwj?F0xhIb><EX_3Ea~I-}-VhTmq46-t(COcp%b zC|AnqGK7di&e)wT)hsvT%o`Y5=J)JD&+NEmWXpM@QuQFgaBCA2Suy3b3=AFblO1bh z^LZm{*j6@g38PdfTZ(_K=6aP0mS~XXuHjV-&$f(8&8yZtr*&ZHAfHLEk+;UOwUP%- z?d<MCML3Cpp|s!J$3|og&62e>#wx;?D7bE+JRayje_&{f-)XH;DCbJGyk!V$9NI&^ zo%IZ`w~TWwQ899r-IgE=3uPl)Dn&rbI12`bj`5kTX<}ugIc)<qbAPus>UsqaBUver zz$Djcm(D`7y_yxSH3AF>QP){C?CjqW9ddWd^{fe>DB&!|z#kx;12OO-JLy(xB4;^C zbA~w=+~68cD#pRek>G@L5V|gr&cPiv=<Sp})10gO9}?{&tg3+f<luD)=g^@YFu2Qf zE#Y=$g|l`~*U8!u-L9Ri!DbM4IkiH$lr49iwB_W%N~Pp>!Cl?1T&3(muP*k+ldSxy z?2Q@Wdd^`NU*s&6&f%lxJTE&=-ry`V=ebH>$1oFF&l82wng?)>kj{}EW=p<SWv_9T z51aFHrL60s?Wke1Wi*@HB?#K1hs{}qyz3k@?5r@`BXgi5YtB*qR}MR!_S|gEoK3#z ztm>Zy=GrP}HLz*P*@aRbkUHsMClebNjAsehbOF<D>GS~8$ixdwb$WsI68jK)slCjc z!~L8!HtadJ!(KjYA2n<rJ!~H{Y_A-y*-*oVa2q1mM#p5(+JlMTw^uRifaZGXY=9~@ ziR`Y8W^1ESF7T2p2ZV&P5xO5IooA5lw_=1lI~&KSvlEkHVifSW#sp?zp<1#G4DP8r zHf=vm$BaT5{+=~xx}lNc2*N?mR+FlNNuSG>jeJ31OiNP<up=+6&#?{;Bbffe@L*nA zMI6N<>l))$xx%4srIF2viW}0y%}zj_5VEa-WzO-0?lYUAJKIP1gxG+(o~V?^6V8c1 zWs`JHB2*SPMTNL;j&o1h$I-Z*Z1)YdqhBMI&K8W$DbhI=Y<co+!sx&s<|?tyX|+-G zy8-?F>oIq>!j#jc(@zNff1xqF<ha_X1&ApGo*|uQ`J<qxrESod4m6CZv&~$>sV)s4 zO{-Lw_EX*VET*e-rrnaIIh*jkYDb4n0b!?f1__){(lqy$G)*XXh6)ZgM}@N*w9ru@ zkZ?A<<cY8y!WcbUI?sU`Hi_8D!N8^|e~xsXOWL)<*;uWOiH#dWTJY={Zl=Y2-_GYj zi@8B}X9U8YFP$uLtyhEPIZZ=Qso){QmPSTPmE5j`GYXw@(#ccrb+L(KoU?8F;MQ#e zJBN*Q!8m2>8C!bz*vrQ?MkbTtvvS=6v#mjbW6|J_Az|*BC~b7BStQJHv!yC5B(&X@ zV^i=&2v)IJMd3Ez(gG~~50r9>fM%C;N-&P6eXc1YUUrm{$pnxnOQ+%!YrjC!pmwK9 zb~sH2X2920M5DboE-JNZ!g0ablTJ->2Aka-5v$GFIi&3VnKj^8rZ_eki;zT6wQ>n( z54cT9=iGqXc`<G+Af7DbJ-h!<;^=`RqTM{r!Z{yvk+?|dTo7=1!8Ba%u5+=`Ic6ta zXC|Br!SW*Myf9$-qBvSg8Rx}O7NRnla4rUeOQiFXfWf8B7+gg7To%IzS2<!T;k*<) zE|<>B0v<1K#^Vy=@d}=hS4iiTAm*vFjW4O4D}mYNIx6sdyeiIPRsSO5akZX{y5}`; zxK~N%)nI57mn+!eDAmki{hVt7J*jw|bY2sv_}V!8l+7x>j#a!~I<F@c=VN}JY`Hm6 zP<p-r60QsD`NlXSt>>GdXSDkbQ1;Ezc?&5^tgiQ!wV|a2oo8WGoVTKu^v7jFHt)Qx z$>@((@&Nwru<AzXyd$vcopELK=)bGOrlGz`I`0ms-_wlxMuPag9gNt`(s^G%eM>Xy zn~3`TjM%Nx`2dL7<j&5tx)18?bZ�H-{1XV4Tsa{sV~7hitkQxm`LR1|$16n*AS% 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 diff --git a/docs/_build/doctrees/content/windowBed.doctree b/docs/_build/doctrees/content/windowBed.doctree deleted file mode 100644 index a3ba55b88f36a469cdf7f7120fb55bedd1c0e7cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36219 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 diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle deleted file mode 100644 index 6cb6ba1847d1c398af21e8c3f5d3c4264a504461..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1374542 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�s2fvM$(i3BtjuDdxQUZ6 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	pG;c3Xcyo7PzNNcV@G(EWM+lyw*pf0>%l3{) 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 diff --git a/docs/_build/doctrees/index.doctree b/docs/_build/doctrees/index.doctree deleted file mode 100644 index 0024245b8ff3aacf3153d7b442954d2060d05db0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4596 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 diff --git a/docs/_build/html/.buildinfo b/docs/_build/html/.buildinfo deleted file mode 100644 index 3460d23e..00000000 --- a/docs/_build/html/.buildinfo +++ /dev/null @@ -1,4 +0,0 @@ -# Sphinx build info version 1 -# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 74474c7b4889e5875af2f21f963837f1 -tags: fbb0d17656682115ca4d033fb2f83ba1 diff --git a/docs/_build/html/_images/intersectBed-1.png b/docs/_build/html/_images/intersectBed-1.png deleted file mode 100644 index 97a96cd187eff19720ea844504b9ca6548c946e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10209 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 diff --git a/docs/_build/html/_images/intersectBed-2.png b/docs/_build/html/_images/intersectBed-2.png deleted file mode 100644 index 7083e944f3e274de6c57f130c1329ad20a65eca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10523 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 diff --git a/docs/_build/html/_images/intersectBed-3.png b/docs/_build/html/_images/intersectBed-3.png deleted file mode 100644 index 3dda9a99c96c3f7b549e1b3c47839d2dec83bc89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9274 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 BY!Lte diff --git a/docs/_build/html/_sources/content/advanced-usage.txt b/docs/_build/html/_sources/content/advanced-usage.txt deleted file mode 100644 index 8f706807..00000000 --- a/docs/_build/html/_sources/content/advanced-usage.txt +++ /dev/null @@ -1,92 +0,0 @@ -############### -Advanced usage -############### - - -========================================================================== -7.1 Mask all regions in a genome except for targeted capture regions. -========================================================================== -# Add 500 bp up and downstream of each probe -:: - slopBed -i probes.bed -b 500 > probes.500bp.bed - -# Get a BED file of all regions not covered by the probes (+500 bp up/down) -:: - complementBed -i probes.500bp.bed -g hg18.genome > probes.500bp.complement.bed - -# Create a masked genome where all bases are masked except for the probes +500bp -:: - maskFastaFromBed -in hg18.fa -bed probes.500bp.complement.bed -fo hg18.probecomplement. - masked.fa - - -========================================================================== -7.2 Screening for novel SNPs. -========================================================================== -# Find all SNPs that are not in dbSnp and not in the latest 1000 genomes calls -:: - intersectBed -a snp.calls.bed -b dbSnp.bed -v | intersectBed -a stdin -b 1KG.bed - -v > snp.calls.novel.bed - - - -========================================================================== -7.3 Computing the coverage of features that align entirely within an -interval. -========================================================================== -# By default, coverageBed counts any feature in A that overlaps B by >= 1 bp. If -you want to require that a feature align entirely within B for it to be counted, -you can first use intersectBed with the "-f 1.0" option. -:: - intersectBed -a features.bed -b windows.bed -f 1.0 | coverageBed -a stdin -b - windows.bed > windows.bed.coverage - - -========================================================================== -7.4 Computing the coverage of BAM alignments on exons. -========================================================================== -# One can combine SAMtools with BEDtools to compute coverage directly from the BAM -data by using bamToBed. -:: - bamToBed -i reads.bam | coverageBed -a stdin -b exons.bed > exons.bed.coverage - -# Take it a step further and require that coverage be from properly-paired reads. -:: - samtools view -bf 0x2 reads.bam | bamToBed -i stdin | coverageBed -a stdin -b - exons.bed > exons.bed.proper.coverage - - - -========================================================================== -7.5 Computing coverage separately for each strand. -========================================================================== -# Use grep to only look at forward strand features (i.e. those that end in "+"). -:: - bamToBed -i reads.bam | grep \+$ | coverageBed -a stdin -b genes.bed > - genes.bed.forward.coverage - -# Use grep to only look at reverse strand features (i.e. those that end in "-"). -:: - bamToBed -i reads.bam | grep \-$ | coverageBed -a stdin -b genes.bed > - genes.bed.forward.coverage - - - -========================================================================== -7.6 Find structural variant calls that are private to one sample. -========================================================================== -# : -:: - pairToPair -a sample1.sv.bedpe -b othersamples.sv.bedpe -type neither > - sample1.sv.private.bedpe - - - -================================================================================== -7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome. -================================================================================== -# We'll require that 90% of the inner span of the deletion be overlapped by a -recent ALU. -:: - pairToBed -a deletions.sv.bedpe -b ALUs.recent.bed -type notispan -f 0.80 > - deletions.notALUsinRef.bedpe \ No newline at end of file diff --git a/docs/_build/html/_sources/content/annotateBed.txt b/docs/_build/html/_sources/content/annotateBed.txt deleted file mode 100644 index 9a55b3b8..00000000 --- a/docs/_build/html/_sources/content/annotateBed.txt +++ /dev/null @@ -1,99 +0,0 @@ -############### -5.24 annotateBed -############### -**annotateBed** annotates one BED/VCF/GFF file with the coverage and number of overlaps observed -from multiple other BED/VCF/GFF files. In this way, it allows one to ask to what degree one feature -coincides with multiple other feature types with a single command. - -========================================================================== -5.24.1 Usage and option summary -========================================================================== -Usage: -:: - annotateBed [OPTIONS] -i <BED/GFF/VCF> -files FILE1 FILE2 FILE3 ... FILEn - - -=========================== =============================================================================================================================================================================================================== - Option Description - -=========================== =============================================================================================================================================================================================================== -**-namesr** A list of names (one per file) to describe each file in -i. These names will be printed as a header line. -**-counts** Report the count of features in each file that overlap -i. Default behavior is to report the fraction of -i covered by each file. -**-both** Report the count of features followed by the % coverage for each annotation file. Default is to report solely the fraction of -i covered by each file. -**-s** Force strandedness. That is, only include hits in A that overlap B on the same strand. By default, hits are included without respect to strand. -=========================== =============================================================================================================================================================================================================== - - - - - -========================================================================== -5.24.2 Default behavior - annotate one file with coverage from others. -========================================================================== -By default, the fraction of each feature covered by each annotation file is reported after the complete -feature in the file to be annotated. -:: - cat variants.bed - chr1 100 200 nasty 1 - - chr2 500 1000 ugly 2 + - chr3 1000 5000 big 3 - - - cat genes.bed - chr1 150 200 geneA 1 + - chr1 175 250 geneB 2 + - chr3 0 10000 geneC 3 - - - cat conserve.bed - chr1 0 10000 cons1 1 + - chr2 700 10000 cons2 2 - - chr3 4000 10000 cons3 3 + - - cat known_var.bed - chr1 0 120 known1 - - chr1 150 160 known2 - - chr2 0 10000 known3 + - - annotateBed -i variants.bed -files genes.bed conserv.bed known_var.bed - chr1 100 200 nasty 1 - 0.500000 1.000000 0.300000 - chr2 500 1000 ugly 2 + 0.000000 0.600000 1.000000 - chr3 1000 5000 big 3 - 1.000000 0.250000 0.000000 - - -========================================================================== -5.24.3 Report the count of hits from the annotation files -========================================================================== -Figure: -:: - annotateBed -counts -i variants.bed -files genes.bed conserv.bed known_var.bed - chr1 100 200 nasty 1 - 2 1 2 - chr2 500 1000 ugly 2 + 0 1 1 - chr3 1000 5000 big 3 - 1 1 0 - - - -========================================================================== -5.24.4 Report both the count of hits and the fraction covered from the annotation files -========================================================================== -Figure: -:: - annotateBed -both -i variants.bed -files genes.bed conserv.bed known_var.bed - #chr start end name score +/- cnt1 pct1 cnt2 pct2 cnt3 pct3 - chr1 100 200 nasty 1 - 2 0.500000 1 1.000000 2 0.300000 - chr2 500 1000 ugly 2 + 0 0.000000 1 0.600000 1 1.000000 - chr3 1000 5000 big 3 - 1 1.000000 1 0.250000 0 0.000000 - - - - -========================================================================== -5.24.5 Restrict the reporting to overlaps on the same strand. -========================================================================== -Note: Compare with the result from 5.24.3 -:: - annotateBed -s -i variants.bed -files genes.bed conserv.bed known_var.bed - chr1 100 200 nasty var1 - 0.000000 0.000000 0.000000 - chr2 500 1000 ugly var2 + 0.000000 0.000000 0.000000 - chr3 1000 5000 big var3 - 1.000000 0.000000 0.000000 - - - diff --git a/docs/_build/html/_sources/content/bamToBed.txt b/docs/_build/html/_sources/content/bamToBed.txt deleted file mode 100644 index 8647e920..00000000 --- a/docs/_build/html/_sources/content/bamToBed.txt +++ /dev/null @@ -1,88 +0,0 @@ -############### -5.4 bamToBed -############### - -**bamToBed** is a general purpose tool that will convert sequence alignments in BAM format to either -BED6, BED12 or BEDPE format. This enables one to convert BAM files for use with all of the other -BEDTools. The CIGAR string is used to compute the alignment end coordinate in an "ungapped" -fashion. That is, match ("M"), deletion ("D"), and splice ("N") operations are observed when computing -alignment ends. - -============================================ -5.4.1 Usage and option summary -============================================ -**Usage:** -:: - bamToBed [OPTIONS] -i <BAM> - - -====================== ========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================= -Option Description -====================== ========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================= -**-bedpe** Write BAM alignments in BEDPE format. Only one alignment from paired-end reads will be reported. Specifically, it each mate is aligned to the same chromosome, the BAM alignment reported will be the one where the BAM insert size is greater than zero. When the mate alignments are interchromosomal, the lexicographically lower chromosome will be reported first. Lastly, when an end is unmapped, the chromosome and strand will be set to "." and the start and end coordinates will be set to -1. *By default, this is disabled and the output will be reported in BED format*. - **NOTE: When using this option, it is required that the BAM file is sorted/grouped by the read name. This allows bamToBed to extract correct alignment coordinates for each end based on their respective CIGAR strings. It also assumes that the alignments for a given pair come in groups of twos. There is not yet a standard method for reporting multiple alignments using BAM. bamToBed will fail if an aligner does not report alignments in pairs**. - BAM files may be piped to bamToBed by specifying "-i stdin". See example below. -**-bed12** Write "blocked" BED (a.k.a. BED12) format. This will convert "spliced" BAM alignments (denoted by the "N" CIGAR operation) to BED12. -**-ed** Use the "edit distance" tag (NM) for the BED score field. Default for BED is to use mapping quality. Default for BEDPE is to use the *minimum* of the two mapping qualities for the pair. When -ed is used with -bedpe, the total edit distance from the two mates is reported. -**-tag** Use other *numeric* BAM alignment tag for BED score. Default for BED is to use mapping quality. Disallowed with BEDPE output. -**-color** An R,G,B string for the color used with BED12 format. Default is (255,0,0). -**-split** Report each portion of a "split" BAM (i.e., having an "N" CIGAR operation) alignment as a distinct BED intervals. -====================== ========================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================= - -By default, each alignment in the BAM file is converted to a 6 column BED. The BED "name" field is -comprised of the RNAME field in the BAM alignment. If mate information is available, the mate (e.g., -"/1" or "/2") field will be appended to the name. The "score" field is the mapping quality score from the -BAM alignment, unless the **-ed** option is used. - -Examples: -:: - bamToBed -i reads.bam | head -5 - chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 - - chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + - chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 - - - bamToBed -i reads.bam -tag NM | head -5 - chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 1 - - chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 3 + - chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 1 - - - bamToBed -i reads.bam -bedpe | head -3 - chr7 118965072 118965122 chr7 118970079 118970129 - TUPAC_0001:3:1:0:1452#0 37 + - - chr11 46765606 46765656 chr11 46769934 46769984 - TUPAC_0001:3:1:0:1472#0 37 + - - chr20 54704674 54704724 chr20 54708987 54709037 - TUPAC_0001:3:1:1:1833#0 37 + - - -One can easily use samtools and bamToBed together as part of a UNIX pipe. In this example, we will -only convert properly-paired (BAM flag == 0x2) reads to BED format. -:: - samtools view -bf 0x2 reads.bam | bamToBed -i stdin | head - chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 - - chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + - chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 - - chr11 46765606 46765656 TUPAC_0001:3:1:0:1472#0/2 37 + - chr20 54704674 54704724 TUPAC_0001:3:1:1:1833#0/1 37 + - chr20 54708987 54709037 TUPAC_0001:3:1:1:1833#0/2 37 - - chrX 9380413 9380463 TUPAC_0001:3:1:1:285#0/1 0 - - chrX 9375861 9375911 TUPAC_0001:3:1:1:285#0/2 0 + - chrX 131756978 131757028 TUPAC_0001:3:1:2:523#0/1 37 + - chrX 131761790 131761840 TUPAC_0001:3:1:2:523#0/2 37 - - - -================================================================== -5.4.2 (-split)Creating BED12 features from "spliced" BAM entries. -================================================================== -bamToBed will, by default, create a BED6 feature that represents the entire span of a spliced/split -BAM alignment. However, when using the **-split** command, a BED12 feature is reported where BED -blocks will be created for each aligned portion of the sequencing read. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Exons *************** ********** - - BED/BAM A ^^^^^^^^^^^^....................................^^^^ - - Result =============== ==== - diff --git a/docs/_build/html/_sources/content/bed12ToBed6.txt b/docs/_build/html/_sources/content/bed12ToBed6.txt deleted file mode 100644 index d9159e3b..00000000 --- a/docs/_build/html/_sources/content/bed12ToBed6.txt +++ /dev/null @@ -1,49 +0,0 @@ -############### -5.21 bed12ToBed6 -############### -**bed12ToBed6** is a convenience tool that converts BED features in BED12 (a.k.a. "blocked" BED -features such as genes) to discrete BED6 features. For example, in the case of a gene with six exons, -bed12ToBed6 would create six separate BED6 features (i.e., one for each exon). - - -========================================================================== -5.21.1 Usage and option summary -========================================================================== -Usage: -:: - bed12ToBed6 [OPTIONS] -i <BED12> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-i** The BED12 file that should be split into discrete BED6 features. *Use "stdin" when using piped input*. -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.21.2 Default behavior -========================================================================== -Figure: -:: - head data/knownGene.hg18.chr21.bed | tail -n 3 - chr21 10079666 10120808 uc002yiv.1 0 - 10081686 1 0 1 2 0 6 0 8 - 0 4 528,91,101,215, 0,1930,39750,40927, - chr21 10080031 10081687 uc002yiw.1 0 - 10080031 1 0 0 8 0 0 3 1 - 0 2 200,91, 0,1565, - chr21 10081660 10120796 uc002yix.2 0 - 10081660 1 0 0 8 1 6 6 0 - 0 3 27,101,223,0,37756,38913, - - head data/knownGene.hg18.chr21.bed | tail -n 3 | bed12ToBed6 -i stdin - chr21 10079666 10080194 uc002yiv.1 0 - - chr21 10081596 10081687 uc002yiv.1 0 - - chr21 10119416 10119517 uc002yiv.1 0 - - chr21 10120593 10120808 uc002yiv.1 0 - - chr21 10080031 10080231 uc002yiw.1 0 - - chr21 10081596 10081687 uc002yiw.1 0 - - chr21 10081660 10081687 uc002yix.2 0 - - chr21 10119416 10119517 uc002yix.2 0 - - chr21 10120573 10120796 uc002yix.2 0 - - - diff --git a/docs/_build/html/_sources/content/bedToBam.txt b/docs/_build/html/_sources/content/bedToBam.txt deleted file mode 100644 index c0f1d6ac..00000000 --- a/docs/_build/html/_sources/content/bedToBam.txt +++ /dev/null @@ -1,71 +0,0 @@ -############### -5.18 bedToBam -############### -**bedToBam** converts features in a feature file to BAM format. This is useful as an efficient means of -storing large genome annotations in a compact, indexed format for visualization purposes. - -========================================================================== -5.18.1 Usage and option summary -========================================================================== -Usage: -:: - bedToBam [OPTIONS] -i <BED/GFF/VCF> -g <GENOME> > <BAM> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-mapq** Set a mapping quality (SAM MAPQ field) value for all BED entries. *Default: 255* -**-ubam** Write uncompressed BAM output. The default is write compressed BAM output. -**-bed12** Indicate that the input BED file is in BED12 (a.k.a "blocked" BED) format. In this case, bedToBam will convert blocked BED features (e.g., gene annotaions) into "spliced" BAM alignments by creating an appropriate CIGAR string. -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.18.2 Default behavior -========================================================================== -The default behavior is to assume that the input file is in unblocked format. For example: -:: - head -5 rmsk.hg18.chr21.bed - chr21 9719768 9721892 ALR/Alpha 1004 + - chr21 9721905 9725582 ALR/Alpha 1010 + - chr21 9725582 9725977 L1PA3 3288 + - chr21 9726021 9729309 ALR/Alpha 1051 + - chr21 9729320 9729809 L1PA3 3897 - - - bedToBam -i rmsk.hg18.chr21.bed -g human.hg18.genome > rmsk.hg18.chr21.bam - - samtools view rmsk.hg18.chr21.bam | head -5 - ALR/Alpha 0 chr21 9719769 255 2124M * 0 0 * * - ALR/Alpha 0 chr21 9721906 255 3677M * 0 0 * * - L1PA3 0 chr21 9725583 255 395M * 0 0 * * - ALR/Alpha 0 chr21 9726022 255 3288M * 0 0 * * - L1PA3 16 chr21 9729321 255 489M * 0 0 * * - - -========================================================================== -5.18.3 Creating "spliced" BAM entries from "blocked" BED features -========================================================================== -Optionally, **bedToBam** will create spliced BAM entries from "blocked" BED features by using the --bed12 option. This will create CIGAR strings in the BAM output that will be displayed as "spliced" -alignments. The image illustrates this behavior, as the top track is a BAM representation (using -bedToBam) of a BED file of UCSC genes. - -For example: -:: - bedToBam -i knownGene.hg18.chr21.bed -g human.hg18.genome -bed12 > knownGene.bam - - samtools view knownGene.bam | head -2 - uc002yip.1 16 chr21 9928614 2 5 5 - - 298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M - 738N64M146N100M1647N120M6478N162M1485N51M6777N60M9274N54M880N54M1229N54M2377N54M112 - 68N58M2666N109M2885N158M * 0 0 * * - uc002yiq.1 16 chr21 9928614 2 5 5 - - 298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M - 738N64M146N100M1647N120M6478N162M1485N51M6777N60M10208N54M1229N54M2377N54M11268N58M - 2666N109M2885N158M * 0 0 * * - - diff --git a/docs/_build/html/_sources/content/bedToIgv.txt b/docs/_build/html/_sources/content/bedToIgv.txt deleted file mode 100644 index 64d7578e..00000000 --- a/docs/_build/html/_sources/content/bedToIgv.txt +++ /dev/null @@ -1,68 +0,0 @@ -############### -5.20 bedToIgv -############### -**bedToIgv** creates an IGV (http://www.broadinstitute.org/igv/) batch script (see: http:// -www.broadinstitute.org/igv/batch for details) such that a ¡°snapshot¡± will be taken at each features in a -feature file. This is useful as an efficient means for quickly collecting images of primary data at several -loci for subsequent screening, etc. - -**NOTE: One must use IGV version 1.5 or higher.** - - - -========================================================================== -5.20.1 Usage and option summary -========================================================================== -Usage: -:: - bedToIgv [OPTIONS] -i <BED/GFF/VCF> > <igv.batch> - - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-path** The full path to which the IGV snapshots should be written. *Default: ./* -**-sess** The full path to an existing IGV session file to be loaded prior to taking snapshots. *Default is for no session to be loaded and the assumption is that you already have IGV open and loaded with your relevant data prior to running the batch script*. -**-sort** The type of BAM sorting you would like to apply to each image. **Valid sorting options**: *base, position, strand, quality, sample, and readGroup Default is to apply no sorting at all*. -**-clps** Collapse the aligned reads prior to taking a snapshot. *Default is to not collapse*. -**-name** Use the "name" field (column 4) for each image's filename. *Default is to use the "chr:start-pos.ext"*. -**-slop** Number of flanking base pairs on the left & right of the image. -**-img** The type of image to be created. **Valid options**: *png, eps, svg Default is png*. -=========================== =============================================================================================================================================================================================================== - - - - - -========================================================================== -5.20.2 Default behavior -========================================================================== -Figure: -:: - bedToIgv -i data/rmsk.hg18.chr21.bed | head -9 - snapshotDirectory ./ - goto chr21:9719768-9721892 - snapshot chr21:9719768-9721892.png - goto chr21:9721905-9725582 - snapshot chr21:9721905-9725582.png - goto chr21:9725582-9725977 - snapshot chr21:9725582-9725977.png - goto chr21:9726021-9729309 - snapshot chr21:9726021-9729309.png - - - - -========================================================================== -5.20.3 Using a bedToIgv batch script within IGV. -========================================================================== -Once an IGV batch script has been created with **bedToIgv**, it is simply a matter of running it from -within IGV. - -For example, first create the batch script: -:: - bedToIgv -i data/rmsk.hg18.chr21.bed > rmsk.igv.batch - -Then, open and launch the batch script from within IGV. This will immediately cause IGV to begin -taking snapshots of your requested regions. - diff --git a/docs/_build/html/_sources/content/bedtools-suite.txt b/docs/_build/html/_sources/content/bedtools-suite.txt deleted file mode 100644 index bbe1802d..00000000 --- a/docs/_build/html/_sources/content/bedtools-suite.txt +++ /dev/null @@ -1,45 +0,0 @@ -############### -The BEDTools suite -############### - -This section covers the functionality and default / optional usage for each of the available BEDTools. -Example "figures" are provided in some cases in an effort to convey the purpose of the tool. The -behavior of each available parameter is discussed for each tool in abstract terms. More concrete usage -examples are provided in **Section 6**. - - -================= -Table of contents -================= -.. toctree:: - :maxdepth: 1 - - intersectBed - pairToBed - pairToPair - bamToBed - windowBed - closestBed - subtractBed - mergeBed - coverageBed - genomecoverageBed - fastafromBed - maskfastafromBed - shuffleBed - slopBed - sortBed - linksBed - complementBed - bedToBam - overlap - bedToIgv - bed12ToBed6 - groupBy - unionBedGraphs - annotateBed - - - - - \ No newline at end of file diff --git a/docs/_build/html/_sources/content/closestBed.txt b/docs/_build/html/_sources/content/closestBed.txt deleted file mode 100644 index 3276718c..00000000 --- a/docs/_build/html/_sources/content/closestBed.txt +++ /dev/null @@ -1,130 +0,0 @@ -############### -5.6 closestBed -############### -Similar to **intersectBed, closestBed** searches for overlapping features in A and B. In the event that -no feature in B overlaps the current feature in A, **closestBed** will report the *closest* (that is, least -genomic distance from the start or end of A) feature in B. For example, one might want to find which -is the closest gene to a significant GWAS polymorphism. Note that **closestBed** will report an -overlapping feature as the closest---that is, it does not restrict to closest *non-overlapping* feature. - -========================================================================== -5.6.1 Usage and option summary -========================================================================== -**Usage:** -:: - closestBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF> - - -=========================== =============================================================================================================================================================================================================== -Option Description -=========================== =============================================================================================================================================================================================================== -**-s** Force strandedness. That is, find the closest feature in B overlaps A on the same strand. *By default, this is disabled*. -**-d** In addition to the closest feature in B, report its distance to A as an extra column. The reported distance for overlapping features will be 0. -**-t** How ties for closest feature should be handled. This occurs when two features in B have exactly the same overlap with a feature in A. *By default, all such features in B are reported*. - - Here are the other choices controlling how ties are handled: - - *all-* Report all ties (default). - - *first-* Report the first tie that occurred in the B file. - - *last-* Report the last tie that occurred in the B file. -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.6.2 Default behavior -========================================================================== -**closestBed** first searches for features in B that overlap a feature in A. If overlaps are found, the feature -in B that overlaps the highest fraction of A is reported. If no overlaps are found, **closestBed** looks for -the feature in B that is *closest* (that is, least genomic distance to the start or end of A) to A. For -example, in the figure below, feature B1 would be reported as the closest feature to A1. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BED FILE A ************* - - BED File B ^^^^^^^^ ^^^^^^ - - Result ====== - - -For example: -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 500 1000 - chr1 1300 2000 - - closestBed -a A.bed -b B.bed - chr1 100 200 chr1 500 1000 - - - -========================================================================== -5.6.3 (-s)Enforcing "strandedness" -========================================================================== -This option behaves the same as the -s option for intersectBed while scanning for the closest -(overlapping or not) feature in B. See the discussion in the intersectBed section for details. - - - -========================================================================== -5.6.4 (-t)Controlling how ties for "closest" are broken -========================================================================== -When there are two or more features in B that overlap the *same fraction* of A, **closestBed** will, by -default, report both features in B. Imagine feature A is a SNP and file B contains genes. It can often -occur that two gene annotations (e.g. opposite strands) in B will overlap the SNP. As mentioned, the -default behavior is to report both such genes in B. However, the -t option allows one to optionally -choose the just first or last feature (in terms of where it occurred in the input file, not chromosome -position) that occurred in B. - -For example (note the difference between -l 200 and -l 300): -:: - cat A.bed - chr1 100 101 rs1234 - - cat B.bed - chr1 0 1000 geneA 100 + - chr1 0 1000 geneB 100 - - - closestBed -a A.bed -b B.bed - chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - - closestBed -a A.bed -b B.bed -t all - chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - - closestBed -a A.bed -b B.bed -t first - chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - - closestBed -a A.bed -b B.bed -t last - chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - - - - - - -========================================================================== -5.6.5 (-d)Reporting the distance to the closest feature in base pairs -========================================================================== -ClosestBed will optionally report the distance to the closest feature in the B file using the **-d** option. -When a feature in B overlaps a feature in A, a distance of 0 is reported. -:: - cat A.bed - chr1 100 200 - chr1 500 600 - - cat B.bed - chr1 500 1000 - chr1 1300 2000 - - closestBed -a A.bed -b B.bed -d - chr1 100 200 chr1 500 1000 300 - chr1 500 600 chr1 500 1000 0 diff --git a/docs/_build/html/_sources/content/complementBed.txt b/docs/_build/html/_sources/content/complementBed.txt deleted file mode 100644 index 1951d0d4..00000000 --- a/docs/_build/html/_sources/content/complementBed.txt +++ /dev/null @@ -1,48 +0,0 @@ -############### -5.17 complementBed -############### -**complementBed** returns the intervals in a genome that are not by the features in a feature file. An -example usage of this tool would be to return the intervals of the genome that are not annotated as a -repeat. - - -========================================================================== -5.17.1 Usage and option summary -========================================================================== -Usage: -:: - complementBed [OPTIONS] -i <BED/GFF/VCF> -g <GENOME> - -**No additional options.** - - - - -========================================================================== -5.17.2 Default behavior -========================================================================== -Figure: -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BED FILE A ************* *************** ****************** - - Result === === ===== ======= - - -For example: -:: - cat A.bed - chr1 100 200 - chr1 400 500 - chr1 500 800 - - cat my.genome - chr1 1000 - - complementBed -i A.bed -g my.genome - chr1 0 100 - chr1 200 400 - chr1 800 1000 - - diff --git a/docs/_build/html/_sources/content/coverageBed.txt b/docs/_build/html/_sources/content/coverageBed.txt deleted file mode 100644 index ccd5acd2..00000000 --- a/docs/_build/html/_sources/content/coverageBed.txt +++ /dev/null @@ -1,184 +0,0 @@ -############### -5.9 coverageBed -############### -**coverageBed** computes both the *depth* and *breadth* of coverage of features in file A across the features -in file B. For example, **coverageBed** can compute the coverage of sequence alignments (file A) across 1 -kilobase (arbitrary) windows (file B) tiling a genome of interest. One advantage that **coverageBed** -offers is that it not only *counts* the number of features that overlap an interval in file B, it also -computes the fraction of bases in B interval that were overlapped by one or more features. Thus, -**coverageBed** also computes the *breadth* of coverage for each interval in B. - -========================================================================== -5.9.1 Usage and option summary -========================================================================== -Usage: -:: - coverageBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF> - -=========================== =============================================================================================================================================================================================================== -Option Description -=========================== =============================================================================================================================================================================================================== -**-abam** BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: - - | samtools view -b <BAM> | intersectBed -abam stdin -b genes.bed - -**-s** Force strandedness. That is, only features in A are only counted towards coverage in B if they are the same strand. *By default, this is disabled and coverage is counted without respect to strand*. -**-hist** Report a histogram of coverage for each feature in B as well as a summary histogram for _all_ features in B. - - | Output (tab delimited) after each feature in B: - - | 1) depth - | 2) # bases at depth - | 3) size of B - | 4) % of B at depth -**-d** Report the depth at each position in each B feature. Positions reported are one based. Each position and depth follow the complete B feature. -**-split** Treat "split" BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR "N" and "D" operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -=========================== =============================================================================================================================================================================================================== - - - - - - -========================================================================== -5.9.2 Default behavior -========================================================================== -After each interval in B, **coverageBed** will report: - -1) The number of features in A that overlapped (by at least one base pair) the B interval. -2) The number of bases in B that had non-zero coverage from features in A. -3) The length of the entry in B. -4) The fraction of bases in B that had non-zero coverage from features in A. - -Below are the number of features in A (N=...) overlapping B and fraction of bases in B with coverage. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BED FILE B *************** *************** ****** ************** - - BED File A ^^^^ ^^^^ ^^ ^^^^^^^^^ ^^^ ^^ ^^^^ - ^^^^^^^^ ^^^^^ ^^^^^ ^^ - - Result [ N=3, 10/15 ] [ N=1, 2/16 ] [N=1,6/6] [N=5, 11/12 ] - - -For example: -:: - cat A.bed - chr1 10 20 - chr1 20 30 - chr1 30 40 - chr1 100 200 - - cat B.bed - chr1 0 100 - chr1 100 200 - chr2 0 100 - - coverageBed -a A.bed -b B.bed - chr1 0 100 3 30 100 0.3000000 - chr1 100 200 1 100 100 1.0000000 - chr2 0 100 0 0 100 0.0000000 - - - -========================================================================== -5.9.4 (-s)Calculating coverage by strand -========================================================================== -Use the "**-s**" option if one wants to only count coverage if features in A are on the same strand as the -feature / window in B. This is especially useful for RNA-seq experiments. - -For example (note the difference in coverage with and without **-s**: -:: - cat A.bed - chr1 10 20 a1 1 - - chr1 20 30 a2 1 - - chr1 30 40 a3 1 - - chr1 100 200 a4 1 + - - cat B.bed - chr1 0 100 b1 1 + - chr1 100 200 b2 1 - - chr2 0 100 b3 1 + - - coverageBed -a A.bed -b B.bed - chr1 0 100 b1 1 + 3 30 100 0.3000000 - chr1 100 200 b2 1 - 1 100 100 1.0000000 - chr2 0 100 b3 1 + 0 0 100 0.0000000 - - coverageBed -a A.bed -b B.bed -s - chr1 0 100 b1 1 + 0 0 100 0.0000000 - chr1 100 200 b2 1 - 0 0 100 0.0000000 - chr2 0 100 b3 1 + 0 0 100 0.0000000 - -========================================================================== -5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file -========================================================================== -One should use the "**-hist**" option to create, for each interval in B, a histogram of coverage of the -features in A across B. - -In this case, each entire feature in B will be reported, followed by the depth of coverage, the number of -bases at that depth, the size of the feature, and the fraction covered. After all of the features in B have -been reported, a histogram summarizing the coverage among all features in B will be reported. -:: - cat A.bed - chr1 10 20 a1 1 - - chr1 20 30 a2 1 - - chr1 30 40 a3 1 - - chr1 100 200 a4 1 + - - cat B.bed - chr1 0 100 b1 1 + - chr1 100 200 b2 1 - - chr2 0 100 b3 1 + - - coverageBed -a A.bed -b B.bed -hist - chr1 0 100 b1 1 + 0 70 100 0.7000000 - chr1 0 100 b1 1 + 1 30 100 0.3000000 - chr1 100 200 b2 1 - 1 100 100 1.0000000 - chr2 0 100 b3 1 + 0 100 100 1.0000000 - all 0 170 300 0.5666667 - all 1 130 300 0.4333333 - - - -========================================================================== -5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file -========================================================================== -One should use the "**-d**" option to create, for each interval in B, a detailed list of coverage at each of the -positions across each B interval. - -The output will consist of a line for each one-based position in each B feature, followed by the coverage -detected at that position. -:: - cat A.bed - chr1 0 5 - chr1 3 8 - chr1 4 8 - chr1 5 9 - - cat B.bed - chr1 0 10 - - coverageBed -a A.bed -b B.bed -d - chr1 0 10 B 1 1 - chr1 0 10 B 2 1 - chr1 0 10 B 3 1 - chr1 0 10 B 4 2 - chr1 0 10 B 5 3 - chr1 0 10 B 6 3 - chr1 0 10 B 7 3 - chr1 0 10 B 8 3 - chr1 0 10 B 9 1 - chr1 0 10 B 10 0 - - - -========================================================================== -5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features -========================================================================== -As described in section 1.3.19, coverageBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only tabulate coverage for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The **-split** command allows for such coverage to be -performed. diff --git a/docs/_build/html/_sources/content/example-usage.txt b/docs/_build/html/_sources/content/example-usage.txt deleted file mode 100644 index 3fe5edf3..00000000 --- a/docs/_build/html/_sources/content/example-usage.txt +++ /dev/null @@ -1,331 +0,0 @@ -############### -Example usage -############### -Below are several examples of basic BEDTools usage. Example BED files are provided in the -/data directory of the BEDTools distribution. - - - -========================================================================== -6.1 intersectBed -========================================================================== - - -6.1.1 Report the base-pair overlap between sequence alignments and genes. -:: - intersectBed -a reads.bed -b genes.bed - - - -6.1.2 Report whether each alignment overlaps one or more genes. If not, the alignment is not reported. -:: - intersectBed -a reads.bed -b genes.bed -u - - - -6.1.3 Report those alignments that overlap NO genes. Like "grep -v" -:: - intersectBed -a reads.bed -b genes.bed -v - - -6.1.4 Report the number of genes that each alignment overlaps. -:: - intersectBed -a reads.bed -b genes.bed -c - - - -6.1.5 Report the entire, original alignment entry for each overlap with a gene. -:: - intersectBed -a reads.bed -b genes.bed -wa - - - -6.1.6 Report the entire, original gene entry for each overlap with a gene. -:: - intersectBed -a reads.bed -b genes.bed -wb - - - -6.1.7 Report the entire, original alignment and gene entries for each overlap. -:: - intersectBed -a reads.bed -b genes.bed -wa -wb - - - -6.1.8 Only report an overlap with a repeat if it spans at least 50% of the exon. -:: - intersectBed -a exons.bed -b repeatMasker.bed -f 0.50 - - - -6.1.9 Only report an overlap if comprises 50% of the structural variant and 50% of the segmental duplication. Thus, it is reciprocally at least a 50% overlap. -:: - intersectBed -a SV.bed -b segmentalDups.bed -f 0.50 -r - - - - -6.1.10 Read BED A from stdin. For example, find genes that overlap LINEs but not SINEs. -:: - intersectBed -a genes.bed -b LINES.bed | intersectBed -a stdin -b SINEs.bed -v - - - - -6.1.11 Retain only single-end BAM alignments that overlap exons. -:: - intersectBed -abam reads.bam -b exons.bed > reads.touchingExons.bam - - - - - -6.1.12 Retain only single-end BAM alignments that do not overlap simple sequence -repeats. -:: - intersectBed -abam reads.bam -b SSRs.bed -v > reads.noSSRs.bam - - - -========================================================================== -6.2 pairToBed -========================================================================== - - - -6.2.1 Return all structural variants (in BEDPE format) that overlap with genes on either -end. -:: - pairToBed -a sv.bedpe -b genes > sv.genes - - - -6.2.2 Return all structural variants (in BEDPE format) that overlap with genes on both -end. -:: - pairToBed -a sv.bedpe -b genes -type both > sv.genes - - - - -6.2.3 Retain only paired-end BAM alignments where neither end overlaps simple -sequence repeats. -:: - pairToBed -abam reads.bam -b SSRs.bed -type neither > reads.noSSRs.bam - - - -6.2.4 Retain only paired-end BAM alignments where both ends overlap segmental -duplications. -:: - pairToBed -abam reads.bam -b segdups.bed -type both > reads.SSRs.bam - - - - -6.2.5 Retain only paired-end BAM alignments where neither or one and only one end -overlaps segmental duplications. -:: - pairToBed -abam reads.bam -b segdups.bed -type notboth > reads.notbothSSRs.bam - - - - - - -========================================================================== -6.3 pairToPair -========================================================================== - - -6.3.1 Find all SVs (in BEDPE format) in sample 1 that are also in sample 2. -:: - pairToPair -a 1.sv.bedpe -b 2.sv.bedpe | cut -f 1-10 > 1.sv.in2.bedpe - - - -6.3.2 Find all SVs (in BEDPE format) in sample 1 that are not in sample 2. -:: - pairToPair -a 1.sv.bedpe -b 2.sv.bedpe -type neither | cut -f 1-10 > -1.sv.notin2.bedpe - - - - - -========================================================================== -6.4 bamToBed -========================================================================== - - -6.4.1 Convert BAM alignments to BED format. -:: - bamToBed -i reads.bam > reads.bed - - -6.4.2 Convert BAM alignments to BED format using the BAM edit distance (NM) as the -BED "score". -:: - bamToBed -i reads.bam -ed > reads.bed - - -6.4.3 Convert BAM alignments to BEDPE format. -:: - bamToBed -i reads.bam -bedpe > reads.bedpe - - - - - -========================================================================== -6.5 windowBed -========================================================================== - - - -6.5.1 Report all genes that are within 10000 bp upstream or downstream of CNVs. -:: - windowBed -a CNVs.bed -b genes.bed -w 10000 - - - -6.5.2 Report all genes that are within 10000 bp upstream or 5000 bp downstream of -CNVs. -:: - windowBed -a CNVs.bed -b genes.bed -l 10000 -r 5000 - - -6.5.3 Report all SNPs that are within 5000 bp upstream or 1000 bp downstream of genes. -Define upstream and downstream based on strand. -:: - windowBed -a genes.bed -b snps.bed -l 5000 -r 1000 -sw - - - - - -========================================================================== -6.6 closestBed -========================================================================== -Note: By default, if there is a tie for closest, all ties will be reported. **closestBed** allows overlapping -features to be the closest. - - - -6.6.1 Find the closest ALU to each gene. -:: - closestBed -a genes.bed -b ALUs.bed - - -6.6.2 Find the closest ALU to each gene, choosing the first ALU in the file if there is a -tie. -:: - closestBed -a genes.bed -b ALUs.bed -t first - - - -6.6.3 Find the closest ALU to each gene, choosing the last ALU in the file if there is a -tie. -:: - closestBed -a genes.bed -b ALUs.bed -t last - - - - - -========================================================================== -6.7 subtractBed -========================================================================== -Note: If a feature in A is entirely "spanned" by any feature in B, it will not be reported. - - - -6.7.1 Remove introns from gene features. Exons will (should) be reported. -:: - subtractBed -a genes.bed -b introns.bed - - -========================================================================== -6.8 mergeBed -========================================================================== - - -6.8.1 Merge overlapping repetitive elements into a single entry. -:: - mergeBed -i repeatMasker.bed - - - -6.8.2 Merge overlapping repetitive elements into a single entry, returning the number of -entries merged. -:: - mergeBed -i repeatMasker.bed -n - - -6.8.3 Merge nearby (within 1000 bp) repetitive elements into a single entry. -:: - mergeBed -i repeatMasker.bed -d 1000 - - -========================================================================== -6.9 coverageBed -========================================================================== - - -6.9.1 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome. -:: - coverageBed -a reads.bed -b windows10kb.bed | head - chr1 0 10000 0 10000 0.00 - chr1 10001 20000 33 10000 0.21 - chr1 20001 30000 42 10000 0.29 - chr1 30001 40000 71 10000 0.36 - - - -6.9.2 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome and created a BEDGRAPH of the number of aligned reads in each window for -display on the UCSC browser. -:: - coverageBed -a reads.bed -b windows10kb.bed | cut -f 1-4 > windows10kb.cov.bedg - - - -6.9.3 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome and created a BEDGRAPH of the fraction of each window covered by at least -one aligned read for display on the UCSC browser. -:: - coverageBed -a reads.bed -b windows10kb.bed | awk ¡®{OFS="\t"; print $1,$2,$3,$6}¡¯ - > windows10kb.pctcov.bedg - - - - -========================================================================== -6.10 complementBed -========================================================================== - - -6.10.1 Report all intervals in the human genome that are not covered by repetitive -elements. -:: - complementBed -i repeatMasker.bed -g hg18.genome - - - -========================================================================== -6.11 shuffleBed -========================================================================== - - -6.11.1 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps. -:: - shuffleBed -i variants.bed -g hg18.genome -excl genome_gaps.bed - - -6.11.2 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps and require that the variants be randomly -placed on the same chromosome. -:: - shuffleBed -i variants.bed -g hg18.genome -excl genome_gaps.bed -chrom diff --git a/docs/_build/html/_sources/content/fastafromBed.txt b/docs/_build/html/_sources/content/fastafromBed.txt deleted file mode 100644 index 6e2b4ca0..00000000 --- a/docs/_build/html/_sources/content/fastafromBed.txt +++ /dev/null @@ -1,126 +0,0 @@ -############### -5.11 fastaFromBed -############### -**fastaFromBed** extracts sequences from a FASTA file for each of the intervals defined in a BED file. -The headers in the input FASTA file must exactly match the chromosome column in the BED file. - -========================================================================== -5.11.1 Usage and option summary -========================================================================== -Usage: -:: - fastaFromBed [OPTIONS] -fi <input FASTA> -bed <BED/GFF/VCF> -fo <output FASTA> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-name** Use the "name" column in the BED file for the FASTA headers in the output FASTA file. -**-tab** Report extract sequences in a tab-delimited format instead of in FASTA format. -**-s** Force strandedness. If the feature occupies the antisense strand, the sequence will be reverse complemented. *Default: strand information is ignored*. -=========================== =============================================================================================================================================================================================================== - - - - - - - -========================================================================== -5.11.2 Default behavior -========================================================================== -**fastaFromBed** will extract the sequence defined by the coordinates in a BED interval and create a -new FASTA entry in the output file for each extracted sequence. By default, the FASTA header for each -extracted sequence will be formatted as follows: "<chrom>:<start>-<end>". - -For example: -:: - $ cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 5 10 - - fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - - cat test.fa.out - >chr1:5-10 - AAACC - - - - -========================================================================== -5.11.3 Using the BED "name" column as a FASTA header. -========================================================================== -Using the **-name** option, one can set the FASTA header for each extracted sequence to be the "name" -columns from the BED feature. - -For example: -:: - cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 5 10 myseq - - fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -name - - cat test.fa.out - >myseq - AAACC - - - - - - - - - - -========================================================================== -5.11.4 Creating a tab-delimited output file in lieu of FASTA output. -========================================================================== -Using the **-tab** option, the **-fo** output file will be tab-delimited instead of in FASTA format. - -For example: -:: - cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 5 10 myseq - - fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out.tab -name -tab - - cat test.fa.out - myseq AAACC - - - -========================================================================== -5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand -========================================================================== -**fastaFromBed** will extract the sequence in the orientation defined in the strand column when the "-s" -option is used. - -For example: -:: - cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 20 25 forward 1 + - chr1 20 25 reverse 1 - - - fastaFromBed -fi test.fa -bed test.bed -s -name -fo test.fa.out - - cat test.fa.out - >forward - CGCTA - >reverse - TAGCG diff --git a/docs/_build/html/_sources/content/general-usage.txt b/docs/_build/html/_sources/content/general-usage.txt deleted file mode 100644 index 7047cc55..00000000 --- a/docs/_build/html/_sources/content/general-usage.txt +++ /dev/null @@ -1,213 +0,0 @@ -############### -General usage -############### - -======================= -4.1 Supported file formats -======================= - ----------------------- -4.1.1 BED format ----------------------- -As described on the UCSC Genome Browser website (see link below), the BED format is a concise and -flexible way to represent genomic features and annotations. The BED format description supports up to -12 columns, but only the first 3 are required for the UCSC browser, the Galaxy browser and for -BEDTools. BEDTools allows one to use the "BED12" format (that is, all 12 fields listed below). -However, only intersectBed, coverageBed, genomeCoverageBed, and bamToBed will obey the BED12 -"blocks" when computing overlaps, etc., via the **"-split"** option. For all other tools, the last six columns -are not used for any comparisons by the BEDTools. Instead, they will use the entire span (start to end) -of the BED12 entry to perform any relevant feature comparisons. The last six columns will be reported -in the output of all comparisons. - -The file description below is modified from: http://genome.ucsc.edu/FAQ/FAQformat#format1. - -1. **chrom** - The name of the chromosome on which the genome feature exists. - - *Any string can be used*. For example, "chr1", "III", "myChrom", "contig1112.23". - - *This column is required*. -2. **start** - The zero-based starting position of the feature in the chromosome. - - *The first base in a chromosome is numbered 0*. - - *The start position in each BED feature is therefore interpreted to be 1 greater than the start position listed in the feature. For example, start=9, end=20 is interpreted to span bases 10 through 20,inclusive*. - - *This column is required*. -3. **end** - The one-based ending position of the feature in the chromosome. - - *The end position in each BED feature is one-based. See example above*. - - *This column is required*. -4. **name** - Defines the name of the BED feature. - - *Any string can be used*. For example, "LINE", "Exon3", "HWIEAS_0001:3:1:0:266#0/1", or "my_Feature". - - *This column is optional*. -5. **score** - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. - - *Any string can be used*. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), "up", "down", etc. - - *This column is optional*. -6. **strand** - Defines the strand - either '+' or '-'. - - *This column is optional*. -7. **thickStart** - The starting position at which the feature is drawn thickly. - - *Allowed yet ignored by BEDTools*. -8. **thickEnd** - The ending position at which the feature is drawn thickly. - - *Allowed yet ignored by BEDTools*. -9. **itemRgb** - An RGB value of the form R,G,B (e.g. 255,0,0). - - *Allowed yet ignored by BEDTools*. -10. **blockCount** - The number of blocks (exons) in the BED line. - - *Allowed yet ignored by BEDTools*. -11. **blockSizes** - A comma-separated list of the block sizes. - - *Allowed yet ignored by BEDTools*. -12. **blockStarts** - A comma-separated list of block starts. - - *Allowed yet ignored by BEDTools*. - - -BEDTools requires that all BED input files (and input received from stdin) are **tab-delimited**. The following types of BED files are supported by BEDTools: - - -1. | **BED3**: A BED file where each feature is described by **chrom**, **start**, and **end**. - | For example: chr1 11873 14409 -2. | **BED4**: A BED file where each feature is described by **chrom**, **start**, **end**, and **name**. - | For example: chr1 11873 14409 uc001aaa.3 -3. | **BED5**: A BED file where each feature is described by **chrom**, **start**, **end**, **name**, and **score**. - | For example: chr1 11873 14409 uc001aaa.3 0 -4. | **BED6**: A BED file where each feature is described by **chrom**, **start**, **end**, **name**, **score**, and **strand**. - | For example: chr1 11873 14409 uc001aaa.3 0 + -5. | **BED12**: A BED file where each feature is described by all twelve columns listed above. - | For example: chr1 11873 14409 uc001aaa.3 0 + 11873 - | 11873 0 3 354,109,1189, 0,739,1347, - ----------------------- -4.1.2 BEDPE format ----------------------- -We have defined a new file format (BEDPE) in order to concisely describe disjoint genome features, -such as structural variations or paired-end sequence alignments. We chose to define a new format -because the existing "blocked" BED format (a.k.a. BED12) does not allow inter-chromosomal feature -definitions. In addition, BED12 only has one strand field, which is insufficient for paired-end sequence -alignments, especially when studying structural variation. - -The BEDPE format is described below. The description is modified from: http://genome.ucsc.edu/FAQ/FAQformat#format1. - -1. **chrom1** - The name of the chromosome on which the **first** end of the feature exists. - - *Any string can be used*. For example, "chr1", "III", "myChrom", "contig1112.23". - - *This column is required*. - - *Use "." for unknown*. -2. **start1** - The zero-based starting position of the **first** end of the feature on **chrom1**. - - *The first base in a chromosome is numbered 0*. - - *As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required*. - - *Use -1 for unknown*. -3. **end1** - The one-based ending position of the first end of the feature on **chrom1**. - - *The end position in each BEDPE feature is one-based*. - - *This column is required*. - - *Use -1 for unknown*. -4. **chrom2** - The name of the chromosome on which the **second** end of the feature exists. - - *Any string can be used*. For example, "chr1", "III", "myChrom", "contig1112.23". - - *This column is required*. - - *Use "." for unknown*. -5. **start2** - The zero-based starting position of the **second** end of the feature on **chrom2**. - - *The first base in a chromosome is numbered 0*. - - *As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required*. - - *Use -1 for unknown*. -6. **end2** - The one-based ending position of the **second** end of the feature on **chrom2**. - - *The end position in each BEDPE feature is one-based*. - - *This column is required*. - - *Use -1 for unknown*. -7. **name** - Defines the name of the BEDPE feature. - - *Any string can be used*. For example, "LINE", "Exon3", "HWIEAS_0001:3:1:0:266#0/1", or "my_Feature". - - *This column is optional*. -8. **score** - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. *However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features*. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. - - *Any string can be used*. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), "up", "down", etc. - - *This column is optional*. -9. **strand1** - Defines the strand for the first end of the feature. Either '+' or '-'. - - *This column is optional*. - - *Use "." for unknown*. -10. **strand2** - Defines the strand for the second end of the feature. Either '+' or '-'. - - *This column is optional*. - - *Use "." for unknown*. -11. **Any number of additional, user-defined fields** - BEDTools allows one to add as many additional fields to the normal, 10-column BEDPE format as necessary. These columns are merely "passed through" **pairToBed** and **pairToPair** and are not part of any analysis. One would use these additional columns to add extra information (e.g., edit distance for each end of an alignment, or "deletion", "inversion", etc.) to each BEDPE feature. - - *These additional columns are optional*. - - -Entries from an typical BEDPE file: -:: - chr1 100 200 chr5 5000 5100 bedpe_example1 30 + - - chr9 1000 5000 chr9 3000 3800 bedpe_example2 100 + - - - -Entries from a BEDPE file with two custom fields added to each record: -:: - chr1 10 20 chr5 50 60 a1 30 + - 0 1 - chr9 30 40 chr9 80 90 a2 100 + - 2 1 - - - ----------------------- -4.1.3 GFF format ----------------------- -The GFF format is described on the Sanger Institute's website (http://www.sanger.ac.uk/resources/software/gff/spec.html). The GFF description below is modified from the definition at this URL. All nine columns in the GFF format description are required by BEDTools. - -1. **seqname** - The name of the sequence (e.g. chromosome) on which the feature exists. - - *Any string can be used*. For example, "chr1", "III", "myChrom", "contig1112.23". - - *This column is required*. -2. **source** - The source of this feature. This field will normally be used to indicate the program making the prediction, or if it comes from public database annotation, or is experimentally verified, etc. - - *This column is required*. -3. **feature** - The feature type name. Equivalent to BED's **name** field. - - *Any string can be used*. For example, "exon", etc. - - *This column is required*. -4. **start** - The one-based starting position of feature on **seqname**. - - *This column is required*. - - *BEDTools accounts for the fact the GFF uses a one-based position and BED uses a zero-based start position*. -5. **end** - The one-based ending position of feature on **seqname**. - - *This column is required*. -6. **score** - A score assigned to the GFF feature. Like BED format, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. We note that this differs from the GFF definition in the interest of flexibility. - - *This column is required*. -7. **strand** - Defines the strand. Use '+', '-' or '.' - - *This column is required*. -8. **frame** - The frame of the coding sequence. Use '0', '1', '2', or '.'. - - *This column is required*. -9. **attribute** - Taken from http://www.sanger.ac.uk/resources/software/gff/spec.html: From version 2 onwards, the attribute field must have an tag value structure following the syntax used within objects in a .ace file, flattened onto one line by semicolon separators. Tags must be standard identifiers ([A-Za-z][AZa-z0-9_]*). Free text values must be quoted with double quotes. *Note: all non-printing characters in such free text value strings (e.g. newlines, tabs, control characters, etc) must be explicitly represented by their C (UNIX) style backslash-escaped representation (e.g. newlines as '\n', tabs as '\t')*. As in ACEDB, multiple values can follow a specific tag. The aim is to establish consistent use of particular tags, corresponding to an underlying implied ACEDB model if you want to think that way (but acedb is not required). - - *This column is required*. - -An entry from an example GFF file : -:: - seq1 BLASTX similarity 101 235 87.1 + 0 Target "HBA_HUMAN" 11 55 ; - E_value 0.0003 dJ102G20 GD_mRNA coding_exon 7105 7201 . - 2 Sequence - "dJ102G20.C1.1" - - - ----------------------- -4.1.3 GFF format ----------------------- -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which which species/genome build you are -working. The way you do this for BEDTools is to create a "genome" file, which simply lists the names of -the chromosomes (or scaffolds, etc.) and their size (in basepairs). - - -Genome files must be **tab-delimited** and are structured as follows (this is an example for *C. elegans*): -:: - chrI 15072421 - chrII 15279323 - ... - chrX 17718854 - chrM 13794 - -BEDTools includes pre-defined genome files for human and mouse in the **/genomes** directory included -in the BEDTools distribution. - - ----------------------- -4.1.5 SAM/BAM format ----------------------- -The SAM / BAM format is a powerful and widely-used format for storing sequence alignment data (see -http://samtools.sourceforge.net/ for more details). It has quickly become the standard format to which -most DNA sequence alignment programs write their output. Currently, the following BEDTools -support inout in BAM format: *intersectBed, windowBed, coverageBed, genomeCoverageBed, -pairToBed, bamToBed*. Support for the BAM format in BEDTools allows one to (to name a few): -compare sequence alignments to annotations, refine alignment datasets, screen for potential mutations -and compute aligned sequence coverage. - -The details of how these tools work with BAM files are addressed in **Section 5** of this manual. - - ----------------------- -4.1.6 VCF format ----------------------- -The Variant Call Format (VCF) was conceived as part of the 1000 Genomes Project as a standardized -means to report genetic variation calls from SNP, INDEL and structural variant detection programs -(see http://www.1000genomes.org/wiki/doku.php?id=1000_genomes:analysis:vcf4.0 for details). -BEDTools now supports the latest version of this format (i.e, Version 4.0). As a result, BEDTools can -be used to compare genetic variation calls with other genomic features. diff --git a/docs/_build/html/_sources/content/genomecoverageBed.txt b/docs/_build/html/_sources/content/genomecoverageBed.txt deleted file mode 100644 index 3c5d6919..00000000 --- a/docs/_build/html/_sources/content/genomecoverageBed.txt +++ /dev/null @@ -1,122 +0,0 @@ -############### -5.10 genomeCoverageBed -############### -**genomeCoverageBed** computes a histogram of feature coverage (e.g., aligned sequences) for a given -genome. Optionally, by using the **-d** option, it will report the depth of coverage at *each base* on each -chromosome in the genome file (**-g**). - -========================================================================== -5.10.1 Usage and option summary -========================================================================== -Usage: -:: - genomeCoverageBed [OPTIONS] -i <BED> -g <GENOME> - -NOTE: genomeCoverageBed requires that the input BED file be sorted by -chromosome. A simple sort -k1,1 will suffice. - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-ibam** BAM file as input for coverage. Each BAM alignment in A added to the total coverage for the genome. Use "stdin" if passing it with a UNIX pipe: For example: - | samtools view -b <BAM> | genomeCoverageBed -ibam stdin -g hg18.genome -**-d** Report the depth at each genome position. *Default behavior is to report a histogram*. -**-max** Combine all positions with a depth >= max into a single bin in the histogram. -**-bg** Report depth in BedGraph format. For details, see: http://genome.ucsc.edu/goldenPath/help/bedgraph.html -**-bga** Report depth in BedGraph format, as above (i.e., -bg). However with this option, regions with zero coverage are also reported. This allows one to quickly extract all regions of a genome with 0 coverage by applying: "grep -w 0$" to the output. -**-split** Treat "split" BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR "N" and "D" operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -**-strand** Calculate coverage of intervals from a specific strand. With BED files, requires at least 6 columns (strand is column 6). -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.10.2 Default behavior -========================================================================== -By default, **genomeCoverageBed** will compute a histogram of coverage for the genome file provided. -The default output format is as follows: -1. chromosome (or entire genome) -2. depth of coverage from features in input file -3. number of bases on chromosome (or genome) with depth equal to column 2. -4. size of chromosome (or entire genome) in base pairs -5. fraction of bases on chromosome (or entire genome) with depth equal to column 2. - -For example: -:: - cat A.bed - chr1 10 20 - chr1 20 30 - chr2 0 500 - - cat my.genome - chr1 1000 - chr2 500 - - genomeCoverageBed -i A.bed -g my.genome - chr1 0 980 1000 0.98 - chr1 1 20 1000 0.02 - chr2 1 500 500 1 - genome 0 980 1500 0.653333 - genome 1 520 1500 0.346667 - - - - -========================================================================== -5.10.3 (-max)Controlling the histogram's maximum depth -========================================================================== -Using the **-max** option, **genomeCoverageBed** will "lump" all positions in the genome having feature -coverage greather than or equal to **max** into the **max** histogram bin. For example, if one sets **-max** -equal to 50, the max depth reported in the output will be 50 and all positions with a depth >= 50 will -be represented in bin 50. - -========================================================================== -5.10.4 (-d)Reporting "per-base" genome coverage -========================================================================== -Using the **-d** option, **genomeCoverageBed** will compute the depth of feature coverage for each base -on each chromosome in genome file provided. - -The "per-base" output format is as follows: -1. chromosome -2. chromosome position -3. depth (number) of features overlapping this chromosome position. - -For example: -:: - cat A.bed - chr1 10 20 - chr1 20 30 - chr2 0 500 - - cat my.genome - chr1 1000 - chr2 500 - - genomeCoverageBed -i A.bed -g my.genome -d | head -15 | tail -n 10 - chr1 6 0 - chr1 7 0 - chr1 8 0 - chr1 9 0 - chr1 10 0 - chr1 11 1 - chr1 12 1 - chr1 13 1 - chr1 14 1 - chr1 15 1 - - - -========================================================================== -5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features -========================================================================== -As described in section 1.3.19, genomeCoverageBed will, by default, screen for overlaps against the -entire span of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq -reads, for example, one typically wants to only screen for overlaps for the portions of the reads that -come from exons (and ignore the interstitial intron sequence). The **-split** command allows for such -overlaps to be performed. - -For additional details, please visit the Usage From The Wild site and have a look at example 5, -contributed by Assaf Gordon. - - diff --git a/docs/_build/html/_sources/content/groupBy.txt b/docs/_build/html/_sources/content/groupBy.txt deleted file mode 100644 index 178f8282..00000000 --- a/docs/_build/html/_sources/content/groupBy.txt +++ /dev/null @@ -1,194 +0,0 @@ -############### -5.22 groupBy -############### -**groupBy** is a useful tool that mimics the "groupBy" clause in database systems. Given a file or stream -that is sorted by the appropriate "grouping columns", groupBy will compute summary statistics on -another column in the file or stream. This will work with output from all BEDTools as well as any other -tab-delimited file or stream. - -**NOTE: When using groupBy, the input data must be ordered by the same -columns as specified with the -grp argument. For example, if -grp is 1,2,3, the the -data should be pre-grouped accordingly. When groupBy detects changes in the -group columns it then summarizes all lines with that group**. - - -========================================================================== -5.22.1 Usage and option summary -========================================================================== -Usage: -:: - groupBy [OPTIONS] -i <input> -opCol <input column> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-i** The input file that should be grouped and summarized. *Use "stdin" when using piped input*. - **Note: if -i is omitted, input is assumed to come from standard input (stdin)** -**-g OR -grp** Specifies which column(s) (1-based) should be used to group the input. The columns must be comma-separated and each column must be explicitly listed. No ranges (e.g. 1-4) yet allowed. *Default: 1,2,3* -**-c OR -opCol** Specify the column (1-based) that should be summarized. *Required*. -**-o OR -op** Specify the operation that should be applied to **opCol**. - - | Valid operations: - - | **sum** - *numeric only* - | **count** - *numeric or text* - | **min** - *numeric only* - | **max** - *numeric only* - | **mean** - *numeric only* - | **stdev** - *numeric only* - | **median** - *numeric only* - | **mode** - *numeric or text* - | **antimode** - *numeric or text* - | **collapse** (i.e., print a comma separated list) - *numeric or text* - | **freqasc** - *print a comma separated list of values observed and the number of times they were observed. Reported in ascending order of frequency* - | **freqdesc** - *print a comma separated list of values observed and the number of times they were observed. Reported in descending order of frequency* - - | *Default: sum* -=========================== =============================================================================================================================================================================================================== - - - - - -========================================================================== -5.22.2 Default behavior. -========================================================================== -Let's imagine we have three incredibly interesting genetic variants that we are studying and we are -interested in what annotated repeats these variants overlap. -:: - cat variants.bed - chr21 9719758 9729320 variant1 - chr21 9729310 9757478 variant2 - chr21 9795588 9796685 variant3 - - intersectBed -a variants.bed -b repeats.bed -wa -wb > variantsToRepeats.bed - cat variantsToRepeats.bed - chr21 9719758 9729320 variant1 chr21 9719768 9721892 ALR/Alpha 1004 + - chr21 9719758 9729320 variant1 chr21 9721905 9725582 ALR/Alpha 1010 + - chr21 9719758 9729320 variant1 chr21 9725582 9725977 L1PA3 3288 + - chr21 9719758 9729320 variant1 chr21 9726021 9729309 ALR/Alpha 1051 + - chr21 9729310 9757478 variant2 chr21 9729320 9729809 L1PA3 3897 - - chr21 9729310 9757478 variant2 chr21 9729809 9730866 L1P1 8367 + - chr21 9729310 9757478 variant2 chr21 9730866 9734026 ALR/Alpha 1036 - - chr21 9729310 9757478 variant2 chr21 9734037 9757471 ALR/Alpha 1182 - - chr21 9795588 9796685 variant3 chr21 9795589 9795713 (GAATG)n 308 + - chr21 9795588 9796685 variant3 chr21 9795736 9795894 (GAATG)n 683 + - chr21 9795588 9796685 variant3 chr21 9795911 9796007 (GAATG)n 345 + - chr21 9795588 9796685 variant3 chr21 9796028 9796187 (GAATG)n 756 + - chr21 9795588 9796685 variant3 chr21 9796202 9796615 (GAATG)n 891 + - chr21 9795588 9796685 variant3 chr21 9796637 9796824 (GAATG)n 621 + - - -We can see that variant1 overlaps with 3 repeats, variant2 with 4 and variant3 with 6. We can use -groupBy to summarize the hits for each variant in several useful ways. The default behavior is to -compute the *sum* of the opCol. -:: - groupBy -i variantsToRepeats.bed -grp 1,2,3 -opCol 9 - chr21 9719758 9729320 6353 - chr21 9729310 9757478 14482 - chr21 9795588 9796685 3604 - - - -========================================================================== -5.22.3 Computing the min and max. -========================================================================== -Now let's find the *min* and *max* repeat score for each variant. We do this by "grouping" on the variant -coordinate columns (i.e. cols. 1,2 and 3) and ask for the min and max of the repeat score column (i.e. -col. 9). -:: - groupBy -i variantsToRepeats.bed -g 1,2,3 -c 9 -o min - chr21 9719758 9729320 1004 - chr21 9729310 9757478 1036 - chr21 9795588 9796685 308 - -We can also group on just the *name* column with similar effect. -:: - groupBy -i variantsToRepeats.bed -grp 4 -opCol 9 -op min - variant1 1004 - variant2 1036 - variant3 308 - -What about the *max* score? Let's keep the coordinates and the name of the variants so that we -stay in BED format. -:: - groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op max - chr21 9719758 9729320 variant1 3288 - chr21 9729310 9757478 variant2 8367 - chr21 9795588 9796685 variant3 891 - - - -========================================================================== -5.22.4 Computing the mean and median. -========================================================================== -Now let's find the *mean* and *median* repeat score for each variant. -:: - cat variantsToRepeats.bed | groupBy -g 1,2,3,4 -c 9 -o mean - chr21 9719758 9729320 variant1 1588.25 - chr21 9729310 9757478 variant2 3620.5 - chr21 9795588 9796685 variant3 600.6667 - - groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op median - chr21 9719758 9729320 variant1 1030.5 - chr21 9729310 9757478 variant2 2539.5 - chr21 9795588 9796685 variant3 652 - - -========================================================================== -5.22.5 Computing the mode and "antimode". -========================================================================== -Now let's find the *mode* and *antimode* (i.e., the least frequent) repeat score for each variant (in this case -they are identical). -:: - groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op mode - chr21 9719758 9729320 variant1 1004 - chr21 9729310 9757478 variant2 1036 - chr21 9795588 9796685 variant3 308 - - groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op antimode - chr21 9719758 9729320 variant1 1004 - chr21 9729310 9757478 variant2 1036 - chr21 9795588 9796685 variant3 308 - - - -========================================================================== -5.22.6 Computing the count of lines for a given group. -========================================================================== -Figure: -:: - groupBy -i variantsToRepeats.bed -g 1,2,3,4 -c 9 -c count - chr21 9719758 9729320 variant1 4 - chr21 9729310 9757478 variant2 4 - chr21 9795588 9796685 variant3 6 - - - - -========================================================================== -5.22.7 Collapsing: listing all of the values in the opCol for a given group. -========================================================================== -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This "denormalizes" things. Now you have a list of all the -repeats on a single line. -:: - groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op collapse - chr21 9719758 9729320 variant1 ALR/Alpha,ALR/Alpha,L1PA3,ALR/Alpha, - chr21 9729310 9757478 variant2 L1PA3,L1P1,ALR/Alpha,ALR/Alpha, - chr21 9795588 9796685 variant3 (GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n, - - - -========================================================================== -5.22.8 Computing frequencies: freqasc and freqdesc. -========================================================================== -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This "denormalizes" things. Now you have a list of all the -repeats on a single line. -:: - cat variantsToRepeats.bed | groupBy -g 1 -c 8 -o freqdesc - chr21 (GAATG)n:6,ALR/Alpha:5,L1PA3:2,L1P1:1, - - cat variantsToRepeats.bed | groupBy -g 1 -c 8 -o freqasc - chr21 L1P1:1,L1PA3:2,ALR/Alpha:5,(GAATG)n:6, \ No newline at end of file diff --git a/docs/_build/html/_sources/content/installation.txt b/docs/_build/html/_sources/content/installation.txt deleted file mode 100644 index 675cb33d..00000000 --- a/docs/_build/html/_sources/content/installation.txt +++ /dev/null @@ -1,25 +0,0 @@ -############ -Installation -############ - -BEDTools is intended to run in a "command line" environment on UNIX, LINUX and Apple OS X -operating systems. Installing BEDTools involves downloading the latest source code archive followed by -compiling the source code into binaries on your local system. The following commands will install -BEDTools in a local directory on a NIX or OS X machine. Note that the **"<version>"** refers to the -latest posted version number on http://bedtools.googlecode.com/. - -Note: *The BEDTools "makefiles" use the GCC compiler. One should edit the Makefiles accordingly if -one wants to use a different compiler.*:: - - curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz - tar -zxvf BEDTools.tar.gz - cd BEDTools-<version> - make clean - make all - ls bin - -At this point, one should copy the binaries in BEDTools/bin/ to either usr/local/bin/ or some -other repository for commonly used UNIX tools in your environment. You will typically require -administrator (e.g. "root" or "sudo") privileges to copy to usr/local/bin/. If in doubt, contact you -system administrator for help. - diff --git a/docs/_build/html/_sources/content/intersectBed.txt b/docs/_build/html/_sources/content/intersectBed.txt deleted file mode 100644 index db4632ff..00000000 --- a/docs/_build/html/_sources/content/intersectBed.txt +++ /dev/null @@ -1,385 +0,0 @@ -######################################### -5.1 intersect -######################################### - -By far, the most common question asked of two sets of genomic features is whether or not any of the -features in the two sets "overlap" with one another. This is known as feature intersection. **bedtools intersect** -allows one to screen for overlaps between two sets of genomic features. Moreover, it allows one to have -fine control as to how the intersections are reported. **bedtools intersect** works with both BED/GFF/VCF -and BAM files as input. - -=============================== -5.1.1 Usage and option summary -=============================== -**Usage**: -:: - - bedtools intersect [OPTIONS] [-a <BED/GFF/VCF> || -abam <BAM>] -b <BED/GFF/VCF> - - intersectBed [OPTIONS] [-a <BED/GFF/VCF> || -abam <BAM>] -b <BED/GFF/VCF> - - - -=========================== ========================================================================================================================================================= -Option Description -=========================== ========================================================================================================================================================= -**-a** BED/GFF/VCF file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. -**-b** BED/GFF/VCF file B. Use "stdin" if passing B with a UNIX pipe. -**-abam** BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view -b <BAM> | bedtools intersect -abam stdin -b genes.bed -**-ubam** Write uncompressed BAM output. The default is write compressed BAM output. -**-bed** When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: bedtools intersect -abam reads.bam -b genes.bed -bed -**-wa** Write the original entry in A for each overlap. -**-wb** Write the original entry in B for each overlap. Useful for knowing what A overlaps. Restricted by -f and -r. -**-wo** Write the original A and B entries plus the number of base pairs of overlap between the two features. Only A features with overlap are reported. Restricted by -f and -r. -**-wao** Write the original A and B entries plus the number of base pairs of overlap between the two features. However, A features w/o overlap are also reported with a NULL B feature and overlap = 0. Restricted by -f and -r. -**-u** Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. Restricted by -f and -r. -**-c** For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B. Restricted by -f and -r. -**-v** Only report those entries in A that have no overlap in B. Restricted by -f and -r. -**-f** Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -**-r** Require that the fraction of overlap be reciprocal for A and B. In other words, if -f is 0.90 and -r is used, this requires that B overlap at least 90% of A and that A also overlaps at least 90% of B. -**-s** Force "strandedness". That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -**-split** Treat "split" BAM (i.e., having an "N" CIGAR operation) or BED12 entries as distinct BED intervals. -=========================== ========================================================================================================================================================= - - -=============================== -5.1.2 Default behavior -=============================== -By default, if an overlap is found, **bedtools intersect** reports the shared interval between the two -overlapping features. - -For example: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - - bedtools intersect -a A.bed -b B.bed - chr1 15 20 - -.. plot:: - - a = """chr1 10 20\nchr1 30 40""" - b = """chr1 15 20""" - - title = "bedtools intersect -a A.bed -b B.bed" - from matplotlib.pyplot import show - from pyplots.plotter import plot_a_b_tool - plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed') - show() - -============================================= -5.1.3 (-wa) Reporting the original A feature -============================================= -Instead, one can force **bedtools intersect** to report the *original* **"A"** feature when an overlap is found. As -shown below, the entire "A" feature is reported, not just the portion that overlaps with the "B" feature. - -For example: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - - bedtools intersect -a A.bed -b B.bed -wa - chr1 10 20 - -.. plot:: - - a = """chr1 10 20\nchr1 30 40""" - b = """chr1 15 20""" - - title = "bedtools intersect -a A.bed -b B.bed -wa" - from matplotlib.pyplot import show - from pyplots.plotter import plot_a_b_tool - plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed', wa=True) - show() - - -============================================= -5.1.4 (-wb) Reporting the original B feature -============================================= -Similarly, one can force **bedtools intersect** to report the *original* **"B"** feature when an overlap is found. If -just -wb is used, the overlapping portion of A will be reported followed by the *original* **"B"**. If both -wa -and -wb are used, the *originals* of both **"A"** and **"B"** will be reported. - -For example (-wb alone): -:: -For example: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - - bedtools intersect -a A.bed -b B.bed -wb - chr1 15 20 chr 15 20 - - -Now -wa and -wb: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - - bedtools intersect -a A.bed -b B.bed -wa -wb - chr1 10 20 chr 15 20 - -======================================================================= -5.1.5 (-u) Reporting the presence of *at least one* overlapping feature -======================================================================= -Frequently a feature in "A" will overlap with multiple features in "B". By default, **bedtools intersect** will -report each overlap as a separate output line. However, one may want to simply know that there is at -least one overlap (or none). When one uses the -u option, "A" features that overlap with one or more -"B" features are reported once. Those that overlap with no "B" features are not reported at all. - - -For example (*without* -u): -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - chr1 18 25 - - bedtools intersect -a A.bed -b B.bed -wb - chr1 10 20 chr 15 20 - chr1 10 20 chr 18 25 - -For example (*with* -u): -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - chr1 18 25 - - bedtools intersect -a A.bed -b B.bed -u - chr1 10 20 - -======================================================================= -5.1.6 (-c) Reporting the number of overlapping features -======================================================================= -The -c option reports a column after each "A" feature indicating the *number* (0 or more) of overlapping -features found in "B". Therefore, *each feature in A is reported once*. - -For example: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - chr1 18 25 - - bedtools intersect -a A.bed -b B.bed -u - chr1 10 20 2 - chr1 30 40 0 - - -======================================================================= -5.1.7 (-v) Reporting the absence of any overlapping features -======================================================================= -There will likely be cases where you'd like to know which "A" features do not overlap with any of the -"B" features. Perhaps you'd like to know which SNPs don't overlap with any gene annotations. The -v -(an homage to "grep -v") option will only report those "A" features that have no overlaps in "B". - -For example: -:: - cat A.bed - chr1 10 20 - chr1 30 40 - - cat B.bed - chr1 15 20 - - bedtools intersect -a A.bed -b B.bed -v - chr1 30 40 - -.. plot:: - - a = """chr1 10 20\nchr1 30 40""" - b = """chr1 15 20""" - - title = "bedtools intersect -a A -b B -v" - from matplotlib.pyplot import show - from pyplots.plotter import plot_a_b_tool - plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed', v=True) - show() - - -======================================================================= -5.1.8 (-f) Requiring a minimal overlap fraction -======================================================================= -By default, **bedtools intersect** will report an overlap between A and B so long as there is at least one base -pair is overlapping. Yet sometimes you may want to restrict reported overlaps between A and B to cases -where the feature in B overlaps at least X% (e.g. 50%) of the A feature. The -f option does exactly -this. - -For example (note that the second B entry is not reported): -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 130 201 - chr1 180 220 - - bedtools intersect -a A.bed -b B.bed -f 0.50 -wa -wb - chr1 100 200 chr1 130 201 - -========================================================================== -5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction -========================================================================== -Similarly, you may want to require that a minimal fraction of both the A and the B features is -overlapped. For example, if feature A is 1kb and feature B is 1Mb, you might not want to report the -overlap as feature A can overlap at most 1% of feature B. If one set -f to say, 0.02, and one also -enable the -r (reciprocal overlap fraction required), this overlap would not be reported. - -For example (note that the second B entry is not reported): -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 130 201 - chr1 130 200000 - - bedtools intersect -a A.bed -b B.bed -f 0.50 -r -wa -wb - chr1 100 200 chr1 130 201 - -========================================================================== -5.1.10 (-s)Enforcing "strandedness" -========================================================================== -By default, **bedtools intersect** will report overlaps between features even if the features are on opposite -strands. However, if strand information is present in both BED files and the "-s" option is used, overlaps -will only be reported when features are on the same strand. - -For example (note that the second B entry is not reported): -:: - cat A.bed - chr1 100 200 a1 100 + - - cat B.bed - chr1 130 201 b1 100 - - chr1 130 201 b2 100 + - - bedtools intersect -a A.bed -b B.bed -wa -wb -s - chr1 100 200 a1 100 + chr1 130 201 b2 100 + - - -========================================================================== -5.1.11 (-abam)Default behavior when using BAM input -========================================================================== -When comparing alignments in BAM format (**-abam**) to features in BED format (**-b**), **bedtools intersect** -will, **by default**, write the output in BAM format. That is, each alignment in the BAM file that meets -the user's criteria will be written (to standard output) in BAM format. This serves as a mechanism to -create subsets of BAM alignments are of biological interest, etc. Note that only the mate in the BAM -alignment is compared to the BED file. Thus, if only one end of a paired-end sequence overlaps with a -feature in B, then that end will be written to the BAM output. By contrast, the other mate for the -pair will not be written. One should use **pairToBed(Section 5.2)** if one wants each BAM alignment -for a pair to be written to BAM output. - -For example: -:: - bedtools intersect -abam reads.unsorted.bam -b simreps.bed | samtools view - | head -3 - - BERTHA_0001:3:1:15:1362#0 99 chr4 9236904 0 50M = 9242033 5 1 7 9 - AGACGTTAACTTTACACACCTCTGCCAAGGTCCTCATCCTTGTATTGAAG W c T U ] b \ g c e g X g f c b f c c b d d g g V Y P W W _ - \c`dcdabdfW^a^gggfgd XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:19 X1:i:2 XM:i:0 XO:i:0 XG:i:0 MD:Z:50 - BERTHA _0001:3:1:16:994#0 83 chr6 114221672 37 25S6M1I11M7S = - 114216196 -5493 G A A A G G C C A G A G T A T A G A A T A A A C A C A A C A A T G T C C A A G G T A C A C T G T T A - gffeaaddddggggggedgcgeggdegggggffcgggggggegdfggfgf XT:A:M NM:i:3 SM:i:37 AM:i:37 XM:i:2 X O : i : - 1 XG:i:1 MD:Z:6A6T3 - BERTHA _0001:3:1:16:594#0 147 chr8 43835330 0 50M = - 43830893 -4487 CTTTGGGAGGGCTTTGTAGCCTATCTGGAAAAAGGAAATATCTTCCCATG U - \e^bgeTdg_Kgcg`ggeggg_gggggggggddgdggVg\gWdfgfgff XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:10 X1:i:7 X M : i : - 2 XO:i:0 XG:i:0 MD:Z:1A2T45 - - -========================================================================== -5.1.12 (-bed)Output BED format when using BAM input -========================================================================== -When comparing alignments in BAM format (**-abam**) to features in BED format (**-b**), **bedtools intersect** -will **optionally** write the output in BED format. That is, each alignment in the BAM file is converted -to a 6 column BED feature and if overlaps are found (or not) based on the user's criteria, the BAM -alignment will be reported in BED format. The BED "name" field is comprised of the RNAME field in -the BAM alignment. If mate information is available, the mate (e.g., "/1" or "/2") field will be -appended to the name. The "score" field is the mapping quality score from the BAM alignment. - -For example: -:: - bedtools intersect -abam reads.unsorted.bam -b simreps.bed -bed | head -20 - - chr4 9236903 9236953 BERTHA_0001:3:1:15:1362#0/1 0 + - chr6 114221671 114221721 BERTHA_0001:3:1:16:994#0/1 37 - - chr8 43835329 43835379 BERTHA_0001:3:1:16:594#0/2 0 - - chr4 49110668 49110718 BERTHA_0001:3:1:31:487#0/1 23 + - chr19 27732052 27732102 BERTHA_0001:3:1:32:890#0/2 46 + - chr19 27732012 27732062 BERTHA_0001:3:1:45:1135#0/1 37 + - chr10 117494252 117494302 BERTHA_0001:3:1:68:627#0/1 37 - - chr19 27731966 27732016 BERTHA_0001:3:1:83:931#0/2 9 + - chr8 48660075 48660125 BERTHA_0001:3:1:86:608#0/2 37 - - chr9 34986400 34986450 BERTHA_0001:3:1:113:183#0/2 37 - - chr10 42372771 42372821 BERTHA_0001:3:1:128:1932#0/1 3 - - chr19 27731954 27732004 BERTHA_0001:3:1:130:1402#0/2 0 + - chr10 42357337 42357387 BERTHA_0001:3:1:137:868#0/2 9 + - chr1 159720631 159720681 BERTHA_0001:3:1:147:380#0/2 37 - - chrX 58230155 58230205 BERTHA_0001:3:1:151:656#0/2 37 - - chr5 142612746 142612796 BERTHA_0001:3:1:152:1893#0/1 37 - - chr9 71795659 71795709 BERTHA_0001:3:1:177:387#0/1 37 + - chr1 106240854 106240904 BERTHA_0001:3:1:194:928#0/1 37 - - chr4 74128456 74128506 BERTHA_0001:3:1:221:724#0/1 37 - - chr8 42606164 42606214 BERTHA_0001:3:1:244:962#0/1 37 + - -================================================================================== -5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features -================================================================================== -As described in section 1.3.19, bedtools intersect will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only screen for overlaps for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The **-split** command allows for such overlaps to be -performed. - -For example, the diagram below illustrates the *default* behavior. The blue dots represent the "split/ -spliced" portion of the alignment (i.e., CIGAR "N" operation). In this case, the two exon annotations -are reported as overlapping with the "split" BAM alignment, but in addition, a third feature that -overlaps the "split" portion of the alignment is also reported. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Exons --------------- ---------- - - BED/BAM A ************.......................................**** - - BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - - Result =============== ======== ========== - - -In contrast, when using the **-split** option, only the exon overlaps are reported. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Exons --------------- ---------- - - BED/BAM A ************.......................................**** - - BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - - Result =============== ========== \ No newline at end of file diff --git a/docs/_build/html/_sources/content/linksBed.txt b/docs/_build/html/_sources/content/linksBed.txt deleted file mode 100644 index ca32e8b2..00000000 --- a/docs/_build/html/_sources/content/linksBed.txt +++ /dev/null @@ -1,74 +0,0 @@ -############### -5.16 linksBed -############### -Creates an HTML file with links to an instance of the UCSC Genome Browser for all features / -intervals in a file. This is useful for cases when one wants to manually inspect through a large set of -annotations or features. - -========================================================================== -5.16.1 Usage and option summary -========================================================================== -Usage: -:: - linksBed [OPTIONS] -i <BED/GFF/VCF> > <HTML file> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-base** The "basename" for the UCSC browser. *Default: http://genome.ucsc.edu* -**-org** The organism (e.g. mouse, human). *Default: human* -**-db** The genome build. *Default: hg18* -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.16.2 Default behavior -========================================================================== -By default, **linksBed** creates links to the public UCSC Genome Browser. - -For example: -:: - head genes.bed - chr21 9928613 10012791 uc002yip.1 0 - - chr21 9928613 10012791 uc002yiq.1 0 - - chr21 9928613 10012791 uc002yir.1 0 - - chr21 9928613 10012791 uc010gkv.1 0 - - chr21 9928613 10061300 uc002yis.1 0 - - chr21 10042683 10120796 uc002yit.1 0 - - chr21 10042683 10120808 uc002yiu.1 0 - - chr21 10079666 10120808 uc002yiv.1 0 - - chr21 10080031 10081687 uc002yiw.1 0 - - chr21 10081660 10120796 uc002yix.2 0 - - - linksBed -i genes.bed > genes.html - -When genes.html is opened in a web browser, one should see something like the following, where each -link on the page is built from the features in genes.bed: - - - - - -========================================================================== -5.16.3 Creating HTML links to a local UCSC Browser installation -========================================================================== -Optionally, **linksBed** will create links to a local copy of the UCSC Genome Browser. - -For example: -:: - head -3 genes.bed - chr21 9928613 10012791 uc002yip.1 0 - - chr21 9928613 10012791 uc002yiq.1 0 - - - linksBed -i genes.bed -base http://mirror.uni.edu > genes.html - -One can point the links to the appropriate organism and genome build as well: -:: - head -3 genes.bed - chr21 9928613 10012791 uc002yip.1 0 - - chr21 9928613 10012791 uc002yiq.1 0 - - - linksBed -i genes.bed -base http://mirror.uni.edu -org mouse -db mm9 > genes.html - diff --git a/docs/_build/html/_sources/content/maskfastafromBed.txt b/docs/_build/html/_sources/content/maskfastafromBed.txt deleted file mode 100644 index 1a8530e0..00000000 --- a/docs/_build/html/_sources/content/maskfastafromBed.txt +++ /dev/null @@ -1,70 +0,0 @@ -############### -5.12 maskFastaFromBed -############### -**maskFastaFromBed** masks sequences in a FASTA file based on intervals defined in a feature file. The -headers in the input FASTA file must exactly match the chromosome column in the feature file. This -may be useful fro creating your own masked genome file based on custom annotations or for masking all -but your target regions when aligning sequence data from a targeted capture experiment. - - -========================================================================== -5.12.1 Usage and option summary -========================================================================== -Usage: -:: - maskFastaFromBed [OPTIONS] -fi <input FASTA> -bed <BED/GFF/VCF> -fo <output FASTA> - -NOTE: The input and output FASTA files must be different. - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-soft** Soft-mask (that is, convert to lower-case bases) the FASTA sequence. *By default, hard-masking (that is, conversion to Ns) is performed*. -=========================== =============================================================================================================================================================================================================== - - - - - - -========================================================================== -5.12.2 Default behavior -========================================================================== -**maskFastaFromBed** will mask a FASTA file based on the intervals in a BED file. The newly masked -FASTA file is written to the output FASTA file. - -For example: -:: - cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 5 10 - - maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - - cat test.fa.out - >chr1 - AAAAANNNNNCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - -========================================================================== -5.12.3 Soft-masking the FASTA file. -========================================================================== -Using the **-soft** option, one can optionally "soft-mask" the FASTA file. - -For example: -:: - cat test.fa - >chr1 - AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - - cat test.bed - chr1 5 10 - - maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -soft - - cat test.fa.out - >chr1 - AAAAAaaaccCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG diff --git a/docs/_build/html/_sources/content/mergeBed.txt b/docs/_build/html/_sources/content/mergeBed.txt deleted file mode 100644 index 16f73cc0..00000000 --- a/docs/_build/html/_sources/content/mergeBed.txt +++ /dev/null @@ -1,120 +0,0 @@ -############### -5.8 mergeBed -############### -**mergeBed** combines overlapping or "book-ended" (that is, one base pair away) features in a feature file -into a single feature which spans all of the combined features. - -========================================================================== -5.8.1 Usage and option summary -========================================================================== -Usage: -:: - mergeBed [OPTIONS] -i <BED/GFF/VCF> - -=========================== =============================================================================================================================================================================================================== -Option Description -=========================== =============================================================================================================================================================================================================== -**-s** Force strandedness. That is, only merge features that are the same strand. *By default, this is disabled*. -**-n** Report the number of BED entries that were merged. *1 is reported if no merging occurred*. -**-d** Maximum distance between features allowed for features to be merged. *Default is 0. That is, overlapping and/or book-ended features are merged*. -**-nms** Report the names of the merged features separated by semicolons. -=========================== =============================================================================================================================================================================================================== - - - - - -========================================================================== -5.8.2 Default behavior -========================================================================== -Figure: -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BED FILE ************* *************** ********************** - ******** - - Result =============================== ====================== - - - -For example: -:: - cat A.bed - chr1 100 200 - chr1 180 250 - chr1 250 500 - chr1 501 1000 - - mergeBed -i A.bed - chr1 100 500 - chr1 501 1000 - - - - - - -========================================================================== -5.8.3 (-s)Enforcing "strandedness" -========================================================================== -This option behaves the same as the -s option for intersectBed while scanning for features that should -be merged. Only features on the same strand will be merged. See the discussion in the intersectBed -section for details. - -========================================================================== -5.8.4 (-n)Reporting the number of features that were merged -========================================================================== -The -n option will report the number of features that were combined from the original file in order to -make the newly merged feature. If a feature in the original file was not merged with any other features, -a "1" is reported. - -For example: -:: - cat A.bed - chr1 100 200 - chr1 180 250 - chr1 250 500 - chr1 501 1000 - - mergeBed -i A.bed -n - chr1 100 500 3 - chr1 501 1000 1 - - -========================================================================== -5.8.5 (-d)Controlling how close two features must be in order to merge -========================================================================== -By default, only overlapping or book-ended features are combined into a new feature. However, one can -force mergeBed to combine more distant features with the -d option. For example, were one to set -d to -1000, any features that overlap or are within 1000 base pairs of one another will be combined. - -For example: -:: - cat A.bed - chr1 100 200 - chr1 501 1000 - - mergeBed -i A.bed - chr1 100 200 - chr1 501 1000 - - mergeBed -i A.bed -d 1000 - chr1 100 200 1000 - -========================================================================== -5.8.6 (-nms)Reporting the names of the features that were merged -========================================================================== -Occasionally, one might like to know that names of the features that were merged into a new feature. -The -nms option will add an extra column to the mergeBed output which lists (separated by -semicolons) the names of the merged features. - -For example: -:: - cat A.bed - chr1 100 200 A1 - chr1 150 300 A2 - chr1 250 500 A3 - - mergeBed -i A.bed -nms - chr1 100 500 A1;A2;A3 diff --git a/docs/_build/html/_sources/content/overlap.txt b/docs/_build/html/_sources/content/overlap.txt deleted file mode 100644 index 418c4c8a..00000000 --- a/docs/_build/html/_sources/content/overlap.txt +++ /dev/null @@ -1,41 +0,0 @@ -############### -5.19 overlap -############### -**overlap** computes the amount of overlap (in the case of positive values) or distance (in the case of -negative values) between feature coordinates occurring on the same input line and reports the result at -the end of the same line. In this way, it is a useful method for computing custom overlap scores from -the output of other BEDTools. - -========================================================================== -5.19.1 Usage and option summary -========================================================================== -Usage: -:: - overlap [OPTIONS] -i <input> -cols s1,e1,s2,e2 - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-i** Input file. Use "stdin" for pipes. -**-cols** Specify the columns (1-based) for the starts and ends of the features for which you'd like to compute the overlap/distance. The columns must be listed in the following order: *start1,end1,start2,end2* -=========================== =============================================================================================================================================================================================================== - - - -========================================================================== -5.19.2 Default behavior -========================================================================== -The default behavior is to compute the amount of overlap between the features you specify based on the -start and end coordinates. For example: -:: - windowBed -a A.bed -b B.bed -w 10 - chr1 10 20 A chr1 15 25 B - chr1 10 20 C chr1 25 35 D - -# Now let's say we want to compute the number of base pairs of overlap -# between the overlapping features from the output of windowBed. -:: - windowBed -a A.bed -b B.bed -w 10 | overlap -i stdin -cols 2,3,6,7 - chr1 10 20 A chr1 15 25 B 5 - chr1 10 20 C chr1 25 35 D -5 - diff --git a/docs/_build/html/_sources/content/overview.txt b/docs/_build/html/_sources/content/overview.txt deleted file mode 100644 index a836365e..00000000 --- a/docs/_build/html/_sources/content/overview.txt +++ /dev/null @@ -1,348 +0,0 @@ -.. role:: red - -############ -Overview -############ - -========== -1.1 Background -========== - -The development of BEDTools was motivated by a need for fast, flexible tools with which to compare large sets of genomic -features. Answering fundamental research questions with existing tools was either too slow or required modifications to the -way they reported or computed their results. We were aware of the utilities on the UCSC Genome Browser and Galaxy websites, as -well as the elegant tools available as part of Jim Kent’s monolithic suite of tools (“Kent sourceâ€). However, we found that -the web-based tools were too cumbersome when working with large datasets generated by current sequencing technologies. -Similarly, we found that the Kent source command line tools often required a local installation of the UCSC Genome Browser. -These limitations, combined with the fact that we often wanted an extra option here or there that wasn’t available with -existing tools, led us to develop our own from scratch. The initial version of BEDTools was publicly released in the spring of -2009. The current version has evolved from our research experiences and those of the scientists using the suite over the last -year. The BEDTools suite enables one to answer common questions of genomic data in a fast and reliable manner. The fact that -almost all the utilities accept input from “stdin†allows one to “stream / pipe†several commands together to facilitate more -complicated analyses. Also, the tools allow fine control over how output is reported. The initial version of BEDTools -supported solely 6-column `BED <http://genome.ucsc.edu/FAQ/FAQformat#format1>`_ files. *However, we have subsequently added support for sequence alignments in* `BAM <http://samtools.sourceforge.net/>`_ -*format, as well as for features in* `GFF <http://genome.ucsc.edu/FAQ/FAQformat#format3>`_ , *“blocked†BED format, and* -`VCF <http://www.1000genomes.org/wiki/Analysis/Variant%20Call%20Format/vcf-variant-call-format-version-41>`_ *format*. -The tools are quite fast and typically finish in a matter of a few seconds, even for large datasets. This manual seeks to describe the behavior and -available functionality for each BEDTool. Usage examples are scattered throughout the text, and formal examples are -provided in the last two sections, we hope that this document will give you a sense of the flexibility of -the toolkit and the types of analyses that are possible with BEDTools. If you have further questions, please join the BEDTools -discussion group, visit the Usage Examples on the Google Code site (usage, advanced usage), or take a look at the nascent -“Usage From the Wild†page. - -=========================== -1.2 Summary of available tools. -=========================== - -BEDTools support a wide range of operations for interrogating and manipulating genomic features. The table below summarizes -the tools available in the suite. - -=========================== ========================================================================================================================================================= -Utility Description -=========================== ========================================================================================================================================================= -**intersectBed** Returns overlaps between two BED/GFF/VCF files. -**pairToBed** Returns overlaps between a paired-end BED file and a regular BED/VCF/GFF file. -**bamToBed** Converts BAM alignments to BED6, BED12, or BEDPE format. -**bedToBam** Converts BED/GFF/VCF features to BAM format. -**bed12ToBed6** Converts "blocked" BED12 features to discrete BED6 features. -**bedToIgv** Creates IGV batch scripts for taking multiple snapshots from BED/GFF/VCF features. -**coverageBed** Summarizes the depth and breadth of coverage of features in one BED versus features (e.g, windows, exons, etc.) defined in another BED/GFF/VCF file. -**multiBamCov** Counts sequence coverage for multiple position-sorted bams at specific loci defined in a BED/GFF/VCF file -**tagBam** Annotates a BAM file with custom tag fields based on overlaps with BED/GFF/VCF files -**nuclBed** Profiles the nucleotide content of intervals in a fasta file -**genomeCoverageBed** Creates either a histogram, BEDGRAPH, or a "per base" report of genome coverage. -**unionBedGraphs** Combines multiple BedGraph? files into a single file, allowing coverage/other comparisons between them. -**annotateBed** Annotates one BED/VCF/GFF file with overlaps from many others. -**groupBy** Deprecated. Now in the filo package. -**overlap** Returns the number of bases pairs of overlap b/w two features on the same line. -**pairToPair** Returns overlaps between two paired-end BED files. -**closestBed** Returns the closest feature to each entry in a BED/GFF/VCF file. -**subtractBed** Removes the portion of an interval that is overlapped by another feature. -**windowBed** Returns overlaps between two BED/VCF/GFF files based on a user-defined window. -**mergeBed** Merges overlapping features into a single feature. -**complementBed** Returns all intervals not spanned by the features in a BED/GFF/VCF file. -**fastaFromBed** Creates FASTA sequences based on intervals in a BED/GFF/VCF file. -**maskFastaFromBed** Masks a FASTA file based on BED coordinates. -**shuffleBed** Randomly permutes the locations of a BED file among a genome. -**slopBed** Adjusts each BED entry by a requested number of base pairs. -**flankBed** Creates flanking intervals for each feature in a BED/GFF/VCF file. -**sortBed** Sorts a BED file by chrom, then start position. Other ways as well. -**linksBed** Creates an HTML file of links to the UCSC or a custom browser. -=========================== ========================================================================================================================================================= - - - - - - -=========================== -1.3 Fundamental concepts. -=========================== ------------------------------------------------------- -1.3.1 What are genome features and how are they represented? ------------------------------------------------------- -Throughout this manual, we will discuss how to use BEDTools to manipulate, compare and ask questions of genome “featuresâ€. Genome features can be functional elements (e.g., genes), genetic polymorphisms (e.g. -SNPs, INDELs, or structural variants), or other annotations that have been discovered or curated by genome sequencing groups or genome browser groups. In addition, genome features can be custom annotations that -an individual lab or researcher defines (e.g., my novel gene or variant). - -The basic characteristics of a genome feature are the chromosome or scaffold on which the feature “residesâ€, the base pair on which the -feature starts (i.e. the “startâ€), the base pair on which feature ends (i.e. the “endâ€), the strand on which the feature exists (i.e. “+†or “-“), and the name of the feature if one is applicable. - -The two most widely used formats for representing genome features are the BED (Browser Extensible Data) and GFF (General Feature Format) formats. BEDTools was originally written to work exclusively with genome features -described using the BED format, but it has been recently extended to seamlessly work with BED, GFF and VCF files. - -Existing annotations for the genomes of many species can be easily downloaded in BED and GFF -format from the UCSC Genome Browser’s “Table Browser†(http://genome.ucsc.edu/cgi-bin/hgTables?command=start) or from the “Bulk Downloads†page (http://hgdownload.cse.ucsc.edu/downloads.html). In addition, the -Ensemble Genome Browser contains annotations in GFF/GTF format for many species (http://www.ensembl.org/info/data/ftp/index.html) - -------------------------------------- -1.3.2 Overlapping / intersecting features. -------------------------------------- -Two genome features (henceforth referred to as “featuresâ€) are said to overlap or intersect if they share at least one base in common. -In the figure below, Feature A intersects/overlaps Feature B, but it does not intersect/overlap Feature C. - -**TODO: place figure here** - --------------------------------------------- -1.3.3 Comparing features in file “A†and file “Bâ€. --------------------------------------------- -The previous section briefly introduced a fundamental naming convention used in BEDTools. Specifically, all BEDTools that compare features contained in two distinct files refer to one file as feature set “A†and the other file as feature set “Bâ€. This is mainly in the interest of brevity, but it also has its roots in set theory. -As an example, if one wanted to look for SNPs (file A) that overlap with exons (file B), one would use intersectBed in the following manner:: - - intersectBed –a snps.bed –b exons.bed - -There are two exceptions to this rule: 1) When the “A†file is in BAM format, the “-abam†option must bed used. For example:: - - intersectBed –abam alignedReads.bam –b exons.bed - -And 2) For tools where only one input feature file is needed, the “-i†option is used. For example:: - - mergeBed –i repeats.bed - ------------------------------------------------------ -1.3.4 BED starts are zero-based and BED ends are one-based. ------------------------------------------------------ -BEDTools users are sometimes confused by the way the start and end of BED features are represented. Specifically, BEDTools uses the UCSC Genome Browser’s internal database convention of making the start position 0-based and the end position 1-based: (http://genome.ucsc.edu/FAQ/FAQtracks#tracks1) -In other words, BEDTools interprets the “start†column as being 1 basepair higher than what is represented in the file. For example, the following BED feature represents a single base on chromosome 1; namely, the 1st base:: - - chr1 0 1 first_base - -Why, you might ask? The advantage of storing features this way is that when computing the length of a feature, one must simply subtract the start from the end. Were the start position 1-based, -the calculation would be (slightly) more complex (i.e. (end-start)+1). Thus, storing BED features this way reduces the computational burden. - ------------------------------------------------------ -1.3.5 GFF starts and ends are one-based. ------------------------------------------------------ -In contrast, the GFF format uses 1-based coordinates for both the start and the end positions. BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your GFF features for them to work correctly with BEDTools. - ------------------------------------------------------ -1.3.6 VCF coordinates are one-based. ------------------------------------------------------ -The VCF format uses 1-based coordinates. As in GFF, BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your VCF features for them to work correctly with BEDTools. - ------------------------------------------------------ -1.3.7 File B is loaded into memory (most of the time). ------------------------------------------------------ -Whenever a BEDTool compares two files of features, the “B†file is loaded into memory. By contrast, the “A†file is processed line by line and compared with the features from B. -Therefore to minimize memory usage, one should set the smaller of the two files as the B file. One salient example is the comparison of aligned sequence reads from a -current DNA sequencer to gene annotations. In this case, the aligned sequence file (in BED format) may have tens of millions of features (the sequence alignments), -while the gene annotation file will have tens of thousands of features. In this case, it is wise to sets the reads as file A and the genes as file B. - ------------------------------------------------------ -1.3.8 Feature files *must* be tab-delimited. ------------------------------------------------------ -This is rather self-explanatory. While it is possible to allow BED files to be space-delimited, we have decided to require tab delimiters for three reasons: - -1. By requiring one delimiter type, the processing time is minimized. -2. Tab-delimited files are more amenable to other UNIX utilities. -3. GFF files can contain spaces within attribute columns. This complicates the use of space-delimited files as spaces must therefore be treated specially depending on the context. - -------------------------------------------------------------- -1.3.9 All BEDTools allow features to be “piped†via standard input. -------------------------------------------------------------- - -In an effort to allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, all BEDTools allow features -to be passed to them via standard input. Only one feature file may be passed to a BEDTool via standard input. -The convention used by all BEDTools is to set either file A or file B to “stdin†or "-". For example:: - - cat snps.bed | intersectBed –a stdin –b exons.bed - cat snps.bed | intersectBed –a - –b exons.bed - -In addition, all BEDTools that simply require one main input file (the -i file) will assume that input is -coming from standard input if the -i parameter is ignored. For example, the following are equivalent:: - - cat snps.bed | sortBed –i stdin - cat snps.bed | sortBed - ------------------------------------------------------- -1.3.10 Most BEDTools write their results to standard output. ------------------------------------------------------- -To allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, -most BEDTools report their output to standard output, rather than to a named file. If one wants to write the output to a named file, one can use the UNIX “file redirection†symbol “>†to do so. -Writing to standard output (the default):: - - intersectBed –a snps.bed –b exons.bed - chr1 100100 100101 rs233454 - chr1 200100 200101 rs446788 - chr1 300100 300101 rs645678 - -Writing to a file:: - - intersectBed –a snps.bed –b exons.bed > snps.in.exons.bed - - cat snps.in.exons.bed - chr1 100100 100101 rs233454 - chr1 200100 200101 rs446788 - chr1 300100 300101 rs645678 - ------------------------- -1.3.11 What is a “genome†file? ------------------------- -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which species / genome build you are working. -The way you do this for BEDTools is to create a “genome†file, which simply lists the names of the -chromosomes (or scaffolds, etc.) and their size (in basepairs). -Genome files must be tab-delimited and are structured as follows (this is an example for C. elegans):: - - chrI 15072421 - chrII 15279323 - ... - chrX 17718854 - chrM 13794 - -BEDTools includes predefined genome files for human and mouse in the /genomes directory included -in the BEDTools distribution. Additionally, the “chromInfo†files/tables available from the UCSC -Genome Browser website are acceptable. For example, one can download the hg19 chromInfo file here: -http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz - ------------------------------------- -1.3.12 Paired-end BED files (BEDPE files). ------------------------------------- -We have defined a new file format (BEDPE) to concisely describe disjoint genome features, such as -structural variations or paired-end sequence alignments. We chose to define a new format because the -existing BED block format (i.e. BED12) does not allow inter-chromosomal feature definitions. Moreover, -the BED12 format feels rather bloated when one want to describe events with only two blocks. - ------------------------------------------- -1.3.13 Use “-h†for help with any BEDTool. ------------------------------------------- -Rather straightforward. If you use the “-h†option with any BEDTool, a full menu of example usage -and available options (when applicable) will be reported. - --------------------------------------------------- -1.3.14 BED features must not contain negative positions. --------------------------------------------------- -BEDTools will typically reject BED features that contain negative positions. In special cases, however, -BEDPE positions may be set to -1 to indicate that one or more ends of a BEDPE feature is unaligned. - ---------------------------------------------------- -1.3.15 The start position must be <= to the end position. ---------------------------------------------------- -BEDTools will reject BED features where the start position is greater than the end position. - ------------------------------------------ -1.3.16 Headers are allowed in GFF and BED files ------------------------------------------ -BEDTools will ignore headers at the beginning of BED and GFF files. Valid header lines begin with a -“#†symbol, the work “trackâ€, or the word “browserâ€. For example, the following examples are valid -headers for BED or GFF files:: - - track name=aligned_read description="Illumina aligned reads†- chr5 100000 500000 read1 50 + - chr5 2380000 2386000 read2 60 - - - #This is a fascinating dataset - chr5 100000 500000 read1 50 + - chr5 2380000 2386000 read2 60 - - - browser position chr22:1-20000 - chr5 100000 500000 read1 50 + - chr5 2380000 2386000 read2 60 - - -------------------------------------------------------------- -1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzipped†-------------------------------------------------------------- -BEDTools will process gzipped BED, GFF, VCF and BEDPE files in the same manner as -uncompressed files. Gzipped files are auto-detected thanks to a helpful contribution from Gordon -Assaf. - ----------------------------------------------------------------------------- -1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features ----------------------------------------------------------------------------- -As of Version 2.8.0, five BEDTools (``intersectBed``, ``coverageBed``, ``genomeCoverageBed``, -``bamToBed``, and ``bed12ToBed6``) can properly handle “splitâ€/â€spliced†BAM alignments (i.e., having an -“N†CIGAR operation) and/or “blocked†BED (aka BED12) features. - -``intersectBed``, ``coverageBed``, and ``genomeCoverageBed`` will optionally handle “split†BAM and/or -“blocked†BED by using the ``-split`` option. This will cause intersects or coverage to be computed only -for the alignment or feature blocks. In contrast, without this option, the intersects/coverage would be -computed for the entire “span†of the alignment or feature, regardless of the size of the gaps between -each alignment or feature block. For example, imagine you have a RNA-seq read that originates from -the junction of two exons that were spliced together in a mRNA. In the genome, these two exons -happen to be 30Kb apart. Thus, when the read is aligned to the reference genome, one portion of the -read will align to the first exon, while another portion of the read will align ca. 30Kb downstream to the -other exon. The corresponding CIGAR string would be something like (assuming a 76bp read): -30M*3000N*46M. In the genome, this alignment “spans†3076 bp, yet the nucleotides in the sequencing -read only align “cover†76bp. Without the ``-split`` option, coverage or overlaps would be reported for the -entire 3076bp span of the alignment. However, with the ``-split`` option, coverage or overlaps will only -be reported for the portions of the read that overlap the exons (i.e. 30bp on one exon, and -46bp on the other). - - -Using the -split option with bamToBed causes “spliced/split†alignments to be reported in BED12 -format. Using the -split option with bed12ToBed6 causes “blocked†BED12 features to be reported in -BED6 format. - --------------------------------- -1.3.19 Writing uncompressed BAM output. --------------------------------- -When working with a large BAM file using a complex set of tools in a pipe/stream, it is advantageous -to pass uncompressed BAM output to each downstream program. This minimizes the amount of time -spent compressing and decompressing output from one program to the next. All BEDTools that create -BAM output (e.g. ``intersectBed``, ``windowBed``) will now optionally create uncompressed BAM output -using the ``-ubam`` option. - - - -===================================== -1.4 Implementation and algorithmic notes. -===================================== -BEDTools was implemented in C++ and makes extensive use of data structures and fundamental -algorithms from the Standard Template Library (STL). Many of the core algorithms are based upon the -genome binning algorithm described in the original UCSC Genome Browser paper (Kent et al, 2002). -The tools have been designed to inherit core data structures from central source files, thus allowing -rapid tool development and deployment of improvements and corrections. Support for BAM files is -made possible through Derek Barnett’s elegant C++ API called BamTools. - - - -===================================== -1.5 License and availability. -===================================== -BEDTools is freely available under a GNU Public License (Version 2) at: -http://bedtools.googlecode.com - - - -===================================== -1.6 Mailing list. -===================================== -A discussion group for reporting bugs, asking questions of the developer and of the user community, as -well as for requesting new features is available at: -http://groups.google.com/group/bedtools-discuss - - - -===================================== -1.7 Contributors. -===================================== -As open-source software, BEDTools greatly benefits from contributions made by other developers and -users of the tools. We encourage and welcome suggestions, contributions and complaints. This is how -software matures, improves and stays on top of the needs of its user community. The Google Code -(GC) site maintains a list of individuals who have contributed either source code or useful ideas for -improving the tools. In the near future, we hope to maintain a source repository on the GC site in -order to facilitate further contributions. We are currently unable to do so because we use Git for -version control, which is not yet supported by GC. \ No newline at end of file diff --git a/docs/_build/html/_sources/content/pairToBed.txt b/docs/_build/html/_sources/content/pairToBed.txt deleted file mode 100644 index 75db129a..00000000 --- a/docs/_build/html/_sources/content/pairToBed.txt +++ /dev/null @@ -1,378 +0,0 @@ -############### -5.2 pairToBed -############### -**pairToBed** compares each end of a BEDPE feature or a paired-end BAM alignment to a feature file in -search of overlaps. - -**NOTE: pairToBed requires that the BAM file is sorted/grouped by the read name. This -allows pairToBed to extract correct alignment coordinates for each end based on their -respective CIGAR strings. It also assumes that the alignments for a given pair come in -groups of twos. There is not yet a standard method for reporting multiple alignments -using BAM. pairToBed will fail if an aligner does not report alignments in pairs.** - -========================================================================== -5.2.1 Usage and option summary -========================================================================== -**Usage:** -:: - pairToBed [OPTIONS] [-a <BEDPE> || -abam <BAM>] -b <BED/GFF/VCF> - - -=========================== ========================================================================================================================================================= -Option Description -=========================== ========================================================================================================================================================= -**-a** BEDPE file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. Output will be in BEDPE format. -**-b** BED file B. Use "stdin" if passing B with a UNIX pipe. -**-abam** BAM file A. Each end of each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view ¨Cb <BAM> | pairToBed ¨Cabam stdin ¨Cb genes.bed | samtools view - -**-ubam** Write uncompressed BAM output. The default is write compressed BAM output. -**-bedpe** When using BAM input (-abam), write output as BEDPE. The default is to write output in BAM when using -abam. For example: pairToBed ¨Cabam reads.bam ¨Cb genes.bed ¨Cbedpe -**-ed** Use BAM total edit distance (NM tag) for BEDPE score. Default for BEDPE is to use the *minimum* of the two mapping qualities for the pair. When -ed is used the *total* edit distance from the two mates is reported as the score. -**-f** Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -**-s** Force "strandedness". That is, only report hits in B that overlap A on the **same** strand. By default, overlaps are reported without respect to strand. -**-type** - Approach to reporting overlaps between BEDPE and BED. - - - **either-** Report overlaps if either end of A overlaps B. - - - *Default* - - **neither-** Report A if neither end of A overlaps B. - - **xor-** Report overlaps if one and only one end of A overlaps B. - - **both-** Report overlaps if both ends of A overlap B. - - **notboth-** Report overlaps if neither end or one and only one end of A overlap B. - - **ispan-** Report overlaps between [end1, start2] of A and B. - - - Note: If chrom1 <> chrom2, entry is ignored. - - **ospan-** Report overlaps between [start1, end2] of A and B. - - - Note: If chrom1 <> chrom2, entry is ignored. - - **notispan-** Report A if ispan of A doesn't overlap B. - - Note: If chrom1 <> chrom2, entry is ignored. - - **notospan-** Report A if ospan of A doesn't overlap B. - - Note: If chrom1 <> chrom2, entry is ignored. -=========================== ========================================================================================================================================================= - - - -========================================================================== -5.2.2 Default behavior -========================================================================== -By default, a BEDPE / BAM feature will be reported if *either* end overlaps a feature in the BED file. -In the example below, the left end of the pair overlaps B yet the right end does not. Thus, BEDPE/ -BAM A is reported since the default is to report A if either end overlaps B. - -Default: Report A if *either* end overlaps B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result =====.................................===== - - -========================================================================== -5.2.3 (-type)Optional overlap requirements -========================================================================== -Using then **-type** option, **pairToBed** provides several other overlap requirements for controlling how -overlaps between BEDPE/BAM A and BED B are reported. The examples below illustrate how each -option behaves. - -**-type both**: Report A only if *both* ends overlap B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result =====.................................===== - - -**-type neither**: Report A only if *neither* end overlaps B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ ^^^^^^ - - Result =====.................................===== - - -**-type xor**: Report A only if *one and only one* end overlaps B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result =====.................................===== - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ ^^^^^^ - - Result - - -**-type notboth**: Report A only if *neither end* **or** *one and only one* end overlaps B. Thus "notboth" -includes what would be reported by "neither" and by "xor". -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result =====.................................===== - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^ ^^^^^^ - - Result =====.................................===== - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ ^^^^^^ - - Result - - -**-type ispan**: Report A if it's "*inner span*" overlaps B. Applicable only to intra-chromosomal features. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |-------------------------------| - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ - - Result =====.................................===== - - - - BEDPE/BAM A =====.................................===== - - BED File B ==== - - Result - - -**-type ospan**: Report A if it's "*outer span*" overlaps B. Applicable only to intra-chromosomal features. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |-----------------------------------------| - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^^^^^ - - Result =====.................................===== - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ - - Result - - -**-type notispan**: Report A only if it's "*inner span*" does not overlap B. Applicable only to intrachromosomal -features. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |-------------------------------| - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ - - Result =====.................................===== - - -**-type notospan**: Report A if it's "*outer span*" overlaps B. Applicable only to intra-chromosomal -features. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |-----------------------------------------| - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ - - Result =====.................................===== - - - -========================================================================== -5.2.4 (-f)Requiring a minimum overlap fraction -========================================================================== -By default, **pairToBed** will report an overlap between A and B so long as there is at least one base -pair is overlapping on either end. Yet sometimes you may want to restrict reported overlaps between A -and B to cases where the feature in B overlaps at least X% (e.g. 50%) of A. The **¨Cf** option does exactly -this. The **-f** option may also be combined with the -type option for additional control. For example, -combining **-f 0.50** with **-type both** requires that both ends of A have at least 50% overlap with a -feature in B. - -For example, report A only at least 50% of one of the two ends is overlapped by B. -:: - pairToBed -a A.bedpe -b B.bed -f 0.5 - - - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^ ^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^ ^^^^^^ - - Result =====.................................===== - - - -========================================================================== -5.2.5 (-s)Enforcing "strandedness" -========================================================================== -By default, **pairToBed** will report overlaps between features even if the features are on opposing -strands. However, if strand information is present in both files and the **"-s"** option is used, overlaps will -only be reported when features are on the same strand. - -For example, report A only at least 50% of one of the two ends is overlapped by B. -:: - pairToBed -a A.bedpe -b B.bed -s - - - - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A >>>>>.................................<<<<< - - BED File B << >>>>> - - Result - - - - BEDPE/BAM A >>>>>.................................<<<<< - - BED File B >> >>>>> - - Result >>>>>.................................<<<<< - - -========================================================================== -5.2.6 (-abam)Default is to write BAM output when using BAM input -========================================================================== -When comparing *paired* alignments in BAM format (**-abam**) to features in BED format (**-b**), -**pairToBed** will , by default, write the output in BAM format. That is, each alignment in the BAM -file that meets the user's criteria will be written (to standard output) in BAM format. This serves as a -mechanism to create subsets of BAM alignments are of biological interest, etc. Note that both -alignments for each aligned pair will be written to the BAM output. - -For example: -:: - pairToBed ¨Cabam pairedReads.bam ¨Cb simreps.bed | samtools view - | head -4 - - JOBU_0001:3:1:4:1060#0 99 chr10 42387928 29 50M = 42393091 5 2 1 3 - AA A A A C G G A A T T A T C G A A T G G A A T C G A A G A G A A T C T T C G A A C G G A C C C G A - dcgggggfbgfgdgggggggfdfgggcggggfcggcggggggagfgbggc XT:A:R NM:i:5 SM:i:0 AM:i:0 X0:i:3 X 1 : i : - 3 XM:i:5 XO:i:0 XG:i:0 MD:Z:0T0C33A5T4T3 - JOBU_0001:3:1:4:1060#0 147 chr10 42393091 0 50M = 42387928 - 5 2 1 3 - AAATGGAATCGAATGGAATCAACATCAAATGGAATCAAATGGAATCATTG K g d c g g d e c d g - \d`ggfcgcggffcgggc^cgfgccgggfc^gcdgg\bg XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:3 X1:i:13 XM:i:2 X O : i : - 0 XG:i:0 MD:Z:21T14G13 - JOBU_0001:3:1:8:446#0 99 chr10 42388091 9 50M = 42392738 4 6 9 7 - GAATCGACTGGAATCATCATCGGATGGAAATGAATGGAATAATCATCGAA f _ O f f ` ] I e Y f f ` f f e d d c f e f c P ` c _ W \ \ R _ ] - _BBBBBBBBBBBBBBBB XT:A:U NM:i:4 SM:i:0 AM:i:0 X0:i:1 X1:i:3 XM:i:4 XO:i:0 XG:i:0 M D : Z : - 7A22C9C2T6 - JOBU_0001:3:1:8:446#0 147 chr10 42392738 9 50M = 42388091 - 4 6 9 7 - TTATCGAATGCAATCGAATGGAATTATCGAATGCAATCGAATAGAATCAT df^ffec_JW[`MWceRec``fee`dcecfeeZae`c] - f^cNeecfccf^ XT:A:R NM:i:1 SM:i:0 AM:i:0 X0:i:2 X1:i:2 XM:i:1 XO:i:0 XG:i:0 MD:Z:38A11 - - - -========================================================================== -5.2.7 (-bedpe)Output BEDPE format when using BAM input -========================================================================== -When comparing *paired* alignments in BAM format (**-abam**) to features in BED format (**-b**), -**pairToBed** will optionally write the output in BEDPE format. That is, each alignment in the BAM -file is converted to a 10 column BEDPE feature and if overlaps are found (or not) based on the user's -criteria, the BAM alignment will be reported in BEDPE format. The BEDPE "name" field is comprised -of the RNAME field in the BAM alignment. The "score" field is the mapping quality score from the -BAM alignment. - -For example: -:: - pairToBed ¨Cabam pairedReads.bam ¨Cb simreps.bed -bedpe | head -5 - chr10 42387927 42387977 chr10 42393090 42393140 - JOBU_0001:3:1:4:1060#0 29 + - - chr10 42388090 42388140 chr10 42392737 42392787 - JOBU_0001:3:1:8:446#0 9 + - - chr10 42390552 42390602 chr10 42396045 42396095 - JOBU_0001:3:1:10:1865#0 9 + - - chrX 139153741 139153791 chrX 139159018 139159068 - JOBU_0001:3:1:14:225#0 37 + - - chr4 9236903 9236953 chr4 9242032 9242082 - JOBU_0001:3:1:15:1362#0 0 + - diff --git a/docs/_build/html/_sources/content/pairToPair.txt b/docs/_build/html/_sources/content/pairToPair.txt deleted file mode 100644 index 7be68197..00000000 --- a/docs/_build/html/_sources/content/pairToPair.txt +++ /dev/null @@ -1,103 +0,0 @@ -############### -5.3 pairToPair -############### -**pairToPair** compares two BEDPE files in search of overlaps where each end of a BEDPE feature in A -overlaps with the ends of a feature in B. For example, using pairToPair, one could screen for the exact -same discordant paired-end alignment in two files. This could suggest (among other things) that the -discordant pair suggests the same structural variation in each file/sample. - - -================================ -5.3.1 Usage and option summary -================================ -**Usage:** -:: - pairToPair [OPTIONS] -a <BEDPE> -b <BEDPE> - - -=========================== ========================================================================================================================================================= -Option Description -=========================== ========================================================================================================================================================= -**-a** BEDPE file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. -**-b** BEDPE file B. Use "stdin" if passing B with a UNIX pipe. -**-f** Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -**-is** Force "strandedness". That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -**-type** Approach to reporting overlaps between BEDPE and BED. - | **either** Report overlaps if either ends of A overlap B. - - - | **neither** Report A if neither end of A overlaps B. - - - | **both** Report overlaps if both ends of A overlap B. -*Default behavior.* -=========================== ========================================================================================================================================================= - - - - - -================================ -5.3.2 Default behavior -================================ -By default, a BEDPE feature from A will be reported if *both* ends overlap a feature in the BEDPE B -file. If strand information is present for the two BEDPE files, it will be further required that the -overlaps on each end be on the same strand. This way, an otherwise overlapping (in terms of genomic -locations) F/R alignment will not be matched with a R/R alignment. - -Default: Report A if *both* ends overlaps B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^ ^^^^^^ - - Result =====.................................===== - - -Default when strand information is present in both BEDPE files: Report A if *both* ends overlaps B *on -the same strands*. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE A >>>>>.................................>>>>> - - BEDPE B <<<<<.............................>>>>> - - Result - - - - BEDPE A >>>>>.................................>>>>> - - BEDPE B >>>>>.............................>>>>> - - Result >>>>>.................................>>>>> - - - -================================================== -5.3.3 (-type neither)Optional overlap requirements -================================================== -Using then **-type neither, pairToPair** will only report A if *neither* end overlaps with a BEDPE -feature in B. - -**-type neither**: Report A only if *neither* end overlaps B. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^^^^^......................................^^^^^^ - - Result - - - - BEDPE/BAM A *****.................................***** - - BED File B ^^^^................................................^^^^^^ - - Result =====.................................===== - - \ No newline at end of file diff --git a/docs/_build/html/_sources/content/quick-start.txt b/docs/_build/html/_sources/content/quick-start.txt deleted file mode 100644 index 64f2df32..00000000 --- a/docs/_build/html/_sources/content/quick-start.txt +++ /dev/null @@ -1,60 +0,0 @@ -########### -Quick start -########### - -================ -Install BEDTools -================ -:: - - curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz - tar -zxvf BEDTools.tar.gz - cd BEDTools - make clean - make all - sudo cp bin/* /usr/local/bin/ - -=============== -Use BEDTools -=============== -Below are examples of typical BEDTools usage. **Additional usage examples are described in -section 6 of this manual.** Using the "-h" option with any BEDTools will report a list of all command -line options. - -A. Report the base-pair overlap between the features in two BED files. -:: - - intersectBed -a reads.bed -b genes.bed - -B. Report those entries in A that overlap NO entries in B. Like "grep -v" -:: - - intersectBed -a reads.bed -b genes.bed ¨Cv - -C. Read BED A from stdin. Useful for stringing together commands. For example, find genes that overlap LINEs -but not SINEs. -:: - - intersectBed -a genes.bed -b LINES.bed | intersectBed -a stdin -b SINEs.bed ¨Cv - -D. Find the closest ALU to each gene. -:: - - closestBed -a genes.bed -b ALUs.bed - -E. Merge overlapping repetitive elements into a single entry, returning the number of entries merged. -:: - - mergeBed -i repeatMasker.bed -n - -F. Merge nearby repetitive elements into a single entry, so long as they are within 1000 bp of one another. -:: - - mergeBed -i repeatMasker.bed -d 1000 - - - - - - - \ No newline at end of file diff --git a/docs/_build/html/_sources/content/shuffleBed.txt b/docs/_build/html/_sources/content/shuffleBed.txt deleted file mode 100644 index d840277e..00000000 --- a/docs/_build/html/_sources/content/shuffleBed.txt +++ /dev/null @@ -1,155 +0,0 @@ -############### -5.13 shuffleBed -############### -**shuffleBed** will randomly permute the genomic locations of a fearure file among a genome defined in a -genome file. One can also provide an "exclusions" BED/GFF/VCF file that lists regions where you do -not want the permuted features to be placed. For example, one might want to prevent features from -being placed in known genome gaps. **shuffleBed** is useful as a *null* basis against which to test the -significance of associations of one feature with another. - - - -========================================================================== -5.13.1 Usage and option summary -========================================================================== -Usage: -:: - shuffleBed [OPTIONS] -i <BED/GFF/VCF> -g <GENOME> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-excl** A BED file of coordinates in which features from -i should *not* be placed (e.g., genome gaps). -**-chrom** Keep features in -i on the same chromosome. Solely permute their location on the chromosome. *By default, both the chromosome and position are randomly chosen*. -**-seed** Supply an integer seed for the shuffling. This will allow feature shuffling experiments to be recreated exactly as the seed for the pseudo-random number generation will be constant. *By default, the seed is chosen automatically*. -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.13.2 Default behavior -========================================================================== -By default, **shuffleBed** will reposition each feature in the input BED file on a random chromosome at a -random position. The size and strand of each feature are preserved. - -For example: -:: - cat A.bed - chr1 0 100 a1 1 + - chr1 0 1000 a2 2 - - - cat my.genome - chr1 10000 - chr2 8000 - chr3 5000 - chr4 2000 - - shuffleBed -i A.bed -g my.genome - chr4 1498 1598 a1 1 + - chr3 2156 3156 a2 2 - - - - - - -========================================================================== -5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome -========================================================================== -The "**-chrom**" option behaves the same as the default behavior except that features are randomly -placed on the same chromosome as defined in the BED file. - -For example: -:: - cat A.bed - chr1 0 100 a1 1 + - chr1 0 1000 a2 2 - - - cat my.genome - chr1 10000 - chr2 8000 - chr3 5000 - chr4 2000 - - shuffleBed -i A.bed -g my.genome -chrom - chr1 9560 9660 a1 1 + - chr1 7258 8258 a2 2 - - - - - -========================================================================== -5.13.4 Excluding certain genome regions from shuffleBed -========================================================================== -One may want to prevent BED features from being placed in certain regions of the genome. For -example, one may want to exclude genome gaps from permutation experiment. The "**-excl**" option -defines a BED file of regions that should be excluded. **shuffleBed** will attempt to permute the -locations of all features while adhering to the exclusion rules. However it will stop looking for an -appropriate location if it cannot find a valid spot for a feature after 1,000,000 tries. - -For example (*note that the exclude file excludes all but 100 base pairs of the chromosome*): -:: - cat A.bed - chr1 0 100 a1 1 + - chr1 0 1000 a2 2 - - - cat my.genome - chr1 10000 - - cat exclude.bed - chr1 100 10000 - - shuffleBed -i A.bed -g my.genome -excl exclude.bed - chr1 0 100 a1 1 + - Error, line 2: tried 1000000 potential loci for entry, but could not avoid excluded - regions. Ignoring entry and moving on. - - -For example (*now the exclusion file only excludes the first 100 bases of the chromosome*): -:: - cat A.bed - chr1 0 100 a1 1 + - chr1 0 1000 a2 2 - - - cat my.genome - chr1 10000 - - cat exclude.bed - chr1 0 100 - - shuffleBed -i A.bed -g my.genome -excl exclude.bed - chr1 147 247 a1 1 + - chr1 2441 3441 a2 2 - - - -========================================================================== -5.13.5 Defining a "seed" for the random replacement. -========================================================================== -**shuffleBed** uses a pseudo-random number generator to permute the locations of BED features. -Therefore, each run should produce a different result. This can be problematic if one wants to exactly -recreate an experiment. By using the "**-seed**" option, one can supply a custom integer seed for -**shuffleBed**. In turn, each execution of **shuffleBed** with the same seed and input files should produce -identical results. - -For example (*note that the exclude file below excludes all but 100 base pairs of the chromosome*): -:: - cat A.bed - chr1 0 100 a1 1 + - chr1 0 1000 a2 2 - - - cat my.genome - chr1 10000 - - shuffleBed -i A.bed -g my.genome -seed 927442958 - chr1 6177 6277 a1 1 + - chr1 8119 9119 a2 2 - - - shuffleBed -i A.bed -g my.genome -seed 927442958 - chr1 6177 6277 a1 1 + - chr1 8119 9119 a2 2 - - - . . . - - shuffleBed -i A.bed -g my.genome -seed 927442958 - chr1 6177 6277 a1 1 + - chr1 8119 9119 a2 2 - diff --git a/docs/_build/html/_sources/content/slopBed.txt b/docs/_build/html/_sources/content/slopBed.txt deleted file mode 100644 index 0646afca..00000000 --- a/docs/_build/html/_sources/content/slopBed.txt +++ /dev/null @@ -1,84 +0,0 @@ -############### -5.14 slopBed -############### -**slopBed** will increase the size of each feature in a feature file be a user-defined number of bases. While -something like this could be done with an "**awk '{OFS="\t" print $1,$2-<slop>,$3+<slop>}'**", -**slopBed** will restrict the resizing to the size of the chromosome (i.e. no start < 0 and no end > -chromosome size). - - -========================================================================== -5.14.1 Usage and option summary -========================================================================== -Usage: -:: - slopBed [OPTIONS] -i <BED/GFF/VCF> -g <GENOME> [-b or (-l and -r)] - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-b** Increase the BED/GFF/VCF entry by the same number base pairs in each direction. *Integer*. -**-l** The number of base pairs to subtract from the start coordinate. *Integer*. -**-r** The number of base pairs to add to the end coordinate. *Integer*. -**-s** Define -l and -r based on strand. For example. if used, -l 500 for a negative-stranded feature, it will add 500 bp to the *end* coordinate. -=========================== =============================================================================================================================================================================================================== - - - -========================================================================== -5.14.2 Default behavior -========================================================================== -By default, **slopBed** will either add a fixed number of bases in each direction (**-b**) or an asymmetric -number of bases in each direction (**-l** and **-r**). - -For example: -:: - cat A.bed - chr1 5 100 - chr1 800 980 - - cat my.genome - chr1 1000 - - slopBed -i A.bed -g my.genome -b 5 - chr1 0 105 - chr1 795 985 - - slopBed -i A.bed -g my.genome -l 2 -r 3 - chr1 3 103 - chr1 798 983 - - -However, if the requested number of bases exceeds the boundaries of the chromosome, **slopBed** will -"clip" the feature accordingly. -:: - cat A.bed - chr1 5 100 - chr1 800 980 - - cat my.genome - chr1 1000 - - slopBed -i A.bed -g my.genome -b 5000 - chr1 0 1000 - chr1 0 1000 - - - -========================================================================== -5.14.3 Resizing features according to strand -========================================================================== -**slopBed** will optionally increase the size of a feature based on strand. - -For example: -:: - cat A.bed - chr1 100 200 a1 1 + - chr1 100 200 a2 2 - - - cat my.genome - chr1 1000 - - slopBed -i A.bed -g my.genome -l 50 -r 80 -s - chr1 50 280 a1 1 + - chr1 20 250 a2 2 - diff --git a/docs/_build/html/_sources/content/sortBed.txt b/docs/_build/html/_sources/content/sortBed.txt deleted file mode 100644 index 7ea16667..00000000 --- a/docs/_build/html/_sources/content/sortBed.txt +++ /dev/null @@ -1,77 +0,0 @@ -############### -5.15 sortBed -############### -**sortBed** sorts a feature file by chromosome and other criteria. - -========================================================================== -5.15.1 Usage and option summary -========================================================================== -Usage: -:: - sortBed [OPTIONS] -i <BED/GFF/VCF> - -=========================== =============================================================================================================================================================================================================== - Option Description -=========================== =============================================================================================================================================================================================================== -**-sizeA** Sort by feature size in ascending order. -**-sizeD** Sort by feature size in descending order. -**-chrThenSizeA** Sort by chromosome, then by feature size (asc). -**-chrThenSizeD** Sort by chromosome, then by feature size (desc). -**-chrThenScoreA** Sort by chromosome, then by score (asc). -**-chrThenScoreD** Sort by chromosome, then by score (desc). -=========================== =============================================================================================================================================================================================================== - - - -========================================================================== -5.15.2 Default behavior -========================================================================== -By default, **sortBed** sorts a BED file by chromosome and then by start position in ascending order. - -For example: -:: - cat A.bed - chr1 800 1000 - chr1 80 180 - chr1 1 10 - chr1 750 10000 - - sortBed -i A.bed - chr1 1 10 - chr1 80 180 - chr1 750 10000 - chr1 800 1000 - - - - -========================================================================== -5.15.3 Optional sorting behavior -========================================================================== -**sortBed** will also sorts a BED file by chromosome and then by other criteria. - -For example, to sort by chromosome and then by feature size (in descending order): -:: - cat A.bed - chr1 800 1000 - chr1 80 180 - chr1 1 10 - chr1 750 10000 - - sortBed -i A.bed -sizeD - chr1 750 10000 - chr1 800 1000 - chr1 80 180 - chr1 1 10 - - -**Disclaimer:** it should be noted that **sortBed** is merely a convenience utility, as the UNIX sort utility -will sort BED files more quickly while using less memory. For example, UNIX sort will sort a BED file -by chromosome then by start position in the following manner: -:: - sort -k 1,1 -k2,2 -n a.bed - chr1 1 10 - chr1 80 180 - chr1 750 10000 - chr1 800 1000 - diff --git a/docs/_build/html/_sources/content/subtractBed.txt b/docs/_build/html/_sources/content/subtractBed.txt deleted file mode 100644 index 81dfb0e7..00000000 --- a/docs/_build/html/_sources/content/subtractBed.txt +++ /dev/null @@ -1,88 +0,0 @@ -############### -5.7 subtractBed -############### -**subtractBed** searches for features in B that overlap A. If an overlapping feature is found in B, the -overlapping portion is removed from A and the remaining portion of A is reported. If a feature in B -overlaps all of a feature in A, the A feature will not be reported. - - -========================================================================== -5.7.1 Usage and option summary -========================================================================== -Usage: -:: - subtractBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF> - -=========================== =============================================================================================================================================================================================================== -Option Description -=========================== =============================================================================================================================================================================================================== -**-f** Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -**-s** Force strandedness. That is, find the closest feature in B overlaps A on the same strand. *By default, this is disabled*. -=========================== =============================================================================================================================================================================================================== - - - -========================================================================== -5.7.2 Default behavior -========================================================================== -Figure: -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - BED FILE A ************* ****** - - BED File B ^^^^^^^^ ^^^^^^^^^^^ - - Result ========= - -For example: -:: - cat A.bed - chr1 100 200 - chr1 10 20 - - cat B.bed - chr1 0 30 - chr1 180 300 - - subtractBed -a A.bed -b B.bed - chr1 100 180 - - - - - - -========================================================================== -5.7.3 (-f)Requiring a minimal overlap fraction before subtracting -========================================================================== -This option behaves the same as the -f option for intersectBed. In this case, subtractBed will only -subtract an overlap with B if it covers at least the fraction of A defined by -f. If an overlap is found, -but it does not meet the overlap fraction, the original A feature is reported without subtraction. - -For example: -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 180 300 - - subtractBed -a A.bed -b B.bed -f 0.10 - chr1 100 180 - - subtractBed -a A.bed -b B.bed -f 0.80 - chr1 100 200 - - - - -========================================================================== -5.7.4 (-s)Enforcing "strandedness" -========================================================================== -This option behaves the same as the -s option for intersectBed while scanning for features in B that -should be subtracted from A. See the discussion in the intersectBed section for details. - - - - diff --git a/docs/_build/html/_sources/content/unionBedGraphs.txt b/docs/_build/html/_sources/content/unionBedGraphs.txt deleted file mode 100644 index b1e34a18..00000000 --- a/docs/_build/html/_sources/content/unionBedGraphs.txt +++ /dev/null @@ -1,163 +0,0 @@ -############### -5.23 unionBedGraphs -############### -**unionBedGraphs** combines multiple BEDGRAPH files into a single file such that one can directly -compare coverage (and other text-values such as genotypes) across multiple sample - - -========================================================================== -5.23.1 Usage and option summary -========================================================================== -Usage: -:: - unionBedGraphs [OPTIONS] -i FILE1 FILE2 FILE3 ... FILEn - -=========================== =============================================================================================================================================================================================================== - Option Description - -=========================== =============================================================================================================================================================================================================== -**-header** Print a header line, consisting of chrom, start, end followed by the names of each input BEDGRAPH file. -**-names** A list of names (one per file) to describe each file in -i. These names will be printed in the header line. -**-empty** Report empty regions (i.e., start/end intervals w/o values in all files). *Requires the '-g FILE' parameter (see below)*. -**-g** The genome file to be used to calculate empty regions. -**-filler TEXT** Use TEXT when representing intervals having no value. Default is '0', but you can use 'N/A' or any other text. -**-examples** Show detailed usage examples. -=========================== =============================================================================================================================================================================================================== - - - - -========================================================================== -5.23.2 Default behavior -========================================================================== -Figure: -:: - cat 1.bg - chr1 1000 1500 10 - chr1 2000 2100 20 - - cat 2.bg - chr1 900 1600 60 - chr1 1700 2050 50 - - cat 3.bg - chr1 1980 2070 80 - chr1 2090 2100 20 - - cat sizes.txt - chr1 5000 - - unionBedGraphs -i 1.bg 2.bg 3.bg - chr1 900 1000 0 60 0 - chr1 1000 1500 10 60 0 - chr1 1500 1600 0 60 0 - chr1 1700 1980 0 50 0 - chr1 1980 2000 0 50 80 - chr1 2000 2050 20 50 80 - chr1 2050 2070 20 0 80 - chr1 2070 2090 20 0 0 - chr1 2090 2100 20 0 20 - -========================================================================== -5.23.3 Add a header line to the output -========================================================================== -Figure: -:: - unionBedGraphs -i 1.bg 2.bg 3.bg -header - chrom start end 1 2 3 - chr1 900 1000 0 60 0 - chr1 1000 1500 10 60 0 - chr1 1500 1600 0 60 0 - chr1 1700 1980 0 50 0 - chr1 1980 2000 0 50 80 - chr1 2000 2050 20 50 80 - chr1 2050 2070 20 0 80 - chr1 2070 2090 20 0 0 - chr1 2090 2100 20 0 20 - - -========================================================================== -5.23.4 Add a header line with custom file names to the output -========================================================================== -Figure: -:: - unionBedGraphs -i 1.bg 2.bg 3.bg -header -names WT-1 WT-2 KO-1 - chrom start end WT-1 WT-2 KO-1 - chr1 900 1000 0 60 0 - chr1 1000 1500 10 60 0 - chr1 1500 1600 0 60 0 - chr1 1700 1980 0 50 0 - chr1 1980 2000 0 50 80 - chr1 2000 2050 20 50 80 - chr1 2050 2070 20 0 80 - chr1 2070 2090 20 0 0 - chr1 2090 2100 20 0 20 - - - - -========================================================================== -5.23.5 Include regions that have zero coverage in all BEDGRAPH files. -========================================================================== -Figure: -:: - unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header - chrom start end WT-1 WT-2 KO-1 - chrom start end 1 2 3 - chr1 0 900 0 0 0 - chr1 900 1000 0 60 0 - chr1 1000 1500 10 60 0 - chr1 1500 1600 0 60 0 - chr1 1600 1700 0 0 0 - chr1 1700 1980 0 50 0 - chr1 1980 2000 0 50 80 - chr1 2000 2050 20 50 80 - chr1 2050 2070 20 0 80 - chr1 2070 2090 20 0 0 - chr1 2090 2100 20 0 20 - chr1 2100 5000 0 0 0 - - -========================================================================== -5.23.6 Use a custom value for missing values. -========================================================================== -Figure: -:: - unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header -filler N/A - chrom start end WT-1 WT-2 KO-1 - chrom start end 1 2 3 - chr1 0 900 N/A N/A N/A - chr1 900 1000 N/A 60 N/A - chr1 1000 1500 10 60 N/A - chr1 1500 1600 N/A 60 N/A - chr1 1600 1700 N/A N/A N/A - chr1 1700 1980 N/A 50 N/A - chr1 1980 2000 N/A 50 80 - chr1 2000 2050 20 50 80 - chr1 2050 2070 20 N/A 80 - chr1 2070 2090 20 N/A N/A - chr1 2090 2100 20 N/A 20 - chr1 2100 5000 N/A N/A N/A - - -========================================================================== -5.23.7 Use BEDGRAPH files with non-numeric values. -========================================================================== -Figure: -:: - cat 1.snp.bg - chr1 0 1 A/G - chr1 5 6 C/T - - cat 2.snp.bg - chr1 0 1 C/C - chr1 7 8 T/T - - cat 3.snp.bg - chr1 0 1 A/G - chr1 5 6 C/T - - unionBedGraphs -i 1.snp.bg 2.snp.bg 3.snp.bg -filler -/- - chr1 0 1 A/G C/C A/G - chr1 5 6 C/T -/- C/T - chr1 7 8 -/- T/T -/- \ No newline at end of file diff --git a/docs/_build/html/_sources/content/windowBed.txt b/docs/_build/html/_sources/content/windowBed.txt deleted file mode 100644 index 30d231ea..00000000 --- a/docs/_build/html/_sources/content/windowBed.txt +++ /dev/null @@ -1,157 +0,0 @@ -############### -5.5 windowBed -############### - -Similar to **intersectBed**, **windowBed** searches for overlapping features in A and B. However, -**windowBed** adds a specified number (1000, by default) of base pairs upstream and downstream of -each feature in A. In effect, this allows features in B that are "near" features in A to be detected. - -========================================================================== -5.5.1 Usage and option summary -========================================================================== -**Usage:** -:: - windowBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF> - - -=========================== ========================================================================================================================================================= -Option Description -=========================== ========================================================================================================================================================= -**-abam** BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view -b <BAM> | windowBed -abam stdin -b genes.bed -**-ubam** Write uncompressed BAM output. The default is write compressed BAM output. -**-bed** When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: windowBed -abam reads.bam -b genes.bed -bed -**-w** Base pairs added upstream and downstream of each entry in A when searching for overlaps in B. *Default is 1000 bp*. -**-l** Base pairs added upstream (left of) of each entry in A when searching for overlaps in B. *Allows one to create assymetrical "windows". Default is 1000bp*. -**-r** Base pairs added downstream (right of) of each entry in A when searching for overlaps in B. *Allows one to create assymetrical "windows". Default is 1000bp*. -**-sw** Define -l and -r based on strand. For example if used, -l 500 for a negative-stranded feature will add 500 bp downstream. *By default, this is disabled*. -**-sm** Only report hits in B that overlap A on the same strand. *By default, overlaps are reported without respect to strand*. -**-u** Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. -**-c** For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B. -=========================== ========================================================================================================================================================= - -========================================================================== -5.5.2 Default behavior -========================================================================== -By default, **windowBed** adds 1000 bp upstream and downstream of each A feature and searches for -features in B that overlap this "window". If an overlap is found in B, both the *original* A feature and the -*original* B feature are reported. For example, in the figure below, feature B1 would be found, but B2 -would not. -:: - Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - "window" = 10 - BED File A <----------*************----------> - - BED File B ^^^^^^^^ ^^^^^^ - - Result ======== - -For example: -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 500 1000 - chr1 1300 2000 - - windowBed -a A.bed -b B.bed - chr1 100 200 chr1 500 1000 - - -========================================================================== -5.5.3 (-w)Defining a custom window size -========================================================================== -Instead of using the default window size of 1000bp, one can define a custom, *symmetric* window around -each feature in A using the **-w** option. One should specify the window size in base pairs. For example, -a window of 5kb should be defined as **-w 5000**. - -For example (note that in contrast to the default behavior, the second B entry is reported): -:: - cat A.bed - chr1 100 200 - - cat B.bed - chr1 500 1000 - chr1 1300 2000 - - windowBed -a A.bed -b B.bed -w 5000 - chr1 100 200 chr1 500 1000 - chr1 100 200 chr1 1300 2000 - -========================================================================== -5.5.4 (-l and -r)Defining assymteric windows -========================================================================== -One can also define asymmetric windows where a differing number of bases are added upstream and -downstream of each feature using the **-l (upstream)** and **-r (downstream)** options. - -For example (note the difference between -l 200 and -l 300): -:: - cat A.bed - chr1 1000 2000 - - cat B.bed - chr1 500 800 - chr1 10000 20000 - - windowBed -a A.bed -b B.bed -l 200 -r 20000 - chr1 100 200 chr1 10000 20000 - - windowBed -a A.bed -b B.bed -l 300 -r 20000 - chr1 100 200 chr1 500 800 - chr1 100 200 chr1 10000 20000 - -========================================================================== -5.5.5 (-sw)Defining assymteric windows based on strand -========================================================================== -Especially when dealing with gene annotations or RNA-seq experiments, you may want to define -asymmetric windows based on "strand". For example, you may want to screen for overlaps that occur -within 5000 bp upstream of a gene (e.g. a promoter region) while screening only 1000 bp downstream of -the gene. By enabling the **-sw** ("stranded" windows) option, the windows are added upstream or -downstream according to strand. For example, imagine one specifies **-l 5000 -r 1000** as well as the **- -sw** option. In this case, forward stranded ("+") features will screen 5000 bp to the *left* (that is, *lower* -genomic coordinates) and 1000 bp to the *right* (that is, *higher* genomic coordinates). By contrast, -reverse stranded ("-") features will screen 5000 bp to the *right* (that is, *higher* genomic coordinates) and -1000 bp to the *left* (that is, *lower* genomic coordinates). - -For example (note the difference between -l 200 and -l 300): -:: - cat A.bed - chr1 10000 20000 A.forward 1 + - chr1 10000 20000 A.reverse 1 - - - cat B.bed - chr1 1000 8000 B1 - chr1 24000 32000 B2 - - windowBed -a A.bed -b B.bed -l 5000 -r 1000 -sw - chr1 10000 20000 A.forward 1 + chr1 1000 8000 B1 - chr1 10000 20000 A.reverse 1 - chr1 24000 32000 B2 - - - -========================================================================== -5.5.6 (-sm)Enforcing "strandedness" -========================================================================== -This option behaves the same as the -s option for intersectBed while scanning for overlaps within the -"window" surrounding A. See the discussion in the intersectBed section for details. - -========================================================================== -5.5.7 (-u)Reporting the presence of at least one overlapping feature -========================================================================== -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. - - -========================================================================== -5.5.8 (-c)Reporting the number of overlapping features -========================================================================== -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. - - -========================================================================== -5.5.9 (-v)Reporting the absence of any overlapping features -========================================================================== -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. - diff --git a/docs/_build/html/_sources/index.txt b/docs/_build/html/_sources/index.txt deleted file mode 100644 index 0ed81653..00000000 --- a/docs/_build/html/_sources/index.txt +++ /dev/null @@ -1,31 +0,0 @@ -================================================================ -**bedtools**: *a powerful toolset for genome arithmetic* -================================================================ - -================= -Overview -================= - -Brief paragraph of the software. - - -================= -Table of contents -================= -.. toctree:: - :maxdepth: 1 - - content/overview - content/installation - content/quick-start - content/general-usage - content/bedtools-suite - content/example-usage - content/advanced-usage - - -================= -Mailing list -================= -Refer to the mailing list. - diff --git a/docs/_build/html/_static/ajax-loader.gif b/docs/_build/html/_static/ajax-loader.gif deleted file mode 100644 index 61faf8cab23993bd3e1560bff0668bd628642330..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 673 zcmZ?wbhEHb6krfw_{6~Q|Nno%(3)e{?)x>&1u}A`t?OF7Z|1gRivOgXi&7IyQd1Pl zGfOfQ60;I3a`F>X^fL3(@);C=vM_KlFfb_o=k{|A33hf2a5d61U}gjg=>Rd%XaNQW zW@C<Bcm5fi^2`=a=CI<BoWt%nBaPE_qv4@lA~O$e(@QvVsPKYrw1nl|W$cy`JnUZC z&pm)ff{kWGHpc{Hj$e<Wf^-Yd?hVhnTne26LlO)n6%u@0qor2V$ZRdW|29#Ay+Pr+ z#G^K6$xW&%T0&5Rn2-%J<Je`StbNMy#Dp_b!t~i%lV$k6Ncw&BbV{7Dx<KXw*O|?G zWsa@TW{P|({)e&oFu&2t6sh_9S)fKSBO3+uTav2wDWkTDZ{~!>w{|b%Y*pl8F?4B9 zlo4Fz*0kZGJabY|>}Okf0}CCg{u4`zEPY^pV?j2@h+|igy0+Kz6p;@SpM4s6)XEMg z#3Y4GX>Hjlml5ftdH$4x0JGdn8~MX(U~_^d!Hi)=HU{V%g+mi8#UGbE-*ao8f#h+S z2a0-5+vc7MU$e-NhmBjLIC1v|)9+Im8x1yacJ7{^tLX(ZhYi^rpmXm0`@ku9b53aN zEXH@Y3JaztblgpxbJt{AtE1ad1Ca>{v$rwwvK(>{m~Gf_=-Ro7Fk{#;i~+{{>QtvI yb2P8Zac~?~=sRA>$6{!(^3;ZP0TPFR(G_-UDU(8Jl0?(IXu$~#4A!880|o%~Al1tN diff --git a/docs/_build/html/_static/basic.css b/docs/_build/html/_static/basic.css deleted file mode 100644 index f0379f35..00000000 --- a/docs/_build/html/_static/basic.css +++ /dev/null @@ -1,540 +0,0 @@ -/* - * basic.css - * ~~~~~~~~~ - * - * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/* -- main layout ----------------------------------------------------------- */ - -div.clearer { - clear: both; -} - -/* -- relbar ---------------------------------------------------------------- */ - -div.related { - width: 100%; - font-size: 90%; -} - -div.related h3 { - display: none; -} - -div.related ul { - margin: 0; - padding: 0 0 0 10px; - list-style: none; -} - -div.related li { - display: inline; -} - -div.related li.right { - float: right; - margin-right: 5px; -} - -/* -- sidebar --------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 10px 5px 0 10px; -} - -div.sphinxsidebar { - float: left; - width: 230px; - margin-left: -100%; - font-size: 90%; -} - -div.sphinxsidebar ul { - list-style: none; -} - -div.sphinxsidebar ul ul, -div.sphinxsidebar ul.want-points { - margin-left: 20px; - list-style: square; -} - -div.sphinxsidebar ul ul { - margin-top: 0; - margin-bottom: 0; -} - -div.sphinxsidebar form { - margin-top: 10px; -} - -div.sphinxsidebar input { - border: 1px solid #98dbcc; - font-family: sans-serif; - font-size: 1em; -} - -div.sphinxsidebar input[type="text"] { - width: 170px; -} - -div.sphinxsidebar input[type="submit"] { - width: 30px; -} - -img { - border: 0; -} - -/* -- search page ----------------------------------------------------------- */ - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - -/* -- index page ------------------------------------------------------------ */ - -table.contentstable { - width: 90%; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -/* -- general index --------------------------------------------------------- */ - -table.indextable { - width: 100%; -} - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable dl, table.indextable dd { - margin-top: 0; - margin-bottom: 0; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -div.modindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -div.genindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -/* -- general body styles --------------------------------------------------- */ - -a.headerlink { - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink { - visibility: visible; -} - -div.body p.caption { - text-align: inherit; -} - -div.body td { - text-align: left; -} - -.field-list ul { - padding-left: 1em; -} - -.first { - margin-top: 0 !important; -} - -p.rubric { - margin-top: 30px; - font-weight: bold; -} - -img.align-left, .figure.align-left, object.align-left { - clear: left; - float: left; - margin-right: 1em; -} - -img.align-right, .figure.align-right, object.align-right { - clear: right; - float: right; - margin-left: 1em; -} - -img.align-center, .figure.align-center, object.align-center { - display: block; - margin-left: auto; - margin-right: auto; -} - -.align-left { - text-align: left; -} - -.align-center { - text-align: center; -} - -.align-right { - text-align: right; -} - -/* -- sidebars -------------------------------------------------------------- */ - -div.sidebar { - margin: 0 0 0.5em 1em; - border: 1px solid #ddb; - padding: 7px 7px 0 7px; - background-color: #ffe; - width: 40%; - float: right; -} - -p.sidebar-title { - font-weight: bold; -} - -/* -- topics ---------------------------------------------------------------- */ - -div.topic { - border: 1px solid #ccc; - padding: 7px 7px 0 7px; - margin: 10px 0 10px 0; -} - -p.topic-title { - font-size: 1.1em; - font-weight: bold; - margin-top: 10px; -} - -/* -- admonitions ----------------------------------------------------------- */ - -div.admonition { - margin-top: 10px; - margin-bottom: 10px; - padding: 7px; -} - -div.admonition dt { - font-weight: bold; -} - -div.admonition dl { - margin-bottom: 0; -} - -p.admonition-title { - margin: 0px 10px 5px 0px; - font-weight: bold; -} - -div.body p.centered { - text-align: center; - margin-top: 25px; -} - -/* -- tables ---------------------------------------------------------------- */ - -table.docutils { - border: 0; - border-collapse: collapse; -} - -table.docutils td, table.docutils th { - padding: 1px 8px 1px 5px; - border-top: 0; - border-left: 0; - border-right: 0; - border-bottom: 1px solid #aaa; -} - -table.field-list td, table.field-list th { - border: 0 !important; -} - -table.footnote td, table.footnote th { - border: 0 !important; -} - -th { - text-align: left; - padding-right: 5px; -} - -table.citation { - border-left: solid 1px gray; - margin-left: 1px; -} - -table.citation td { - border-bottom: none; -} - -/* -- other body styles ----------------------------------------------------- */ - -ol.arabic { - list-style: decimal; -} - -ol.loweralpha { - list-style: lower-alpha; -} - -ol.upperalpha { - list-style: upper-alpha; -} - -ol.lowerroman { - list-style: lower-roman; -} - -ol.upperroman { - list-style: upper-roman; -} - -dl { - margin-bottom: 15px; -} - -dd p { - margin-top: 0px; -} - -dd ul, dd table { - margin-bottom: 10px; -} - -dd { - margin-top: 3px; - margin-bottom: 10px; - margin-left: 30px; -} - -dt:target, .highlighted { - background-color: #fbe54e; -} - -dl.glossary dt { - font-weight: bold; - font-size: 1.1em; -} - -.field-list ul { - margin: 0; - padding-left: 1em; -} - -.field-list p { - margin: 0; -} - -.refcount { - color: #060; -} - -.optional { - font-size: 1.3em; -} - -.versionmodified { - font-style: italic; -} - -.system-message { - background-color: #fda; - padding: 5px; - border: 3px solid red; -} - -.footnote:target { - background-color: #ffa; -} - -.line-block { - display: block; - margin-top: 1em; - margin-bottom: 1em; -} - -.line-block .line-block { - margin-top: 0; - margin-bottom: 0; - margin-left: 1.5em; -} - -.guilabel, .menuselection { - font-family: sans-serif; -} - -.accelerator { - text-decoration: underline; -} - -.classifier { - font-style: oblique; -} - -abbr, acronym { - border-bottom: dotted 1px; - cursor: help; -} - -/* -- code displays --------------------------------------------------------- */ - -pre { - overflow: auto; - overflow-y: hidden; /* fixes display issues on Chrome browsers */ -} - -td.linenos pre { - padding: 5px 0px; - border: 0; - background-color: transparent; - color: #aaa; -} - -table.highlighttable { - margin-left: 0.5em; -} - -table.highlighttable td { - padding: 0 0.5em 0 0.5em; -} - -tt.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -tt.descclassname { - background-color: transparent; -} - -tt.xref, a tt { - background-color: transparent; - font-weight: bold; -} - -h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { - background-color: transparent; -} - -.viewcode-link { - float: right; -} - -.viewcode-back { - float: right; - font-family: sans-serif; -} - -div.viewcode-block:target { - margin: -1px -10px; - padding: 0 10px; -} - -/* -- math display ---------------------------------------------------------- */ - -img.math { - vertical-align: middle; -} - -div.body div.math p { - text-align: center; -} - -span.eqno { - float: right; -} - -/* -- printout stylesheet --------------------------------------------------- */ - -@media print { - div.document, - div.documentwrapper, - div.bodywrapper { - margin: 0 !important; - width: 100%; - } - - div.sphinxsidebar, - div.related, - div.footer, - #top-link { - display: none; - } -} \ No newline at end of file diff --git a/docs/_build/html/_static/bedtools.png b/docs/_build/html/_static/bedtools.png deleted file mode 100644 index 2d44356e6b4858b57e94c811db8e827d4ce72a72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14929 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 G1^gfT33g`y diff --git a/docs/_build/html/_static/comment-bright.png b/docs/_build/html/_static/comment-bright.png deleted file mode 100644 index 551517b8c83b76f734ff791f847829a760ad1903..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3500 zcmV;d4O8-oP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV000V4X+uL$P-t&- zZ*ypGa3D!TLm+T+Z)Rz1WdHzp+MQEpR8#2|J@?-9LQ9B%luK_?6$l_wLW_VDktQl3 z2@pz%A)(n7QNa;KMFbnjpojyGj)066Q7jCK3fKqaA)=0hqlk*i`{8?|Yu3E?=FR@K z*FNX0^PRKL2fzpnmPj*EHGmAMLLL#|gU7_i;p8qrfeIvW01ybXWFd3?BLM*Temp!Y zBESc}00DT@3kU$fO`E_l9Ebl8>Oz@Z0f2-7z;ux~O9+4z06=<<LZ$#fMgf4Gm?l#I zpacM5%VT2W08lLeU?+d((*S^-_?deF09%wH6#<};03Z`(h(rKrI{>WDR*FRcSTFz- zW=q650N5=6FiBTtNC2?60Km==3$g$R3;-}uh=nNt1bYBr$Ri_o0EC$U6h`t_Jn<{8 z5a%iY0C<_QJh>z}MS)ugEpZ1|S1ukX&Pf+56gFW3VVXcL!g-k)GJ!M?;PcD?0HBc- z5#WRK{dmp}uFlRjj<yb8E$Y7p{~}^y<NoE(t8hR70O53g(f%wivl@Uq27qn;q9yJG zXkH7Tb@z*AvJXJD0HEpGSMzZAemp!yp^&-R+2!Qq*h<7gTVcvqeg0>{U%*%WZ25jX z{P*?XzTzZ-GF^d31o+^>%=Ap99M6&ogks$0k4OBs3;+Bb(;~!4V!2o<6ys46agIcq zjPo+3B8fthDa9qy|77CdEc*jK-!%ZRYCZvbku9iQV*~a}ClFY4z~c7+0P?$U!PF=S z1Au6Q;m>#f??3%Vpd|o+W=WE9003S@Bra6Svp>fO002awfhw>;8}z{#EWidF!3EsG z3;bX<ghC|5!a@*23S@vBa$qT}f<h>U&9EIRU@z1_9W=mEXoiz;4lcq~xDGvV5BgyU zp1~-*fe8db$Osc*A=-!mVv1NJjtCc-h4>-CNCXm#Bp}I%6j35eku^v$Qi@a{RY)E3 zJ#qp$hg?Rwkvqr$GJ^buyhkyVfwECO)C{#lxu`c9ghrwZ&}4KmnvWKso6vH!8a<3Q zq36)6Xb;+tK10Vaz~~qUGsJ8#F2=(`u{bOVlVi)VBCHIn#u~6ztOL7=^<&SmcLWlF zMZgI*1b0FpVIDz9SWH+>*hr`#93(Um+6gxa1B6k+CnA%mOSC4s5&6UzVlpv@SV$}* z))J2sFA#f(L&P^E5{W}HC%KRUNwK6<(h|}}(r!{C=`5+6G)NjFlgZj-YqAG9lq?`C z$c5yc<iq4M<QwE6@>>d>VnA`E_*3F2Qp##d8RZb=H01_mm@+|Cqnc9PsG(F5HIG_C zt)aG3uTh7n6Et<2In9F>NlT@zqLtGcXcuVrX|L#Xx)I%#9!{6gSJKPrN9dR61N3(c z4Tcqi$B1Vr8Jidf7-t!G7_XR2rWw<V8OKyGH!<s&=a~<gZ&g?-wkmuTk;)2{N|h#+ z8!9hUsj8-`-l_{#^Hs}KkEvc$eXd4TGgITK3DlOWRjQp(>r)$3XQ?}=hpK0&Z&W{| zep&sA23f;Q!%st`QJ}G3<GjWo3u76xcq}1n4XcKAfi=V?vCY|hb}GA={T;iDJ*ugp zIYTo_Ggq@x^OR;k2jiG=_?&c33Fj!Mm-Bv#-W2aC;wc-ZG)%cMWn62jmY0@Tt4OO+ zt4Hg-Hm>cbou<7-yIK2z4nfCCCtN2-XOGSWo##{8Q{ATurxr~;I`ytDs%xbip}RzP zziy}Qn4Z2~fSycmr`~zJ=lUFdFa1>gZThG6M+{g7vkW8#+YHVaJjFF}Z#*3@$J_By zLtVo_L#1JrVVB{Ak-5=4qt!-@Mh}c>#$4kh<88)m#-k<%CLtzEP3leVno>=<rYWX7 zOgl`+&CJcB&DNPUn>{htGUuD;o7bD)w_sX$S}eAxwzy?UvgBH(S?;#HZiQMoS*2K2 zT3xe7t(~nU*1N5{rxB;QPLocnp4Ml>u<^FZwyC!nu;thW+pe~4wtZn|Vi#w(#jeBd zlf9FDx_yoPJqHbk*$%56S{;6Kv~m<WRyy9A&YbQ)eZ};a=`Uwk&k)bpGvl@s%PGWZ zol~3BM`ssjxpRZ_h>M9!g3B(KJ}#RZ#@)!h<Vtk)ab4kh()FF2vzx;0sN1jZHtuQe zhuojcG@mJ+Su=Cc!^lJ6QRUG;3!jxRYu~JXPeV_EXSL@eFJmu}SFP8ux21Qg_hIiB zKK4FxpW{B`JU8Al-dSJFH^8^Zx64n%Z=PR;-$Q>R|78Dq|Iq-afF%KE1Brn_fm;Im z_<DRHzm7jT+hz8$+3i7$pt(U6L63s1g5|-jA!x|#kgXy2=a|ls&S?&XP=4sv&<A1W zVT;3l3@3$$g;$0@j&O)r8qqPAHFwe6Lv!Cm`b3sQ-kWDJPdTqGN;N7zsxE3g+Bdp1 zx<AG)W?9VDSe;l&Y)c$DE-J1zZfw5a{O$9H;+^6P<9ipFFUVbRd7;k2^o6GusV)*M zI+j38h)y_^@IeqNs1}SR@)LI@jtY6g9l~cKFVQy9h}c71DjrVqNGeTwlI)SZHF+e( zGo>u$xr8UFki1L{Ox>G0o)(&RAZ;=|I=wN2l97;cLaHH6leTB-XXa*h%dBOEvi`+x zi?=Txl?TadvyiL>SuF~-LZ;|cS}4~l2eM~nS7yJ>iOM;atDY;(?aZ^v+mJV$@1Ote z62cPUlD4IWOIIx&SmwQ~YB{nzae3Pc;}r!fhE@iwJh+OsDs9zItL;~pu715HdQEGA zUct(O!L<Qv>kCy1<%NCg+}G`0PgpNm-?d@-hMgNe6^V+j6x$b<6@S<$+<4_1hi}Ti zncS4LsjI}fWY1>OX6feMEuLErma3QLmkw?X+1j)X-&VBk_4Y;EFPF_I+q;9dL%E~B zJh;4Nr^(LEJ3myURP<E(R5tF?-L+xY_-@he8+*L=H0;&eTfF!EKFPk@RRL8^)n?UY z`$_w=_dl+Qs_FQa`)ysVPHl1R#{<#>{Rblsw%57T)g973R8o)DE9*xN#~;4_o$q%o z4K@u`jhx2fBXC4{<mvYb-}fF3I@)%Od#vFH(;s#nXB{tULYnfLMw?Tb`&(jLx=+kL z(bnqTdi+P*9}k=~JXv{4^Hj-c+UbJRlV|eJjGdL8eSR+a++f?HwtMGe&fjVeZ|}Mg zbm7uP|BL54ygSZZ^0;*JvfJeoSGZT2uR33C>U8Qn{*%*B$Ge=nny$HAYq{=vy|sI0 z_vss+H_qMky?OB#|JK!>IX&II^LlUh#rO5!7TtbwC;iULyV-Xq?ybB}ykGP{?LpZ? z-G|jbTmIbG@7#ZCz;~eY(cDM(28Dyq{*m>M4?_iynUBkc4TkHUI6gT!;y-fz>HMcd z&t%Ugo)`Y2{>!cx7B7DI)$7;J(U{Spm-3gBzioV_{p!H$8L!*M!p0uH$#^p{Ui4P` z?ZJ24cOCDe-w#jZd?0@)|7iKK^;6KN`;!@ylm7$*nDhK&GcDTy000JJOGiWi{{a60 z|De66lK=n!32;bRa{vGf6951U69E94oEQKA00(qQO+^RV2niQ93PPz|JOBU!-bqA3 zR5;6pl1pe^WfX<Kz5jFWy@@exLEFUIU=wPB&uCjMh(#zyMT!)`VL_Y}A)sPOtDxY> zkSdl!omi0~*ntl;2q{jA^;J@WT8O!=A(Gck8fa>hn{#u{`Ty<UmZ;$48*SK&#a@do zTxVzB&kXn91MHApZ+y|w(yUuEv9>g)!KXI6l>4dj==iVKK6+%4zaRizy(5eryC3d2 z+5Y_D$4}k5v2=Siw{=O)SWY2HJwR3xX1*M*9G^XQ*TCNXF$Vj(kbMJXK0DaS_Sa^1 z?CEa!cFWDhcwxy%a?i@DN|G6-M#uuWU>lss@I>;$xmQ|`u3f;MQ|<i+pZFzHDa=;| z5kbrooMO2V416$4J>pYuHxxvMeq4TW;>|7Z2*AsqT=`-1O~nTm6O&pNEK?^cf9CX= zkq5|qAoE7<gSlXrhR#lIk9r2?Ha9f5_RCesJZPj+QjqAngNL9-76eTdm0)Hf-qX^# zt+gfcDw~#4X?AfC7ds+_xacq^Xn+ub1&{bp&zq_g3|6vGQel0Rq`s777Og8PQ4EEm z;v$G0bpwMeQ#1ky7!XWxYTk0mqQ&3+LheIVB)Tz<4W}Y;<cNz7mAU~dz8=MasVArz z7Oq~c)n;}2;^@@))ar~YI7FQ|=d2Jzp%DsAP-+UqO^!GgM4hRsxme`Vbn^Yk>un3V z^yy=@%6zqN^x`#qW+;e7j>th{6GV}sf*}g7{(R#T)yg-AZh0C&U;WA`AL$qz8()5^ zGFi2`g&L7!c?x+A2oOaG0c*Bg&YZt8cJ{jq_W{uTdA-<;`@iP$$=$H?gYIYc_q^*$ z#k(Key`d40R3?+GmgK8hHJcwiQ~r4By@w9*PuzR>x3#(F?YW_W5pPc(t(@-Y{psOt zz2!UE_5S)bLF)<rmD^sL?0WXY#py@is+^|tc+=mv&+)&s9XQ{z^}x9<ibo0nY&!9u a`ab|E?o=hKA+1LM0000<MNUMnLSTYql%5L! diff --git a/docs/_build/html/_static/comment-close.png b/docs/_build/html/_static/comment-close.png deleted file mode 100644 index 09b54be46da3f0d4a5061da289dc91d8a2cdbc9c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3578 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 A2LJ#7 diff --git a/docs/_build/html/_static/comment.png b/docs/_build/html/_static/comment.png deleted file mode 100644 index 92feb52b8824c6b0f59b658b1196c61de9162a95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3445 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 Xn!ZpXD%P(H00000NkvXXu0mjf<Culu diff --git a/docs/_build/html/_static/default.css b/docs/_build/html/_static/default.css deleted file mode 100644 index 21f3f509..00000000 --- a/docs/_build/html/_static/default.css +++ /dev/null @@ -1,256 +0,0 @@ -/* - * default.css_t - * ~~~~~~~~~~~~~ - * - * Sphinx stylesheet -- default theme. - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -@import url("basic.css"); - -/* -- page layout ----------------------------------------------------------- */ - -body { - font-family: sans-serif; - font-size: 100%; - background-color: #11303d; - color: #000; - margin: 0; - padding: 0; -} - -div.document { - background-color: #1c4e63; -} - -div.documentwrapper { - float: left; - width: 100%; -} - -div.bodywrapper { - margin: 0 0 0 230px; -} - -div.body { - background-color: #ffffff; - color: #000000; - padding: 0 20px 30px 20px; -} - -div.footer { - color: #ffffff; - width: 100%; - padding: 9px 0 9px 0; - text-align: center; - font-size: 75%; -} - -div.footer a { - color: #ffffff; - text-decoration: underline; -} - -div.related { - background-color: #133f52; - line-height: 30px; - color: #ffffff; -} - -div.related a { - color: #ffffff; -} - -div.sphinxsidebar { -} - -div.sphinxsidebar h3 { - font-family: 'Trebuchet MS', sans-serif; - color: #ffffff; - font-size: 1.4em; - font-weight: normal; - margin: 0; - padding: 0; -} - -div.sphinxsidebar h3 a { - color: #ffffff; -} - -div.sphinxsidebar h4 { - font-family: 'Trebuchet MS', sans-serif; - color: #ffffff; - font-size: 1.3em; - font-weight: normal; - margin: 5px 0 0 0; - padding: 0; -} - -div.sphinxsidebar p { - color: #ffffff; -} - -div.sphinxsidebar p.topless { - margin: 5px 10px 10px 10px; -} - -div.sphinxsidebar ul { - margin: 10px; - padding: 0; - color: #ffffff; -} - -div.sphinxsidebar a { - color: #98dbcc; -} - -div.sphinxsidebar input { - border: 1px solid #98dbcc; - font-family: sans-serif; - font-size: 1em; -} - - - -/* -- hyperlink styles ------------------------------------------------------ */ - -a { - color: #355f7c; - text-decoration: none; -} - -a:visited { - color: #355f7c; - text-decoration: none; -} - -a:hover { - text-decoration: underline; -} - - - -/* -- body styles ----------------------------------------------------------- */ - -div.body h1, -div.body h2, -div.body h3, -div.body h4, -div.body h5, -div.body h6 { - font-family: 'Trebuchet MS', sans-serif; - background-color: #f2f2f2; - font-weight: normal; - color: #20435c; - border-bottom: 1px solid #ccc; - margin: 20px -20px 10px -20px; - padding: 3px 0 3px 10px; -} - -div.body h1 { margin-top: 0; font-size: 200%; } -div.body h2 { font-size: 160%; } -div.body h3 { font-size: 140%; } -div.body h4 { font-size: 120%; } -div.body h5 { font-size: 110%; } -div.body h6 { font-size: 100%; } - -a.headerlink { - color: #c60f0f; - font-size: 0.8em; - padding: 0 4px 0 4px; - text-decoration: none; -} - -a.headerlink:hover { - background-color: #c60f0f; - color: white; -} - -div.body p, div.body dd, div.body li { - text-align: justify; - line-height: 130%; -} - -div.admonition p.admonition-title + p { - display: inline; -} - -div.admonition p { - margin-bottom: 5px; -} - -div.admonition pre { - margin-bottom: 5px; -} - -div.admonition ul, div.admonition ol { - margin-bottom: 5px; -} - -div.note { - background-color: #eee; - border: 1px solid #ccc; -} - -div.seealso { - background-color: #ffc; - border: 1px solid #ff6; -} - -div.topic { - background-color: #eee; -} - -div.warning { - background-color: #ffe4e4; - border: 1px solid #f66; -} - -p.admonition-title { - display: inline; -} - -p.admonition-title:after { - content: ":"; -} - -pre { - padding: 5px; - background-color: #eeffcc; - color: #333333; - line-height: 120%; - border: 1px solid #ac9; - border-left: none; - border-right: none; -} - -tt { - background-color: #ecf0f3; - padding: 0 1px 0 1px; - font-size: 0.95em; -} - -th { - background-color: #ede; -} - -.warning tt { - background: #efc2c2; -} - -.note tt { - background: #d6d6d6; -} - -.viewcode-back { - font-family: sans-serif; -} - -div.viewcode-block:target { - background-color: #f4debf; - border-top: 1px solid #ac9; - border-bottom: 1px solid #ac9; -} \ No newline at end of file diff --git a/docs/_build/html/_static/doctools.js b/docs/_build/html/_static/doctools.js deleted file mode 100644 index d4619fdf..00000000 --- a/docs/_build/html/_static/doctools.js +++ /dev/null @@ -1,247 +0,0 @@ -/* - * doctools.js - * ~~~~~~~~~~~ - * - * Sphinx JavaScript utilities for all documentation. - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - */ -jQuery.urldecode = function(x) { - return decodeURIComponent(x).replace(/\+/g, ' '); -} - -/** - * small helper function to urlencode strings - */ -jQuery.urlencode = encodeURIComponent; - -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s == 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; - } - return result; -}; - -/** - * small function to check if an array contains - * a given item. - */ -jQuery.contains = function(arr, item) { - for (var i = 0; i < arr.length; i++) { - if (arr[i] == item) - return true; - } - return false; -}; - -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node) { - if (node.nodeType == 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && !jQuery(node.parentNode).hasClass(className)) { - var span = document.createElement("span"); - span.className = className; - span.appendChild(document.createTextNode(val.substr(pos, text.length))); - node.parentNode.insertBefore(span, node.parentNode.insertBefore( - document.createTextNode(val.substr(pos + text.length)), - node.nextSibling)); - node.nodeValue = val.substr(0, pos); - } - } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this); - }); - } - } - return this.each(function() { - highlight(this); - }); -}; - -/** - * Small JavaScript module for the documentation. - */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - }, - - /** - * i18n support - */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; }, - LOCALE : 'unknown', - - // gettext and ngettext don't access this so that the functions - // can safely bound to a different name (_ = Documentation.gettext) - gettext : function(string) { - var translated = Documentation.TRANSLATIONS[string]; - if (typeof translated == 'undefined') - return string; - return (typeof translated == 'string') ? translated : translated[0]; - }, - - ngettext : function(singular, plural, n) { - var translated = Documentation.TRANSLATIONS[singular]; - if (typeof translated == 'undefined') - return (n == 1) ? singular : plural; - return translated[Documentation.PLURALEXPR(n)]; - }, - - addTranslations : function(catalog) { - for (var key in catalog.messages) - this.TRANSLATIONS[key] = catalog.messages[key]; - this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); - this.LOCALE = catalog.locale; - }, - - /** - * add context elements like header anchor links - */ - addContextElements : function() { - $('div[id] > :header:first').each(function() { - $('<a class="headerlink">\u00B6</a>'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this headline')). - appendTo(this); - }); - $('dt[id]').each(function() { - $('<a class="headerlink">\u00B6</a>'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this definition')). - appendTo(this); - }); - }, - - /** - * workaround a firefox stupidity - */ - fixFirefoxAnchorBug : function() { - if (document.location.hash && $.browser.mozilla) - window.setTimeout(function() { - document.location.href += ''; - }, 10); - }, - - /** - * highlight the search words provided in the url in the text - */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - window.setTimeout(function() { - $.each(terms, function() { - body.highlightText(this.toLowerCase(), 'highlighted'); - }); - }, 10); - $('<p class="highlight-link"><a href="javascript:Documentation.' + - 'hideSearchWords()">' + _('Hide Search Matches') + '</a></p>') - .appendTo($('#searchbox')); - } - }, - - /** - * init the domain index toggle buttons - */ - initIndexTable : function() { - var togglers = $('img.toggler').click(function() { - var src = $(this).attr('src'); - var idnum = $(this).attr('id').substr(7); - $('tr.cg-' + idnum).toggle(); - if (src.substr(-9) == 'minus.png') - $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); - else - $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); - }).css('display', ''); - if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { - togglers.click(); - } - }, - - /** - * helper function to hide the search marks again - */ - hideSearchWords : function() { - $('#searchbox .highlight-link').fadeOut(300); - $('span.highlighted').removeClass('highlighted'); - }, - - /** - * make the url absolute - */ - makeURL : function(relativeURL) { - return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; - }, - - /** - * get the current relative url - */ - getCurrentURL : function() { - var path = document.location.pathname; - var parts = path.split(/\//); - $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { - if (this == '..') - parts.pop(); - }); - var url = parts.join('/'); - return path.substring(url.lastIndexOf('/') + 1, path.length - 1); - } -}; - -// quick alias for translations -_ = Documentation.gettext; - -$(document).ready(function() { - Documentation.init(); -}); diff --git a/docs/_build/html/_static/down-pressed.png b/docs/_build/html/_static/down-pressed.png deleted file mode 100644 index 6f7ad782782e4f8e39b0c6e15c7344700cdd2527..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 368 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}Z23@f-Ava~9&<9T!#}JFtXD=!G zGdl{fK6ro2OGiOl+hKvH6i=D3%%Y^j`yIkRn!8O>@bG)IQR0{Kf+mxNd=_WScA8u_ z3;8(7x2){m9`nt+U(Nab&1G)!{`SPVpDX$w8McLTzAJ39wprG3p4XLq$06M`%}2Yk zRPPsb<eOBuJzzJtaBsDHruj&MO}CkI9@oM{u93MWs^*chA=$e7rUh<GoTlU#?wGGz z*_K*(>ES*dnYm1wkGL;iioAUB*Or2kz6(-M_r_#Me-<g+a_(*JjN&U*z02OX#~$%( z6#3ZLekrlFz3AKX``cC&$K^ccDa(j?XLM8b!=w9;#rq6gQ-fH_ZUFtx;OXk;vd$@? F2>`{mj$Z%( diff --git a/docs/_build/html/_static/down.png b/docs/_build/html/_static/down.png deleted file mode 100644 index 3003a88770de3977d47a2ba69893436a2860f9e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}xaV3tUZ$qnrLa#kt978NlpS`ru z&)HFc^}^>{UOEce+71h5nn>6&w6A!ie<Ab_+oUB-{c$>Nbu1wh)UGh{8~et^#oZ1# z>T7oM=FZ~xXWnTo{qnXm$ZLOlqGswI_m2{XwVK)IJmBjW{J3-B3x@C=M{ShWt#<pw z+y29?H~r3Ic5@5&Ry#4lLZ0TfgDn1@D+(sA?zAeN{MGSl)<;wKn{AaYbJjJ-X;-#| zTD>fYS9M?R;8K$~YwlIqwf>VA7q=YKcwf2DS4Zj5inDKXXB1zl=(YO3ST6~rDq)&z z*o>z)=hxrfG-cDBW0G$!?6{M<$@{_4{m1o%Ub!naEtn|@^frU1tDnm{r-UW|!^@B8 diff --git a/docs/_build/html/_static/file.png b/docs/_build/html/_static/file.png deleted file mode 100644 index d18082e397e7e54f20721af768c4c2983258f1b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmP$Hy<xMqvo~{83qPMQBN1g5R21mCvNmQ;vmqr-?K<V zU4kQ;TS-l(;>OL$D9)yc9|lc|nKf<9@eUiWd>3GuTC!a5vdfWYEazjncPj5ZQX%+1 zt8B*4=d)!cdDz4wr^#OMYfqGz$1LDFF>|#>*O?<HXR=hzTfCLc!DZQEwT&GKx6RhQ zo))l-Eh>AGil(WEs?wLLy{Gj2J_@opDm%`dlax3yA*@*N$G&*ukFv>P8+2CBWO(qz zD0k1@kN>hhb1_6`&wrCswzINE(evt-5C1B^STi2@P<G<wTm_|``|B7th)+*kX+Pib z*M}qKJqcfCd_2yP9QQKsOSb)vO-|{xyF)I_-07lx@Zvo#rJ$WIhTj)AKCk@a+86Xn ktMBn$GheTj#{azILsys7Te#I72ZkAgr>mdKI;Vst0PQB6!2kdN diff --git a/docs/_build/html/_static/jquery.js b/docs/_build/html/_static/jquery.js deleted file mode 100644 index 7c243080..00000000 --- a/docs/_build/html/_static/jquery.js +++ /dev/null @@ -1,154 +0,0 @@ -/*! - * jQuery JavaScript Library v1.4.2 - * http://jquery.com/ - * - * Copyright 2010, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2010, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Sat Feb 13 22:33:48 2010 -0500 - */ -(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i? -e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r= -j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g, -"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e= -true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/, -Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&& -(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this, -a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b=== -"find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this, -function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)|| -c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded", -L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype, -"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+ -a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f], -d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]=== -a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&& -!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari= -true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML=" <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>"; -var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected, -parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent= -false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n= -s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true, -applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando]; -else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this, -a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b=== -w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i, -cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ", -i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" ", -" ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className= -this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i= -e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected= -c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed"); -a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g, -function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split("."); -k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a), -C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!= -null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type= -e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&& -f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive; -if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "), -fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop|| -d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this, -"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent= -a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y, -isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit= -{setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}}; -if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data", -e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a, -"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a, -d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&& -!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}}, -toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector, -u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "), -function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q]; -if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g, -e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift(); -t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D|| -g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[]; -for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length- -1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/, -CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}}, -relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]= -l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[]; -h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()}, -CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m, -g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)}, -text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}}, -setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h= -h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case "only":case "first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case "last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case "nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m= -m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m=== -"="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g, -h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition|| -!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m= -h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&& -q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>"; -if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}(); -(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}: -function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/, -gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length; -c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j= -{},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a=== -"string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode", -d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")? -a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType=== -1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)? -a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d= -c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this}, -wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})}, -prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b, -this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild); -return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja, -""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&& -this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]|| -u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length=== -1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]); -return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["", -""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e= -c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]? -c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja= -function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter= -Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a, -"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f= -a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b= -a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!== -"string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this}, -serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "), -function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href, -global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&& -e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)? -"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache=== -false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B= -false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since", -c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E|| -d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x); -g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status=== -1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b=== -"json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional; -if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay"); -this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a], -"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)}, -animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing= -j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]); -this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration=== -"number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]|| -c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start; -this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now= -this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem, -e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length|| -c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement? -function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b= -this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle; -k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&& -f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>"; -a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b); -c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a, -d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top- -f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset": -"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in -e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window); diff --git a/docs/_build/html/_static/minus.png b/docs/_build/html/_static/minus.png deleted file mode 100644 index da1c5620d10c047525a467a425abe9ff5269cfc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1SHkYJtzcHoCO|{#XvD(5N2eUHAey{$X?>< z>&kweokM_|(Po{+Q=kw>iEBiObAE1aYF-J$w=>iB1I2<oT^vIsE+^X*KjUGJJ8<a0 zfdz{eHHE&rzrX(bySvGUL|lavlN4AuRwpzDOq(`sMv;5Joa+jUx<3|oWPN;mPUJ0` pW__Wi<5+59Lc)&n_i}Q^3>R$WLpMkF=>bh=@O1TaS?83{1OVknK<NMg diff --git a/docs/_build/html/_static/plus.png b/docs/_build/html/_static/plus.png deleted file mode 100644 index b3cb37425ea68b39ffa7b2e5fb69161275a87541..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 199 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1SHkYJtzcHoCO|{#XvD(5N2eUHAey{$X?>< z>&kweokM`jkU7Va11Q8%;u=xnoS&PUnpeW`?aZ|OK(QcC7sn8Z%gHvy&v=;Q4jejg zV8NnAO`-4Z@2~&<?ryS^@YXF`T!a&o6j(S`Cmb}9IcHb(MZ@Xn$H&JXUMl#uzyAM< o7knL=1-mEi3=josIGoJJAh%tCVFz!`HlXPYp00i_>zopr02WF_WB>pF diff --git a/docs/_build/html/_static/pygments.css b/docs/_build/html/_static/pygments.css deleted file mode 100644 index 1a14f2ae..00000000 --- a/docs/_build/html/_static/pygments.css +++ /dev/null @@ -1,62 +0,0 @@ -.highlight .hll { background-color: #ffffcc } -.highlight { background: #eeffcc; } -.highlight .c { color: #408090; font-style: italic } /* Comment */ -.highlight .err { border: 1px solid #FF0000 } /* Error */ -.highlight .k { color: #007020; font-weight: bold } /* Keyword */ -.highlight .o { color: #666666 } /* Operator */ -.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ -.highlight .cp { color: #007020 } /* Comment.Preproc */ -.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ -.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ -.highlight .gd { color: #A00000 } /* Generic.Deleted */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #FF0000 } /* Generic.Error */ -.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ -.highlight .gi { color: #00A000 } /* Generic.Inserted */ -.highlight .go { color: #303030 } /* Generic.Output */ -.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ -.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ -.highlight .gt { color: #0040D0 } /* Generic.Traceback */ -.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ -.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ -.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ -.highlight .kp { color: #007020 } /* Keyword.Pseudo */ -.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ -.highlight .kt { color: #902000 } /* Keyword.Type */ -.highlight .m { color: #208050 } /* Literal.Number */ -.highlight .s { color: #4070a0 } /* Literal.String */ -.highlight .na { color: #4070a0 } /* Name.Attribute */ -.highlight .nb { color: #007020 } /* Name.Builtin */ -.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ -.highlight .no { color: #60add5 } /* Name.Constant */ -.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ -.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ -.highlight .ne { color: #007020 } /* Name.Exception */ -.highlight .nf { color: #06287e } /* Name.Function */ -.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ -.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ -.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ -.highlight .nv { color: #bb60d5 } /* Name.Variable */ -.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ -.highlight .w { color: #bbbbbb } /* Text.Whitespace */ -.highlight .mf { color: #208050 } /* Literal.Number.Float */ -.highlight .mh { color: #208050 } /* Literal.Number.Hex */ -.highlight .mi { color: #208050 } /* Literal.Number.Integer */ -.highlight .mo { color: #208050 } /* Literal.Number.Oct */ -.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ -.highlight .sc { color: #4070a0 } /* Literal.String.Char */ -.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ -.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ -.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ -.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ -.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ -.highlight .sx { color: #c65d09 } /* Literal.String.Other */ -.highlight .sr { color: #235388 } /* Literal.String.Regex */ -.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ -.highlight .ss { color: #517918 } /* Literal.String.Symbol */ -.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ -.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ -.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ -.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ -.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ \ No newline at end of file diff --git a/docs/_build/html/_static/rtd.css b/docs/_build/html/_static/rtd.css deleted file mode 100644 index a8cedebf..00000000 --- a/docs/_build/html/_static/rtd.css +++ /dev/null @@ -1,1438 +0,0 @@ -/* - * rtd.css - * ~~~~~~~~~~~~~~~ - * - * Sphinx stylesheet -- sphinxdoc theme. Originally created by - * Armin Ronacher for Werkzeug. - * - * Customized for ReadTheDocs by Eric Pierce & Eric Holscher - * - * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/* RTD colors - * light blue: #e8ecef - * medium blue: #8ca1af - * dark blue: #465158 - * dark grey: #444444 - * - * white hover: #d1d9df; - * medium blue hover: #697983; - * green highlight: #8ecc4c - * light blue (project bar): #e8ecef - */ - -@import url("basic.css"); - -/* PAGE LAYOUT -------------------------------------------------------------- */ - -body { - font: 100%/1.5 "ff-meta-web-pro-1","ff-meta-web-pro-2",Arial,"Helvetica Neue",sans-serif; - text-align: center; - color: black; - background-color: #465158; - padding: 0; - margin: 0; -} - -div.document { - text-align: left; - background-color: #e8ecef; -} - -div.bodywrapper { - background-color: #ffffff; - border-left: 1px solid #ccc; - border-bottom: 1px solid #ccc; - margin: 0 0 0 16em; -} - -div.body { - margin: 0; - padding: 0.5em 1.3em; - max-width: 55em; - min-width: 20em; -} - -div.related { - font-size: 1em; - background-color: #465158; -} - -div.documentwrapper { - float: left; - width: 100%; - background-color: #e8ecef; -} - - -/* HEADINGS --------------------------------------------------------------- */ - -h1 { - margin: 0; - padding: 0.7em 0 0.3em 0; - font-size: 1.5em; - line-height: 1.15; - color: #111; - clear: both; -} - -h2 { - margin: 2em 0 0.2em 0; - font-size: 1.35em; - padding: 0; - color: #465158; -} - -h3 { - margin: 1em 0 -0.3em 0; - font-size: 1.2em; - color: #6c818f; -} - -div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a { - color: black; -} - -h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor { - display: none; - margin: 0 0 0 0.3em; - padding: 0 0.2em 0 0.2em; - color: #aaa !important; -} - -h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor, -h5:hover a.anchor, h6:hover a.anchor { - display: inline; -} - -h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover, -h5 a.anchor:hover, h6 a.anchor:hover { - color: #777; - background-color: #eee; -} - - -/* LINKS ------------------------------------------------------------------ */ - -/* Normal links get a pseudo-underline */ -a { - color: #444; - text-decoration: none; - border-bottom: 1px solid #ccc; -} - -/* Links in sidebar, TOC, index trees and tables have no underline */ -.sphinxsidebar a, -.toctree-wrapper a, -.indextable a, -#indices-and-tables a { - color: #444; - text-decoration: none; - border-bottom: none; -} - -/* Most links get an underline-effect when hovered */ -a:hover, -div.toctree-wrapper a:hover, -.indextable a:hover, -#indices-and-tables a:hover { - color: #111; - text-decoration: none; - border-bottom: 1px solid #111; -} - -/* Footer links */ -div.footer a { - color: #86989B; - text-decoration: none; - border: none; -} -div.footer a:hover { - color: #a6b8bb; - text-decoration: underline; - border: none; -} - -/* Permalink anchor (subtle grey with a red hover) */ -div.body a.headerlink { - color: #ccc; - font-size: 1em; - margin-left: 6px; - padding: 0 4px 0 4px; - text-decoration: none; - border: none; -} -div.body a.headerlink:hover { - color: #c60f0f; - border: none; -} - - -/* NAVIGATION BAR --------------------------------------------------------- */ - -div.related ul { - height: 2.5em; -} - -div.related ul li { - margin: 0; - padding: 0.65em 0; - float: left; - display: block; - color: white; /* For the >> separators */ - font-size: 0.8em; -} - -div.related ul li.right { - float: right; - margin-right: 5px; - color: transparent; /* Hide the | separators */ -} - -/* "Breadcrumb" links in nav bar */ -div.related ul li a { - order: none; - background-color: inherit; - font-weight: bold; - margin: 6px 0 6px 4px; - line-height: 1.75em; - color: #ffffff; - padding: 0.4em 0.8em; - border: none; - border-radius: 3px; -} -/* previous / next / modules / index links look more like buttons */ -div.related ul li.right a { - margin: 0.375em 0; - background-color: #697983; - text-shadow: 0 1px rgba(0, 0, 0, 0.5); - border-radius: 3px; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; -} -/* All navbar links light up as buttons when hovered */ -div.related ul li a:hover { - background-color: #8ca1af; - color: #ffffff; - text-decoration: none; - border-radius: 3px; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; -} -/* Take extra precautions for tt within links */ -a tt, -div.related ul li a tt { - background: inherit !important; - color: inherit !important; -} - - -/* SIDEBAR ---------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 0; -} - -div.sphinxsidebar { - margin: 0; - margin-left: -100%; - float: left; - top: 3em; - left: 0; - padding: 0 1em; - width: 14em; - font-size: 1em; - text-align: left; - background-color: #e8ecef; -} - -div.sphinxsidebar img { - max-width: 12em; -} - -div.sphinxsidebar h3, div.sphinxsidebar h4 { - margin: 1.2em 0 0.3em 0; - font-size: 1em; - padding: 0; - color: #222222; - font-family: "ff-meta-web-pro-1", "ff-meta-web-pro-2", "Arial", "Helvetica Neue", sans-serif; -} - -div.sphinxsidebar h3 a { - color: #444444; -} - -div.sphinxsidebar ul, -div.sphinxsidebar p { - margin-top: 0; - padding-left: 0; - line-height: 130%; - background-color: #e8ecef; -} - -/* No bullets for nested lists, but a little extra indentation */ -div.sphinxsidebar ul ul { - list-style-type: none; - margin-left: 1.5em; - padding: 0; -} - -/* A little top/bottom padding to prevent adjacent links' borders - * from overlapping each other */ -div.sphinxsidebar ul li { - padding: 1px 0; -} - -/* A little left-padding to make these align with the ULs */ -div.sphinxsidebar p.topless { - padding-left: 0 0 0 1em; -} - -/* Make these into hidden one-liners */ -div.sphinxsidebar ul li, -div.sphinxsidebar p.topless { - white-space: nowrap; - overflow: hidden; -} -/* ...which become visible when hovered */ -div.sphinxsidebar ul li:hover, -div.sphinxsidebar p.topless:hover { - overflow: visible; -} - -/* Search text box and "Go" button */ -#searchbox { - margin-top: 2em; - margin-bottom: 1em; - background: #ddd; - padding: 0.5em; - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; -} -#searchbox h3 { - margin-top: 0; -} - -/* Make search box and button abut and have a border */ -input, -div.sphinxsidebar input { - border: 1px solid #999; - float: left; -} - -/* Search textbox */ -input[type="text"] { - margin: 0; - padding: 0 3px; - height: 20px; - width: 144px; - border-top-left-radius: 3px; - border-bottom-left-radius: 3px; - -moz-border-radius-topleft: 3px; - -moz-border-radius-bottomleft: 3px; - -webkit-border-top-left-radius: 3px; - -webkit-border-bottom-left-radius: 3px; -} -/* Search button */ -input[type="submit"] { - margin: 0 0 0 -1px; /* -1px prevents a double-border with textbox */ - height: 22px; - color: #444; - background-color: #e8ecef; - padding: 1px 4px; - font-weight: bold; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - -moz-border-radius-topright: 3px; - -moz-border-radius-bottomright: 3px; - -webkit-border-top-right-radius: 3px; - -webkit-border-bottom-right-radius: 3px; -} -input[type="submit"]:hover { - color: #ffffff; - background-color: #8ecc4c; -} - -div.sphinxsidebar p.searchtip { - clear: both; - padding: 0.5em 0 0 0; - background: #ddd; - color: #666; - font-size: 0.9em; -} - -/* Sidebar links are unusual */ -div.sphinxsidebar li a, -div.sphinxsidebar p a { - background: #e8ecef; /* In case links overlap main content */ - border-radius: 3px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - border: 1px solid transparent; /* To prevent things jumping around on hover */ - padding: 0 5px 0 5px; -} -div.sphinxsidebar li a:hover, -div.sphinxsidebar p a:hover { - color: #111; - text-decoration: none; - border: 1px solid #888; -} - -/* Tweak any link appearing in a heading */ -div.sphinxsidebar h3 a { -} - - - - -/* OTHER STUFF ------------------------------------------------------------ */ - -cite, code, tt { - font-family: 'Consolas', 'Deja Vu Sans Mono', - 'Bitstream Vera Sans Mono', monospace; - font-size: 0.95em; - letter-spacing: 0.01em; -} - -tt { - background-color: #f2f2f2; - color: #444; -} - -tt.descname, tt.descclassname, tt.xref { - border: 0; -} - -hr { - border: 1px solid #abc; - margin: 2em; -} - -pre, #_fontwidthtest { - font-family: 'Consolas', 'Deja Vu Sans Mono', - 'Bitstream Vera Sans Mono', monospace; - margin: 1em 2em; - font-size: 0.95em; - letter-spacing: 0.015em; - line-height: 120%; - padding: 0.5em; - border: 1px solid #ccc; - background-color: #eee; - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; -} - -pre a { - color: inherit; - text-decoration: underline; -} - -td.linenos pre { - padding: 0.5em 0; -} - -div.quotebar { - background-color: #f8f8f8; - max-width: 250px; - float: right; - padding: 2px 7px; - border: 1px solid #ccc; -} - -div.topic { - background-color: #f8f8f8; -} - -table { - border-collapse: collapse; - margin: 0 -0.5em 0 -0.5em; -} - -table td, table th { - padding: 0.2em 0.5em 0.2em 0.5em; -} - - -/* ADMONITIONS AND WARNINGS ------------------------------------------------- */ - -/* Shared by admonitions, warnings and sidebars */ -div.admonition, -div.warning, -div.sidebar { - font-size: 0.9em; - margin: 2em; - padding: 0; - /* - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; - */ -} -div.admonition p, -div.warning p, -div.sidebar p { - margin: 0.5em 1em 0.5em 1em; - padding: 0; -} -div.admonition pre, -div.warning pre, -div.sidebar pre { - margin: 0.4em 1em 0.4em 1em; -} -div.admonition p.admonition-title, -div.warning p.admonition-title, -div.sidebar p.sidebar-title { - margin: 0; - padding: 0.1em 0 0.1em 0.5em; - color: white; - font-weight: bold; - font-size: 1.1em; - text-shadow: 0 1px rgba(0, 0, 0, 0.5); -} -div.admonition ul, div.admonition ol, -div.warning ul, div.warning ol, -div.sidebar ul, div.sidebar ol { - margin: 0.1em 0.5em 0.5em 3em; - padding: 0; -} - - -/* Admonitions and sidebars only */ -div.admonition, div.sidebar { - border: 1px solid #609060; - background-color: #e9ffe9; -} -div.admonition p.admonition-title, -div.sidebar p.sidebar-title { - background-color: #70A070; - border-bottom: 1px solid #609060; -} - - -/* Warnings only */ -div.warning { - border: 1px solid #900000; - background-color: #ffe9e9; -} -div.warning p.admonition-title { - background-color: #b04040; - border-bottom: 1px solid #900000; -} - - -/* Sidebars only */ -div.sidebar { - max-width: 200px; -} - - - -div.versioninfo { - margin: 1em 0 0 0; - border: 1px solid #ccc; - background-color: #DDEAF0; - padding: 8px; - line-height: 1.3em; - font-size: 0.9em; -} - -.viewcode-back { - font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', - 'Verdana', sans-serif; -} - -div.viewcode-block:target { - background-color: #f4debf; - border-top: 1px solid #ac9; - border-bottom: 1px solid #ac9; -} - -dl { - margin: 1em 0 2.5em 0; -} - -/* Highlight target when you click an internal link */ -dt:target { - background: #ffe080; -} -/* Don't highlight whole divs */ -div.highlight { - background: transparent; -} -/* But do highlight spans (so search results can be highlighted) */ -span.highlight { - background: #ffe080; -} - -div.footer { - background-color: #465158; - color: #eeeeee; - padding: 0 2em 2em 2em; - clear: both; - font-size: 0.8em; - text-align: center; -} - -p { - margin: 0.8em 0 0.5em 0; -} - -.section p img { - margin: 1em 2em; -} - - -/* MOBILE LAYOUT -------------------------------------------------------------- */ - -@media screen and (max-width: 600px) { - - h1, h2, h3, h4, h5 { - position: relative; - } - - ul { - padding-left: 1.25em; - } - - div.bodywrapper a.headerlink, #indices-and-tables h1 a { - color: #e6e6e6; - font-size: 80%; - float: right; - line-height: 1.8; - position: absolute; - right: -0.7em; - visibility: inherit; - } - - div.bodywrapper h1 a.headerlink, #indices-and-tables h1 a { - line-height: 1.5; - } - - pre { - font-size: 0.7em; - overflow: auto; - word-wrap: break-word; - white-space: pre-wrap; - } - - div.related ul { - height: 2.5em; - padding: 0; - text-align: left; - } - - div.related ul li { - clear: both; - color: #465158; - padding: 0.2em 0; - } - - div.related ul li:last-child { - border-bottom: 1px dotted #8ca1af; - padding-bottom: 0.4em; - margin-bottom: 1em; - width: 100%; - } - - div.related ul li a { - color: #465158; - padding-right: 0; - } - - div.related ul li a:hover { - background: inherit; - color: inherit; - } - - div.related ul li.right { - clear: none; - padding: 0.65em 0; - margin-bottom: 0.5em; - } - - div.related ul li.right a { - color: #fff; - padding-right: 0.8em; - } - - div.related ul li.right a:hover { - background-color: #8ca1af; - } - - div.body { - clear: both; - min-width: 0; - word-wrap: break-word; - } - - div.bodywrapper { - margin: 0 0 0 0; - } - - div.sphinxsidebar { - float: none; - margin: 0; - width: auto; - } - - div.sphinxsidebar input[type="text"] { - height: 2em; - line-height: 2em; - width: 70%; - } - - div.sphinxsidebar input[type="submit"] { - height: 2em; - margin-left: 0.5em; - width: 20%; - } - - div.sphinxsidebar p.searchtip { - background: inherit; - margin-bottom: 1em; - } - - div.sphinxsidebar ul li, div.sphinxsidebar p.topless { - white-space: normal; - } - - .bodywrapper img { - display: block; - margin-left: auto; - margin-right: auto; - max-width: 100%; - } - - div.documentwrapper { - float: none; - } - - div.admonition, div.warning, pre, blockquote { - margin-left: 0em; - margin-right: 0em; - } - - .body p img { - margin: 0; - } - - #searchbox { - background: transparent; - } - - .related:not(:first-child) li { - display: none; - } - - .related:not(:first-child) li.right { - display: block; - } - - div.footer { - padding: 1em; - } - - .rtd_doc_footer .badge { - float: none; - margin: 1em auto; - position: static; - } - - .rtd_doc_footer .badge.revsys-inline { - margin-right: auto; - margin-bottom: 2em; - } - - table.indextable { - display: block; - width: auto; - } - - .indextable tr { - display: block; - } - - .indextable td { - display: block; - padding: 0; - width: auto !important; - } - - .indextable td dt { - margin: 1em 0; - } - - ul.search { - margin-left: 0.25em; - } - - ul.search li div.context { - font-size: 90%; - line-height: 1.1; - margin-bottom: 1; - margin-left: 0; - } - -} - -/* Links in sidebar, TOC, index trees and tables have no underline */ -.sphinxsidebar a, -.toctree-wrapper a, -.indextable a, -#indices-and-tables a { - color: #444444; - text-decoration: none; - border-bottom: none; -} - -/* Most links get an underline-effect when hovered */ -a:hover, -div.toctree-wrapper a:hover, -.indextable a:hover, -#indices-and-tables a:hover { - color: #111111; - text-decoration: none; - border-bottom: 1px solid #111111; -} - -/* Footer links */ -div.footer a { - color: #86989b; - text-decoration: none; - border: none; -} -div.footer a:hover { - color: #a6b8bb; - text-decoration: underline; - border: none; -} - -/* Permalink anchor (subtle grey with a red hover) */ -div.body a.headerlink { - color: #cccccc; - font-size: 1em; - margin-left: 6px; - padding: 0 4px 0 4px; - text-decoration: none; - border: none; -} -div.body a.headerlink:hover { - color: #c60f0f; - border: none; -} - - -/* NAVIGATION BAR --------------------------------------------------------- */ - -div.related ul { - height: 2.5em; -} - -div.related ul li { - margin: 0; - padding: 0.65em 0; - float: left; - display: block; - color: #ffffff; /* For the >> separators */ - font-size: 0.8em; -} - -div.related ul li.right { - float: right; - margin-right: 5px; - color: transparent; /* Hide the | separators */ -} - -/* "Breadcrumb" links in nav bar */ -div.related ul li a { - order: none; - background-color: inherit; - font-weight: bold; - margin: 6px 0 6px 4px; - line-height: 1.75em; - color: #ffffff; - text-shadow: 0 1px rgba(0, 0, 0, 0.5); - padding: 0.4em 0.8em; - border: none; - border-radius: 3px; -} -/* previous / next / modules / index links look more like buttons */ -div.related ul li.right a { - margin: 0.375em 0; - background-color: #697983; - text-shadow: 0 1px rgba(0, 0, 0, 0.5); - border-radius: 3px; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; -} -/* All navbar links light up as buttons when hovered */ -div.related ul li a:hover { - background-color: #8ca1af; - color: #ffffff; - text-decoration: none; - border-radius: 3px; - -webkit-border-radius: 3px; - -moz-border-radius: 3px; -} -/* Take extra precautions for tt within links */ -a tt, -div.related ul li a tt { - background: inherit !important; - color: inherit !important; -} - - -/* SIDEBAR ---------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 0; -} - -div.sphinxsidebar { - margin: 0; - margin-left: -100%; - float: left; - top: 3em; - left: 0; - padding: 0 1em; - width: 14em; - font-size: 1em; - text-align: left; - background-color: #e8ecef; -} - -div.sphinxsidebar img { - max-width: 12em; -} - -div.sphinxsidebar h3, div.sphinxsidebar h4 { - margin: 1.2em 0 0.3em 0; - font-size: 1em; - padding: 0; - color: #222222; - font-family: "ff-meta-web-pro-1", "ff-meta-web-pro-2", "Arial", "Helvetica Neue", sans-serif; -} - -div.sphinxsidebar h3 a { - color: ; -} - -div.sphinxsidebar ul, -div.sphinxsidebar p { - margin-top: 0; - padding-left: 0; - line-height: 130%; - background-color: #e8ecef; -} - -/* No bullets for nested lists, but a little extra indentation */ -div.sphinxsidebar ul ul { - list-style-type: none; - margin-left: 1.5em; - padding: 0; -} - -/* A little top/bottom padding to prevent adjacent links' borders - * from overlapping each other */ -div.sphinxsidebar ul li { - padding: 1px 0; -} - -/* A little left-padding to make these align with the ULs */ -div.sphinxsidebar p.topless { - padding-left: 0 0 0 1em; -} - -/* Make these into hidden one-liners */ -div.sphinxsidebar ul li, -div.sphinxsidebar p.topless { - white-space: nowrap; - overflow: hidden; -} -/* ...which become visible when hovered */ -div.sphinxsidebar ul li:hover, -div.sphinxsidebar p.topless:hover { - overflow: visible; -} - -/* Search text box and "Go" button */ -#searchbox { - margin-top: 2em; - margin-bottom: 1em; - background: #dddddd; - padding: 0.5em; - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; -} -#searchbox h3 { - margin-top: 0; -} - -/* Make search box and button abut and have a border */ -input, -div.sphinxsidebar input { - border: 1px solid #999999; - float: left; -} - -/* Search textbox */ -input[type="text"] { - margin: 0; - padding: 0 3px; - height: 20px; - width: 144px; - border-top-left-radius: 3px; - border-bottom-left-radius: 3px; - -moz-border-radius-topleft: 3px; - -moz-border-radius-bottomleft: 3px; - -webkit-border-top-left-radius: 3px; - -webkit-border-bottom-left-radius: 3px; -} -/* Search button */ -input[type="submit"] { - margin: 0 0 0 -1px; /* -1px prevents a double-border with textbox */ - height: 22px; - color: #444444; - background-color: #e8ecef; - padding: 1px 4px; - font-weight: bold; - border-top-right-radius: 3px; - border-bottom-right-radius: 3px; - -moz-border-radius-topright: 3px; - -moz-border-radius-bottomright: 3px; - -webkit-border-top-right-radius: 3px; - -webkit-border-bottom-right-radius: 3px; -} -input[type="submit"]:hover { - color: #ffffff; - background-color: #8ecc4c; -} - -div.sphinxsidebar p.searchtip { - clear: both; - padding: 0.5em 0 0 0; - background: #dddddd; - color: #666666; - font-size: 0.9em; -} - -/* Sidebar links are unusual */ -div.sphinxsidebar li a, -div.sphinxsidebar p a { - background: #e8ecef; /* In case links overlap main content */ - border-radius: 3px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - border: 1px solid transparent; /* To prevent things jumping around on hover */ - padding: 0 5px 0 5px; -} -div.sphinxsidebar li a:hover, -div.sphinxsidebar p a:hover { - color: #111111; - text-decoration: none; - border: 1px solid #888888; -} - -/* Tweak any link appearing in a heading */ -div.sphinxsidebar h3 a { -} - - - - -/* OTHER STUFF ------------------------------------------------------------ */ - -cite, code, tt { - font-family: 'Consolas', 'Deja Vu Sans Mono', - 'Bitstream Vera Sans Mono', monospace; - font-size: 0.95em; - letter-spacing: 0.01em; -} - -tt { - background-color: ; - color: #444444; -} - -tt.descname, tt.descclassname, tt.xref { - border: 0; -} - -hr { - border: 1px solid #abc; - margin: 2em; -} - -pre, #_fontwidthtest { - font-family: 'Consolas', 'Deja Vu Sans Mono', - 'Bitstream Vera Sans Mono', monospace; - margin: 1em 2em; - font-size: 0.95em; - letter-spacing: 0.015em; - line-height: 120%; - padding: 0.5em; - border: 1px solid #cccccc; - background-color: ; - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; -} - -pre a { - color: inherit; - text-decoration: underline; -} - -td.linenos pre { - padding: 0.5em 0; -} - -div.quotebar { - background-color: #f8f8f8; - max-width: 250px; - float: right; - padding: 2px 7px; - border: 1px solid #cccccc; -} - -div.topic { - background-color: #f8f8f8; -} - -table { - border-collapse: collapse; - margin: 0 -0.5em 0 -0.5em; -} - -table td, table th { - padding: 0.2em 0.5em 0.2em 0.5em; -} - - -/* ADMONITIONS AND WARNINGS ------------------------------------------------- */ - -/* Shared by admonitions, warnings and sidebars */ -div.admonition, -div.warning, -div.sidebar { - font-size: 0.9em; - margin: 2em; - padding: 0; - /* - border-radius: 6px; - -moz-border-radius: 6px; - -webkit-border-radius: 6px; - */ -} -div.admonition p, -div.warning p, -div.sidebar p { - margin: 0.5em 1em 0.5em 1em; - padding: 0; -} -div.admonition pre, -div.warning pre, -div.sidebar pre { - margin: 0.4em 1em 0.4em 1em; -} -div.admonition p.admonition-title, -div.warning p.admonition-title, -div.sidebar p.sidebar-title { - margin: 0; - padding: 0.1em 0 0.1em 0.5em; - color: white; - font-weight: bold; - font-size: 1.1em; - text-shadow: 0 1px rgba(0, 0, 0, 0.5); -} -div.admonition ul, div.admonition ol, -div.warning ul, div.warning ol, -div.sidebar ul, div.sidebar ol { - margin: 0.1em 0.5em 0.5em 3em; - padding: 0; -} - - -/* Admonitions and sidebars only */ -div.admonition, div.sidebar { - border: 1px solid #609060; - background-color: #e9ffe9; -} -div.admonition p.admonition-title, -div.sidebar p.sidebar-title { - background-color: #70a070; - border-bottom: 1px solid #609060; -} - - -/* Warnings only */ -div.warning { - border: 1px solid #900000; - background-color: #ffe9e9; -} -div.warning p.admonition-title { - background-color: #b04040; - border-bottom: 1px solid #900000; -} - - -/* Sidebars only */ -div.sidebar { - max-width: 200px; -} - - - -div.versioninfo { - margin: 1em 0 0 0; - border: 1px solid #cccccc; - background-color: #DDEAF0; - padding: 8px; - line-height: 1.3em; - font-size: 0.9em; -} - -.viewcode-back { - font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva', - 'Verdana', sans-serif; -} - -div.viewcode-block:target { - background-color: #f4debf; - border-top: 1px solid #ac9; - border-bottom: 1px solid #ac9; -} - -dl { - margin: 1em 0 2.5em 0; -} - -/* Highlight target when you click an internal link */ -dt:target { - background: #ffe080; -} -/* Don't highlight whole divs */ -div.highlight { - background: transparent; -} -/* But do highlight spans (so search results can be highlighted) */ -span.highlight { - background: #ffe080; -} - -div.footer { - background-color: #465158; - color: #eeeeee; - padding: 0 2em 2em 2em; - clear: both; - font-size: 0.8em; - text-align: center; -} - -p { - margin: 0.8em 0 0.5em 0; -} - -.section p img { - margin: 1em 2em; -} - - -/* MOBILE LAYOUT -------------------------------------------------------------- */ - -@media screen and (max-width: 600px) { - - h1, h2, h3, h4, h5 { - position: relative; - } - - ul { - padding-left: 1.75em; - } - - div.bodywrapper a.headerlink, #indices-and-tables h1 a { - color: #e6e6e6; - font-size: 80%; - float: right; - line-height: 1.8; - position: absolute; - right: -0.7em; - visibility: inherit; - } - - div.bodywrapper h1 a.headerlink, #indices-and-tables h1 a { - line-height: 1.5; - } - - pre { - font-size: 0.7em; - overflow: auto; - word-wrap: break-word; - white-space: pre-wrap; - } - - div.related ul { - height: 2.5em; - padding: 0; - text-align: left; - } - - div.related ul li { - clear: both; - color: #465158; - padding: 0.2em 0; - } - - div.related ul li:last-child { - border-bottom: 1px dotted #8ca1af; - padding-bottom: 0.4em; - margin-bottom: 1em; - width: 100%; - } - - div.related ul li a { - color: #465158; - padding-right: 0; - } - - div.related ul li a:hover { - background: inherit; - color: inherit; - } - - div.related ul li.right { - clear: none; - padding: 0.65em 0; - margin-bottom: 0.5em; - } - - div.related ul li.right a { - color: #ffffff; - padding-right: 0.8em; - } - - div.related ul li.right a:hover { - background-color: #8ca1af; - } - - div.body { - clear: both; - min-width: 0; - word-wrap: break-word; - } - - div.bodywrapper { - margin: 0 0 0 0; - } - - div.sphinxsidebar { - float: none; - margin: 0; - width: auto; - } - - div.sphinxsidebar input[type="text"] { - height: 2em; - line-height: 2em; - width: 70%; - } - - div.sphinxsidebar input[type="submit"] { - height: 2em; - margin-left: 0.5em; - width: 20%; - } - - div.sphinxsidebar p.searchtip { - background: inherit; - margin-bottom: 1em; - } - - div.sphinxsidebar ul li, div.sphinxsidebar p.topless { - white-space: normal; - } - - .bodywrapper img { - display: block; - margin-left: auto; - margin-right: auto; - max-width: 100%; - } - - div.documentwrapper { - float: none; - } - - div.admonition, div.warning, pre, blockquote { - margin-left: 0em; - margin-right: 0em; - } - - .body p img { - margin: 0; - } - - #searchbox { - background: transparent; - } - - .related:not(:first-child) li { - display: none; - } - - .related:not(:first-child) li.right { - display: block; - } - - div.footer { - padding: 1em; - } - - .rtd_doc_footer .badge { - float: none; - margin: 1em auto; - position: static; - } - - .rtd_doc_footer .badge.revsys-inline { - margin-right: auto; - margin-bottom: 2em; - } - - table.indextable { - display: block; - width: auto; - } - - .indextable tr { - display: block; - } - - .indextable td { - display: block; - padding: 0; - width: auto !important; - } - - .indextable td dt { - margin: 1em 0; - } - - ul.search { - margin-left: 0.25em; - } - - ul.search li div.context { - font-size: 90%; - line-height: 1.1; - margin-bottom: 1; - margin-left: 0; - } - -} \ No newline at end of file diff --git a/docs/_build/html/_static/searchtools.js b/docs/_build/html/_static/searchtools.js deleted file mode 100644 index 663be4c9..00000000 --- a/docs/_build/html/_static/searchtools.js +++ /dev/null @@ -1,560 +0,0 @@ -/* - * searchtools.js_t - * ~~~~~~~~~~~~~~~~ - * - * Sphinx JavaScript utilties for the full-text search. - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/** - * helper function to return a node containing the - * search summary for a given text. keywords is a list - * of stemmed words, hlwords is the list of normal, unstemmed - * words. the first one is used to find the occurance, the - * latter for highlighting it. - */ - -jQuery.makeSearchSummary = function(text, keywords, hlwords) { - var textLower = text.toLowerCase(); - var start = 0; - $.each(keywords, function() { - var i = textLower.indexOf(this.toLowerCase()); - if (i > -1) - start = i; - }); - start = Math.max(start - 120, 0); - var excerpt = ((start > 0) ? '...' : '') + - $.trim(text.substr(start, 240)) + - ((start + 240 - text.length) ? '...' : ''); - var rv = $('<div class="context"></div>').text(excerpt); - $.each(hlwords, function() { - rv = rv.highlightText(this, 'highlighted'); - }); - return rv; -} - - -/** - * Porter Stemmer - */ -var Stemmer = function() { - - var step2list = { - ational: 'ate', - tional: 'tion', - enci: 'ence', - anci: 'ance', - izer: 'ize', - bli: 'ble', - alli: 'al', - entli: 'ent', - eli: 'e', - ousli: 'ous', - ization: 'ize', - ation: 'ate', - ator: 'ate', - alism: 'al', - iveness: 'ive', - fulness: 'ful', - ousness: 'ous', - aliti: 'al', - iviti: 'ive', - biliti: 'ble', - logi: 'log' - }; - - var step3list = { - icate: 'ic', - ative: '', - alize: 'al', - iciti: 'ic', - ical: 'ic', - ful: '', - ness: '' - }; - - var c = "[^aeiou]"; // consonant - var v = "[aeiouy]"; // vowel - var C = c + "[^aeiouy]*"; // consonant sequence - var V = v + "[aeiou]*"; // vowel sequence - - var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0 - var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1 - var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1 - var s_v = "^(" + C + ")?" + v; // vowel in stem - - this.stemWord = function (w) { - var stem; - var suffix; - var firstch; - var origword = w; - - if (w.length < 3) - return w; - - var re; - var re2; - var re3; - var re4; - - firstch = w.substr(0,1); - if (firstch == "y") - w = firstch.toUpperCase() + w.substr(1); - - // Step 1a - re = /^(.+?)(ss|i)es$/; - re2 = /^(.+?)([^s])s$/; - - if (re.test(w)) - w = w.replace(re,"$1$2"); - else if (re2.test(w)) - w = w.replace(re2,"$1$2"); - - // Step 1b - re = /^(.+?)eed$/; - re2 = /^(.+?)(ed|ing)$/; - if (re.test(w)) { - var fp = re.exec(w); - re = new RegExp(mgr0); - if (re.test(fp[1])) { - re = /.$/; - w = w.replace(re,""); - } - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1]; - re2 = new RegExp(s_v); - if (re2.test(stem)) { - w = stem; - re2 = /(at|bl|iz)$/; - re3 = new RegExp("([^aeiouylsz])\\1$"); - re4 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re2.test(w)) - w = w + "e"; - else if (re3.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - else if (re4.test(w)) - w = w + "e"; - } - } - - // Step 1c - re = /^(.+?)y$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(s_v); - if (re.test(stem)) - w = stem + "i"; - } - - // Step 2 - re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step2list[suffix]; - } - - // Step 3 - re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - suffix = fp[2]; - re = new RegExp(mgr0); - if (re.test(stem)) - w = stem + step3list[suffix]; - } - - // Step 4 - re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/; - re2 = /^(.+?)(s|t)(ion)$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - if (re.test(stem)) - w = stem; - } - else if (re2.test(w)) { - var fp = re2.exec(w); - stem = fp[1] + fp[2]; - re2 = new RegExp(mgr1); - if (re2.test(stem)) - w = stem; - } - - // Step 5 - re = /^(.+?)e$/; - if (re.test(w)) { - var fp = re.exec(w); - stem = fp[1]; - re = new RegExp(mgr1); - re2 = new RegExp(meq1); - re3 = new RegExp("^" + C + v + "[^aeiouwxy]$"); - if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) - w = stem; - } - re = /ll$/; - re2 = new RegExp(mgr1); - if (re.test(w) && re2.test(w)) { - re = /.$/; - w = w.replace(re,""); - } - - // and turn initial Y back to y - if (firstch == "y") - w = firstch.toLowerCase() + w.substr(1); - return w; - } -} - - -/** - * Search Module - */ -var Search = { - - _index : null, - _queued_query : null, - _pulse_status : -1, - - init : function() { - var params = $.getQueryParameters(); - if (params.q) { - var query = params.q[0]; - $('input[name="q"]')[0].value = query; - this.performSearch(query); - } - }, - - loadIndex : function(url) { - $.ajax({type: "GET", url: url, data: null, success: null, - dataType: "script", cache: true}); - }, - - setIndex : function(index) { - var q; - this._index = index; - if ((q = this._queued_query) !== null) { - this._queued_query = null; - Search.query(q); - } - }, - - hasIndex : function() { - return this._index !== null; - }, - - deferQuery : function(query) { - this._queued_query = query; - }, - - stopPulse : function() { - this._pulse_status = 0; - }, - - startPulse : function() { - if (this._pulse_status >= 0) - return; - function pulse() { - Search._pulse_status = (Search._pulse_status + 1) % 4; - var dotString = ''; - for (var i = 0; i < Search._pulse_status; i++) - dotString += '.'; - Search.dots.text(dotString); - if (Search._pulse_status > -1) - window.setTimeout(pulse, 500); - }; - pulse(); - }, - - /** - * perform a search for something - */ - performSearch : function(query) { - // create the required interface elements - this.out = $('#search-results'); - this.title = $('<h2>' + _('Searching') + '</h2>').appendTo(this.out); - this.dots = $('<span></span>').appendTo(this.title); - this.status = $('<p style="display: none"></p>').appendTo(this.out); - this.output = $('<ul class="search"/>').appendTo(this.out); - - $('#search-progress').text(_('Preparing search...')); - this.startPulse(); - - // index already loaded, the browser was quick! - if (this.hasIndex()) - this.query(query); - else - this.deferQuery(query); - }, - - query : function(query) { - var stopwords = ["and","then","into","it","as","are","in","if","for","no","there","their","was","is","be","to","that","but","they","not","such","with","by","a","on","these","of","will","this","near","the","or","at"]; - - // Stem the searchterms and add them to the correct list - var stemmer = new Stemmer(); - var searchterms = []; - var excluded = []; - var hlterms = []; - var tmp = query.split(/\s+/); - var objectterms = []; - for (var i = 0; i < tmp.length; i++) { - if (tmp[i] != "") { - objectterms.push(tmp[i].toLowerCase()); - } - - if ($u.indexOf(stopwords, tmp[i]) != -1 || tmp[i].match(/^\d+$/) || - tmp[i] == "") { - // skip this "word" - continue; - } - // stem the word - var word = stemmer.stemWord(tmp[i]).toLowerCase(); - // select the correct list - if (word[0] == '-') { - var toAppend = excluded; - word = word.substr(1); - } - else { - var toAppend = searchterms; - hlterms.push(tmp[i].toLowerCase()); - } - // only add if not already in the list - if (!$.contains(toAppend, word)) - toAppend.push(word); - }; - var highlightstring = '?highlight=' + $.urlencode(hlterms.join(" ")); - - // console.debug('SEARCH: searching for:'); - // console.info('required: ', searchterms); - // console.info('excluded: ', excluded); - - // prepare search - var filenames = this._index.filenames; - var titles = this._index.titles; - var terms = this._index.terms; - var fileMap = {}; - var files = null; - // different result priorities - var importantResults = []; - var objectResults = []; - var regularResults = []; - var unimportantResults = []; - $('#search-progress').empty(); - - // lookup as object - for (var i = 0; i < objectterms.length; i++) { - var others = [].concat(objectterms.slice(0,i), - objectterms.slice(i+1, objectterms.length)) - var results = this.performObjectSearch(objectterms[i], others); - // Assume first word is most likely to be the object, - // other words more likely to be in description. - // Therefore put matches for earlier words first. - // (Results are eventually used in reverse order). - objectResults = results[0].concat(objectResults); - importantResults = results[1].concat(importantResults); - unimportantResults = results[2].concat(unimportantResults); - } - - // perform the search on the required terms - for (var i = 0; i < searchterms.length; i++) { - var word = searchterms[i]; - // no match but word was a required one - if ((files = terms[word]) == null) - break; - if (files.length == undefined) { - files = [files]; - } - // create the mapping - for (var j = 0; j < files.length; j++) { - var file = files[j]; - if (file in fileMap) - fileMap[file].push(word); - else - fileMap[file] = [word]; - } - } - - // now check if the files don't contain excluded terms - for (var file in fileMap) { - var valid = true; - - // check if all requirements are matched - if (fileMap[file].length != searchterms.length) - continue; - - // ensure that none of the excluded terms is in the - // search result. - for (var i = 0; i < excluded.length; i++) { - if (terms[excluded[i]] == file || - $.contains(terms[excluded[i]] || [], file)) { - valid = false; - break; - } - } - - // if we have still a valid result we can add it - // to the result list - if (valid) - regularResults.push([filenames[file], titles[file], '', null]); - } - - // delete unused variables in order to not waste - // memory until list is retrieved completely - delete filenames, titles, terms; - - // now sort the regular results descending by title - regularResults.sort(function(a, b) { - var left = a[1].toLowerCase(); - var right = b[1].toLowerCase(); - return (left > right) ? -1 : ((left < right) ? 1 : 0); - }); - - // combine all results - var results = unimportantResults.concat(regularResults) - .concat(objectResults).concat(importantResults); - - // print the results - var resultCount = results.length; - function displayNextItem() { - // results left, load the summary and display it - if (results.length) { - var item = results.pop(); - var listItem = $('<li style="display:none"></li>'); - if (DOCUMENTATION_OPTIONS.FILE_SUFFIX == '') { - // dirhtml builder - var dirname = item[0] + '/'; - if (dirname.match(/\/index\/$/)) { - dirname = dirname.substring(0, dirname.length-6); - } else if (dirname == 'index/') { - dirname = ''; - } - listItem.append($('<a/>').attr('href', - DOCUMENTATION_OPTIONS.URL_ROOT + dirname + - highlightstring + item[2]).html(item[1])); - } else { - // normal html builders - listItem.append($('<a/>').attr('href', - item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX + - highlightstring + item[2]).html(item[1])); - } - if (item[3]) { - listItem.append($('<span> (' + item[3] + ')</span>')); - Search.output.append(listItem); - listItem.slideDown(5, function() { - displayNextItem(); - }); - } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) { - $.get(DOCUMENTATION_OPTIONS.URL_ROOT + '_sources/' + - item[0] + '.txt', function(data) { - if (data != '') { - listItem.append($.makeSearchSummary(data, searchterms, hlterms)); - Search.output.append(listItem); - } - listItem.slideDown(5, function() { - displayNextItem(); - }); - }, "text"); - } else { - // no source available, just display title - Search.output.append(listItem); - listItem.slideDown(5, function() { - displayNextItem(); - }); - } - } - // search finished, update title and status message - else { - Search.stopPulse(); - Search.title.text(_('Search Results')); - if (!resultCount) - Search.status.text(_('Your search did not match any documents. Please make sure that all words are spelled correctly and that you\'ve selected enough categories.')); - else - Search.status.text(_('Search finished, found %s page(s) matching the search query.').replace('%s', resultCount)); - Search.status.fadeIn(500); - } - } - displayNextItem(); - }, - - performObjectSearch : function(object, otherterms) { - var filenames = this._index.filenames; - var objects = this._index.objects; - var objnames = this._index.objnames; - var titles = this._index.titles; - - var importantResults = []; - var objectResults = []; - var unimportantResults = []; - - for (var prefix in objects) { - for (var name in objects[prefix]) { - var fullname = (prefix ? prefix + '.' : '') + name; - if (fullname.toLowerCase().indexOf(object) > -1) { - var match = objects[prefix][name]; - var objname = objnames[match[1]][2]; - var title = titles[match[0]]; - // If more than one term searched for, we require other words to be - // found in the name/title/description - if (otherterms.length > 0) { - var haystack = (prefix + ' ' + name + ' ' + - objname + ' ' + title).toLowerCase(); - var allfound = true; - for (var i = 0; i < otherterms.length; i++) { - if (haystack.indexOf(otherterms[i]) == -1) { - allfound = false; - break; - } - } - if (!allfound) { - continue; - } - } - var descr = objname + _(', in ') + title; - anchor = match[3]; - if (anchor == '') - anchor = fullname; - else if (anchor == '-') - anchor = objnames[match[1]][1] + '-' + fullname; - result = [filenames[match[0]], fullname, '#'+anchor, descr]; - switch (match[2]) { - case 1: objectResults.push(result); break; - case 0: importantResults.push(result); break; - case 2: unimportantResults.push(result); break; - } - } - } - } - - // sort results descending - objectResults.sort(function(a, b) { - return (a[1] > b[1]) ? -1 : ((a[1] < b[1]) ? 1 : 0); - }); - - importantResults.sort(function(a, b) { - return (a[1] > b[1]) ? -1 : ((a[1] < b[1]) ? 1 : 0); - }); - - unimportantResults.sort(function(a, b) { - return (a[1] > b[1]) ? -1 : ((a[1] < b[1]) ? 1 : 0); - }); - - return [importantResults, objectResults, unimportantResults] - } -} - -$(document).ready(function() { - Search.init(); -}); \ No newline at end of file diff --git a/docs/_build/html/_static/sidebar.js b/docs/_build/html/_static/sidebar.js deleted file mode 100644 index a45e1926..00000000 --- a/docs/_build/html/_static/sidebar.js +++ /dev/null @@ -1,151 +0,0 @@ -/* - * sidebar.js - * ~~~~~~~~~~ - * - * This script makes the Sphinx sidebar collapsible. - * - * .sphinxsidebar contains .sphinxsidebarwrapper. This script adds - * in .sphixsidebar, after .sphinxsidebarwrapper, the #sidebarbutton - * used to collapse and expand the sidebar. - * - * When the sidebar is collapsed the .sphinxsidebarwrapper is hidden - * and the width of the sidebar and the margin-left of the document - * are decreased. When the sidebar is expanded the opposite happens. - * This script saves a per-browser/per-session cookie used to - * remember the position of the sidebar among the pages. - * Once the browser is closed the cookie is deleted and the position - * reset to the default (expanded). - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -$(function() { - // global elements used by the functions. - // the 'sidebarbutton' element is defined as global after its - // creation, in the add_sidebar_button function - var bodywrapper = $('.bodywrapper'); - var sidebar = $('.sphinxsidebar'); - var sidebarwrapper = $('.sphinxsidebarwrapper'); - - // for some reason, the document has no sidebar; do not run into errors - if (!sidebar.length) return; - - // original margin-left of the bodywrapper and width of the sidebar - // with the sidebar expanded - var bw_margin_expanded = bodywrapper.css('margin-left'); - var ssb_width_expanded = sidebar.width(); - - // margin-left of the bodywrapper and width of the sidebar - // with the sidebar collapsed - var bw_margin_collapsed = '.8em'; - var ssb_width_collapsed = '.8em'; - - // colors used by the current theme - var dark_color = $('.related').css('background-color'); - var light_color = $('.document').css('background-color'); - - function sidebar_is_collapsed() { - return sidebarwrapper.is(':not(:visible)'); - } - - function toggle_sidebar() { - if (sidebar_is_collapsed()) - expand_sidebar(); - else - collapse_sidebar(); - } - - function collapse_sidebar() { - sidebarwrapper.hide(); - sidebar.css('width', ssb_width_collapsed); - bodywrapper.css('margin-left', bw_margin_collapsed); - sidebarbutton.css({ - 'margin-left': '0', - 'height': bodywrapper.height() - }); - sidebarbutton.find('span').text('»'); - sidebarbutton.attr('title', _('Expand sidebar')); - document.cookie = 'sidebar=collapsed'; - } - - function expand_sidebar() { - bodywrapper.css('margin-left', bw_margin_expanded); - sidebar.css('width', ssb_width_expanded); - sidebarwrapper.show(); - sidebarbutton.css({ - 'margin-left': ssb_width_expanded-12, - 'height': bodywrapper.height() - }); - sidebarbutton.find('span').text('«'); - sidebarbutton.attr('title', _('Collapse sidebar')); - document.cookie = 'sidebar=expanded'; - } - - function add_sidebar_button() { - sidebarwrapper.css({ - 'float': 'left', - 'margin-right': '0', - 'width': ssb_width_expanded - 28 - }); - // create the button - sidebar.append( - '<div id="sidebarbutton"><span>«</span></div>' - ); - var sidebarbutton = $('#sidebarbutton'); - light_color = sidebarbutton.css('background-color'); - // find the height of the viewport to center the '<<' in the page - var viewport_height; - if (window.innerHeight) - viewport_height = window.innerHeight; - else - viewport_height = $(window).height(); - sidebarbutton.find('span').css({ - 'display': 'block', - 'margin-top': (viewport_height - sidebar.position().top - 20) / 2 - }); - - sidebarbutton.click(toggle_sidebar); - sidebarbutton.attr('title', _('Collapse sidebar')); - sidebarbutton.css({ - 'color': '#FFFFFF', - 'border-left': '1px solid ' + dark_color, - 'font-size': '1.2em', - 'cursor': 'pointer', - 'height': bodywrapper.height(), - 'padding-top': '1px', - 'margin-left': ssb_width_expanded - 12 - }); - - sidebarbutton.hover( - function () { - $(this).css('background-color', dark_color); - }, - function () { - $(this).css('background-color', light_color); - } - ); - } - - function set_position_from_cookie() { - if (!document.cookie) - return; - var items = document.cookie.split(';'); - for(var k=0; k<items.length; k++) { - var key_val = items[k].split('='); - var key = key_val[0]; - if (key == 'sidebar') { - var value = key_val[1]; - if ((value == 'collapsed') && (!sidebar_is_collapsed())) - collapse_sidebar(); - else if ((value == 'expanded') && (sidebar_is_collapsed())) - expand_sidebar(); - } - } - } - - add_sidebar_button(); - var sidebarbutton = $('#sidebarbutton'); - set_position_from_cookie(); -}); diff --git a/docs/_build/html/_static/underscore.js b/docs/_build/html/_static/underscore.js deleted file mode 100644 index 5d899143..00000000 --- a/docs/_build/html/_static/underscore.js +++ /dev/null @@ -1,23 +0,0 @@ -// Underscore.js 0.5.5 -// (c) 2009 Jeremy Ashkenas, DocumentCloud Inc. -// Underscore is freely distributable under the terms of the MIT license. -// Portions of Underscore are inspired by or borrowed from Prototype.js, -// Oliver Steele's Functional, and John Resig's Micro-Templating. -// For all details and documentation: -// http://documentcloud.github.com/underscore/ -(function(){var j=this,n=j._,i=function(a){this._wrapped=a},m=typeof StopIteration!=="undefined"?StopIteration:"__break__",b=j._=function(a){return new i(a)};if(typeof exports!=="undefined")exports._=b;var k=Array.prototype.slice,o=Array.prototype.unshift,p=Object.prototype.toString,q=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;b.VERSION="0.5.5";b.each=function(a,c,d){try{if(a.forEach)a.forEach(c,d);else if(b.isArray(a)||b.isArguments(a))for(var e=0,f=a.length;e<f;e++)c.call(d, -a[e],e,a);else{var g=b.keys(a);f=g.length;for(e=0;e<f;e++)c.call(d,a[g[e]],g[e],a)}}catch(h){if(h!=m)throw h;}return a};b.map=function(a,c,d){if(a&&b.isFunction(a.map))return a.map(c,d);var e=[];b.each(a,function(f,g,h){e.push(c.call(d,f,g,h))});return e};b.reduce=function(a,c,d,e){if(a&&b.isFunction(a.reduce))return a.reduce(b.bind(d,e),c);b.each(a,function(f,g,h){c=d.call(e,c,f,g,h)});return c};b.reduceRight=function(a,c,d,e){if(a&&b.isFunction(a.reduceRight))return a.reduceRight(b.bind(d,e),c); -var f=b.clone(b.toArray(a)).reverse();b.each(f,function(g,h){c=d.call(e,c,g,h,a)});return c};b.detect=function(a,c,d){var e;b.each(a,function(f,g,h){if(c.call(d,f,g,h)){e=f;b.breakLoop()}});return e};b.select=function(a,c,d){if(a&&b.isFunction(a.filter))return a.filter(c,d);var e=[];b.each(a,function(f,g,h){c.call(d,f,g,h)&&e.push(f)});return e};b.reject=function(a,c,d){var e=[];b.each(a,function(f,g,h){!c.call(d,f,g,h)&&e.push(f)});return e};b.all=function(a,c,d){c=c||b.identity;if(a&&b.isFunction(a.every))return a.every(c, -d);var e=true;b.each(a,function(f,g,h){(e=e&&c.call(d,f,g,h))||b.breakLoop()});return e};b.any=function(a,c,d){c=c||b.identity;if(a&&b.isFunction(a.some))return a.some(c,d);var e=false;b.each(a,function(f,g,h){if(e=c.call(d,f,g,h))b.breakLoop()});return e};b.include=function(a,c){if(b.isArray(a))return b.indexOf(a,c)!=-1;var d=false;b.each(a,function(e){if(d=e===c)b.breakLoop()});return d};b.invoke=function(a,c){var d=b.rest(arguments,2);return b.map(a,function(e){return(c?e[c]:e).apply(e,d)})};b.pluck= -function(a,c){return b.map(a,function(d){return d[c]})};b.max=function(a,c,d){if(!c&&b.isArray(a))return Math.max.apply(Math,a);var e={computed:-Infinity};b.each(a,function(f,g,h){g=c?c.call(d,f,g,h):f;g>=e.computed&&(e={value:f,computed:g})});return e.value};b.min=function(a,c,d){if(!c&&b.isArray(a))return Math.min.apply(Math,a);var e={computed:Infinity};b.each(a,function(f,g,h){g=c?c.call(d,f,g,h):f;g<e.computed&&(e={value:f,computed:g})});return e.value};b.sortBy=function(a,c,d){return b.pluck(b.map(a, -function(e,f,g){return{value:e,criteria:c.call(d,e,f,g)}}).sort(function(e,f){e=e.criteria;f=f.criteria;return e<f?-1:e>f?1:0}),"value")};b.sortedIndex=function(a,c,d){d=d||b.identity;for(var e=0,f=a.length;e<f;){var g=e+f>>1;d(a[g])<d(c)?(e=g+1):(f=g)}return e};b.toArray=function(a){if(!a)return[];if(a.toArray)return a.toArray();if(b.isArray(a))return a;if(b.isArguments(a))return k.call(a);return b.values(a)};b.size=function(a){return b.toArray(a).length};b.first=function(a,c,d){return c&&!d?k.call(a, -0,c):a[0]};b.rest=function(a,c,d){return k.call(a,b.isUndefined(c)||d?1:c)};b.last=function(a){return a[a.length-1]};b.compact=function(a){return b.select(a,function(c){return!!c})};b.flatten=function(a){return b.reduce(a,[],function(c,d){if(b.isArray(d))return c.concat(b.flatten(d));c.push(d);return c})};b.without=function(a){var c=b.rest(arguments);return b.select(a,function(d){return!b.include(c,d)})};b.uniq=function(a,c){return b.reduce(a,[],function(d,e,f){if(0==f||(c===true?b.last(d)!=e:!b.include(d, -e)))d.push(e);return d})};b.intersect=function(a){var c=b.rest(arguments);return b.select(b.uniq(a),function(d){return b.all(c,function(e){return b.indexOf(e,d)>=0})})};b.zip=function(){for(var a=b.toArray(arguments),c=b.max(b.pluck(a,"length")),d=new Array(c),e=0;e<c;e++)d[e]=b.pluck(a,String(e));return d};b.indexOf=function(a,c){if(a.indexOf)return a.indexOf(c);for(var d=0,e=a.length;d<e;d++)if(a[d]===c)return d;return-1};b.lastIndexOf=function(a,c){if(a.lastIndexOf)return a.lastIndexOf(c);for(var d= -a.length;d--;)if(a[d]===c)return d;return-1};b.range=function(a,c,d){var e=b.toArray(arguments),f=e.length<=1;a=f?0:e[0];c=f?e[0]:e[1];d=e[2]||1;e=Math.ceil((c-a)/d);if(e<=0)return[];e=new Array(e);f=a;for(var g=0;1;f+=d){if((d>0?f-c:c-f)>=0)return e;e[g++]=f}};b.bind=function(a,c){var d=b.rest(arguments,2);return function(){return a.apply(c||j,d.concat(b.toArray(arguments)))}};b.bindAll=function(a){var c=b.rest(arguments);if(c.length==0)c=b.functions(a);b.each(c,function(d){a[d]=b.bind(a[d],a)}); -return a};b.delay=function(a,c){var d=b.rest(arguments,2);return setTimeout(function(){return a.apply(a,d)},c)};b.defer=function(a){return b.delay.apply(b,[a,1].concat(b.rest(arguments)))};b.wrap=function(a,c){return function(){var d=[a].concat(b.toArray(arguments));return c.apply(c,d)}};b.compose=function(){var a=b.toArray(arguments);return function(){for(var c=b.toArray(arguments),d=a.length-1;d>=0;d--)c=[a[d].apply(this,c)];return c[0]}};b.keys=function(a){if(b.isArray(a))return b.range(0,a.length); -var c=[];for(var d in a)q.call(a,d)&&c.push(d);return c};b.values=function(a){return b.map(a,b.identity)};b.functions=function(a){return b.select(b.keys(a),function(c){return b.isFunction(a[c])}).sort()};b.extend=function(a,c){for(var d in c)a[d]=c[d];return a};b.clone=function(a){if(b.isArray(a))return a.slice(0);return b.extend({},a)};b.tap=function(a,c){c(a);return a};b.isEqual=function(a,c){if(a===c)return true;var d=typeof a;if(d!=typeof c)return false;if(a==c)return true;if(!a&&c||a&&!c)return false; -if(a.isEqual)return a.isEqual(c);if(b.isDate(a)&&b.isDate(c))return a.getTime()===c.getTime();if(b.isNaN(a)&&b.isNaN(c))return true;if(b.isRegExp(a)&&b.isRegExp(c))return a.source===c.source&&a.global===c.global&&a.ignoreCase===c.ignoreCase&&a.multiline===c.multiline;if(d!=="object")return false;if(a.length&&a.length!==c.length)return false;d=b.keys(a);var e=b.keys(c);if(d.length!=e.length)return false;for(var f in a)if(!b.isEqual(a[f],c[f]))return false;return true};b.isEmpty=function(a){return b.keys(a).length== -0};b.isElement=function(a){return!!(a&&a.nodeType==1)};b.isArray=function(a){return!!(a&&a.concat&&a.unshift)};b.isArguments=function(a){return a&&b.isNumber(a.length)&&!b.isArray(a)&&!r.call(a,"length")};b.isFunction=function(a){return!!(a&&a.constructor&&a.call&&a.apply)};b.isString=function(a){return!!(a===""||a&&a.charCodeAt&&a.substr)};b.isNumber=function(a){return p.call(a)==="[object Number]"};b.isDate=function(a){return!!(a&&a.getTimezoneOffset&&a.setUTCFullYear)};b.isRegExp=function(a){return!!(a&& -a.test&&a.exec&&(a.ignoreCase||a.ignoreCase===false))};b.isNaN=function(a){return b.isNumber(a)&&isNaN(a)};b.isNull=function(a){return a===null};b.isUndefined=function(a){return typeof a=="undefined"};b.noConflict=function(){j._=n;return this};b.identity=function(a){return a};b.breakLoop=function(){throw m;};var s=0;b.uniqueId=function(a){var c=s++;return a?a+c:c};b.template=function(a,c){a=new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};with(obj){p.push('"+a.replace(/[\r\t\n]/g, -" ").replace(/'(?=[^%]*%>)/g,"\t").split("'").join("\\'").split("\t").join("'").replace(/<%=(.+?)%>/g,"',$1,'").split("<%").join("');").split("%>").join("p.push('")+"');}return p.join('');");return c?a(c):a};b.forEach=b.each;b.foldl=b.inject=b.reduce;b.foldr=b.reduceRight;b.filter=b.select;b.every=b.all;b.some=b.any;b.head=b.first;b.tail=b.rest;b.methods=b.functions;var l=function(a,c){return c?b(a).chain():a};b.each(b.functions(b),function(a){var c=b[a];i.prototype[a]=function(){var d=b.toArray(arguments); -o.call(d,this._wrapped);return l(c.apply(b,d),this._chain)}});b.each(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var c=Array.prototype[a];i.prototype[a]=function(){c.apply(this._wrapped,arguments);return l(this._wrapped,this._chain)}});b.each(["concat","join","slice"],function(a){var c=Array.prototype[a];i.prototype[a]=function(){return l(c.apply(this._wrapped,arguments),this._chain)}});i.prototype.chain=function(){this._chain=true;return this};i.prototype.value=function(){return this._wrapped}})(); diff --git a/docs/_build/html/_static/up-pressed.png b/docs/_build/html/_static/up-pressed.png deleted file mode 100644 index 8bd587afee2fe38989383ff82010147ea56b93dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 372 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}Z1|5lxjZvvUp)Z~;jv*GO&raT- z#pEb(tbY1#Ey4dH;Y+=<pEBRLsjGAOCY!v|CyvUA4wrPfZ{O_DPe^{q91)qJXqI&@ zO~JiL+CN7oqU^@cvS+{3Bz9yAOB-!e{LTNlK+)ab|H>wAPPMA->(Ug=YM6W%tgKtA zI`O=0Laf#Y-Y4f~`^K_)D_mvj{B=4?=t!I41ZLNlI~j_4kE*^nvF$)|>mH^X%(>6c z8XimFvvIAOoRJf!>6jzIa5w(S%7lxdZ{*qJxhxpj6S#UB!oTuMX^Z^6%)IfT_v-!3 z=PEaM_iSh6_`s$!$NaEMP6gw<x#pX-zc1lmBOrZAdYY~+^N*K~{#DY`%7Ol8@O1Ta JS?83{1OR?3hMxcc diff --git a/docs/_build/html/_static/up.png b/docs/_build/html/_static/up.png deleted file mode 100644 index b94625680b4a4b9647c3a6f3f283776930696aa9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6U4S$Y z{B+)352QE?JR*yM+OLB!qm#z$3ZNi+iKnkC`z>}xaYa3wv(2tRq1T=+jv*GO&raUx z$K)u`w*Tuor>1}ySNCesuPuG-8#b%jw0sn-5fpk^!623V@1GR6+<`78?&Rhov&jx6 z*R7KttIVGJ=8yH~|HhI(uB&NIpYp$LXT}M`Z<Dv|Q9O9-{p!t<9#srg4(I=_Xg%_r zaf7X90Rxxu?X9UB7>)D=?%dxpN#UiKM#HZsJK4DUm#Y3a5!dMF634rTxz_l%hvABb z(=Pc<$5*Xj@eE$@$89c0_oa>Y5;`&;INvn7C-9xQbH92`*_(~*lcvS}m5Z2pGdgKc z>;tJC%=6B^QS*>ubT+QGD)v`9z&&Y`y-xHu*7vDC$|9@xfdY)d)78&qol`;+01iQm A<^TWy diff --git a/docs/_build/html/_static/websupport.js b/docs/_build/html/_static/websupport.js deleted file mode 100644 index e9bd1b85..00000000 --- a/docs/_build/html/_static/websupport.js +++ /dev/null @@ -1,808 +0,0 @@ -/* - * websupport.js - * ~~~~~~~~~~~~~ - * - * sphinx.websupport utilties for all documentation. - * - * :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -(function($) { - $.fn.autogrow = function() { - return this.each(function() { - var textarea = this; - - $.fn.autogrow.resize(textarea); - - $(textarea) - .focus(function() { - textarea.interval = setInterval(function() { - $.fn.autogrow.resize(textarea); - }, 500); - }) - .blur(function() { - clearInterval(textarea.interval); - }); - }); - }; - - $.fn.autogrow.resize = function(textarea) { - var lineHeight = parseInt($(textarea).css('line-height'), 10); - var lines = textarea.value.split('\n'); - var columns = textarea.cols; - var lineCount = 0; - $.each(lines, function() { - lineCount += Math.ceil(this.length / columns) || 1; - }); - var height = lineHeight * (lineCount + 1); - $(textarea).css('height', height); - }; -})(jQuery); - -(function($) { - var comp, by; - - function init() { - initEvents(); - initComparator(); - } - - function initEvents() { - $('a.comment-close').live("click", function(event) { - event.preventDefault(); - hide($(this).attr('id').substring(2)); - }); - $('a.vote').live("click", function(event) { - event.preventDefault(); - handleVote($(this)); - }); - $('a.reply').live("click", function(event) { - event.preventDefault(); - openReply($(this).attr('id').substring(2)); - }); - $('a.close-reply').live("click", function(event) { - event.preventDefault(); - closeReply($(this).attr('id').substring(2)); - }); - $('a.sort-option').live("click", function(event) { - event.preventDefault(); - handleReSort($(this)); - }); - $('a.show-proposal').live("click", function(event) { - event.preventDefault(); - showProposal($(this).attr('id').substring(2)); - }); - $('a.hide-proposal').live("click", function(event) { - event.preventDefault(); - hideProposal($(this).attr('id').substring(2)); - }); - $('a.show-propose-change').live("click", function(event) { - event.preventDefault(); - showProposeChange($(this).attr('id').substring(2)); - }); - $('a.hide-propose-change').live("click", function(event) { - event.preventDefault(); - hideProposeChange($(this).attr('id').substring(2)); - }); - $('a.accept-comment').live("click", function(event) { - event.preventDefault(); - acceptComment($(this).attr('id').substring(2)); - }); - $('a.delete-comment').live("click", function(event) { - event.preventDefault(); - deleteComment($(this).attr('id').substring(2)); - }); - $('a.comment-markup').live("click", function(event) { - event.preventDefault(); - toggleCommentMarkupBox($(this).attr('id').substring(2)); - }); - } - - /** - * Set comp, which is a comparator function used for sorting and - * inserting comments into the list. - */ - function setComparator() { - // If the first three letters are "asc", sort in ascending order - // and remove the prefix. - if (by.substring(0,3) == 'asc') { - var i = by.substring(3); - comp = function(a, b) { return a[i] - b[i]; }; - } else { - // Otherwise sort in descending order. - comp = function(a, b) { return b[by] - a[by]; }; - } - - // Reset link styles and format the selected sort option. - $('a.sel').attr('href', '#').removeClass('sel'); - $('a.by' + by).removeAttr('href').addClass('sel'); - } - - /** - * Create a comp function. If the user has preferences stored in - * the sortBy cookie, use those, otherwise use the default. - */ - function initComparator() { - by = 'rating'; // Default to sort by rating. - // If the sortBy cookie is set, use that instead. - if (document.cookie.length > 0) { - var start = document.cookie.indexOf('sortBy='); - if (start != -1) { - start = start + 7; - var end = document.cookie.indexOf(";", start); - if (end == -1) { - end = document.cookie.length; - by = unescape(document.cookie.substring(start, end)); - } - } - } - setComparator(); - } - - /** - * Show a comment div. - */ - function show(id) { - $('#ao' + id).hide(); - $('#ah' + id).show(); - var context = $.extend({id: id}, opts); - var popup = $(renderTemplate(popupTemplate, context)).hide(); - popup.find('textarea[name="proposal"]').hide(); - popup.find('a.by' + by).addClass('sel'); - var form = popup.find('#cf' + id); - form.submit(function(event) { - event.preventDefault(); - addComment(form); - }); - $('#s' + id).after(popup); - popup.slideDown('fast', function() { - getComments(id); - }); - } - - /** - * Hide a comment div. - */ - function hide(id) { - $('#ah' + id).hide(); - $('#ao' + id).show(); - var div = $('#sc' + id); - div.slideUp('fast', function() { - div.remove(); - }); - } - - /** - * Perform an ajax request to get comments for a node - * and insert the comments into the comments tree. - */ - function getComments(id) { - $.ajax({ - type: 'GET', - url: opts.getCommentsURL, - data: {node: id}, - success: function(data, textStatus, request) { - var ul = $('#cl' + id); - var speed = 100; - $('#cf' + id) - .find('textarea[name="proposal"]') - .data('source', data.source); - - if (data.comments.length === 0) { - ul.html('<li>No comments yet.</li>'); - ul.data('empty', true); - } else { - // If there are comments, sort them and put them in the list. - var comments = sortComments(data.comments); - speed = data.comments.length * 100; - appendComments(comments, ul); - ul.data('empty', false); - } - $('#cn' + id).slideUp(speed + 200); - ul.slideDown(speed); - }, - error: function(request, textStatus, error) { - showError('Oops, there was a problem retrieving the comments.'); - }, - dataType: 'json' - }); - } - - /** - * Add a comment via ajax and insert the comment into the comment tree. - */ - function addComment(form) { - var node_id = form.find('input[name="node"]').val(); - var parent_id = form.find('input[name="parent"]').val(); - var text = form.find('textarea[name="comment"]').val(); - var proposal = form.find('textarea[name="proposal"]').val(); - - if (text == '') { - showError('Please enter a comment.'); - return; - } - - // Disable the form that is being submitted. - form.find('textarea,input').attr('disabled', 'disabled'); - - // Send the comment to the server. - $.ajax({ - type: "POST", - url: opts.addCommentURL, - dataType: 'json', - data: { - node: node_id, - parent: parent_id, - text: text, - proposal: proposal - }, - success: function(data, textStatus, error) { - // Reset the form. - if (node_id) { - hideProposeChange(node_id); - } - form.find('textarea') - .val('') - .add(form.find('input')) - .removeAttr('disabled'); - var ul = $('#cl' + (node_id || parent_id)); - if (ul.data('empty')) { - $(ul).empty(); - ul.data('empty', false); - } - insertComment(data.comment); - var ao = $('#ao' + node_id); - ao.find('img').attr({'src': opts.commentBrightImage}); - if (node_id) { - // if this was a "root" comment, remove the commenting box - // (the user can get it back by reopening the comment popup) - $('#ca' + node_id).slideUp(); - } - }, - error: function(request, textStatus, error) { - form.find('textarea,input').removeAttr('disabled'); - showError('Oops, there was a problem adding the comment.'); - } - }); - } - - /** - * Recursively append comments to the main comment list and children - * lists, creating the comment tree. - */ - function appendComments(comments, ul) { - $.each(comments, function() { - var div = createCommentDiv(this); - ul.append($(document.createElement('li')).html(div)); - appendComments(this.children, div.find('ul.comment-children')); - // To avoid stagnating data, don't store the comments children in data. - this.children = null; - div.data('comment', this); - }); - } - - /** - * After adding a new comment, it must be inserted in the correct - * location in the comment tree. - */ - function insertComment(comment) { - var div = createCommentDiv(comment); - - // To avoid stagnating data, don't store the comments children in data. - comment.children = null; - div.data('comment', comment); - - var ul = $('#cl' + (comment.node || comment.parent)); - var siblings = getChildren(ul); - - var li = $(document.createElement('li')); - li.hide(); - - // Determine where in the parents children list to insert this comment. - for(i=0; i < siblings.length; i++) { - if (comp(comment, siblings[i]) <= 0) { - $('#cd' + siblings[i].id) - .parent() - .before(li.html(div)); - li.slideDown('fast'); - return; - } - } - - // If we get here, this comment rates lower than all the others, - // or it is the only comment in the list. - ul.append(li.html(div)); - li.slideDown('fast'); - } - - function acceptComment(id) { - $.ajax({ - type: 'POST', - url: opts.acceptCommentURL, - data: {id: id}, - success: function(data, textStatus, request) { - $('#cm' + id).fadeOut('fast'); - $('#cd' + id).removeClass('moderate'); - }, - error: function(request, textStatus, error) { - showError('Oops, there was a problem accepting the comment.'); - } - }); - } - - function deleteComment(id) { - $.ajax({ - type: 'POST', - url: opts.deleteCommentURL, - data: {id: id}, - success: function(data, textStatus, request) { - var div = $('#cd' + id); - if (data == 'delete') { - // Moderator mode: remove the comment and all children immediately - div.slideUp('fast', function() { - div.remove(); - }); - return; - } - // User mode: only mark the comment as deleted - div - .find('span.user-id:first') - .text('[deleted]').end() - .find('div.comment-text:first') - .text('[deleted]').end() - .find('#cm' + id + ', #dc' + id + ', #ac' + id + ', #rc' + id + - ', #sp' + id + ', #hp' + id + ', #cr' + id + ', #rl' + id) - .remove(); - var comment = div.data('comment'); - comment.username = '[deleted]'; - comment.text = '[deleted]'; - div.data('comment', comment); - }, - error: function(request, textStatus, error) { - showError('Oops, there was a problem deleting the comment.'); - } - }); - } - - function showProposal(id) { - $('#sp' + id).hide(); - $('#hp' + id).show(); - $('#pr' + id).slideDown('fast'); - } - - function hideProposal(id) { - $('#hp' + id).hide(); - $('#sp' + id).show(); - $('#pr' + id).slideUp('fast'); - } - - function showProposeChange(id) { - $('#pc' + id).hide(); - $('#hc' + id).show(); - var textarea = $('#pt' + id); - textarea.val(textarea.data('source')); - $.fn.autogrow.resize(textarea[0]); - textarea.slideDown('fast'); - } - - function hideProposeChange(id) { - $('#hc' + id).hide(); - $('#pc' + id).show(); - var textarea = $('#pt' + id); - textarea.val('').removeAttr('disabled'); - textarea.slideUp('fast'); - } - - function toggleCommentMarkupBox(id) { - $('#mb' + id).toggle(); - } - - /** Handle when the user clicks on a sort by link. */ - function handleReSort(link) { - var classes = link.attr('class').split(/\s+/); - for (var i=0; i<classes.length; i++) { - if (classes[i] != 'sort-option') { - by = classes[i].substring(2); - } - } - setComparator(); - // Save/update the sortBy cookie. - var expiration = new Date(); - expiration.setDate(expiration.getDate() + 365); - document.cookie= 'sortBy=' + escape(by) + - ';expires=' + expiration.toUTCString(); - $('ul.comment-ul').each(function(index, ul) { - var comments = getChildren($(ul), true); - comments = sortComments(comments); - appendComments(comments, $(ul).empty()); - }); - } - - /** - * Function to process a vote when a user clicks an arrow. - */ - function handleVote(link) { - if (!opts.voting) { - showError("You'll need to login to vote."); - return; - } - - var id = link.attr('id'); - if (!id) { - // Didn't click on one of the voting arrows. - return; - } - // If it is an unvote, the new vote value is 0, - // Otherwise it's 1 for an upvote, or -1 for a downvote. - var value = 0; - if (id.charAt(1) != 'u') { - value = id.charAt(0) == 'u' ? 1 : -1; - } - // The data to be sent to the server. - var d = { - comment_id: id.substring(2), - value: value - }; - - // Swap the vote and unvote links. - link.hide(); - $('#' + id.charAt(0) + (id.charAt(1) == 'u' ? 'v' : 'u') + d.comment_id) - .show(); - - // The div the comment is displayed in. - var div = $('div#cd' + d.comment_id); - var data = div.data('comment'); - - // If this is not an unvote, and the other vote arrow has - // already been pressed, unpress it. - if ((d.value !== 0) && (data.vote === d.value * -1)) { - $('#' + (d.value == 1 ? 'd' : 'u') + 'u' + d.comment_id).hide(); - $('#' + (d.value == 1 ? 'd' : 'u') + 'v' + d.comment_id).show(); - } - - // Update the comments rating in the local data. - data.rating += (data.vote === 0) ? d.value : (d.value - data.vote); - data.vote = d.value; - div.data('comment', data); - - // Change the rating text. - div.find('.rating:first') - .text(data.rating + ' point' + (data.rating == 1 ? '' : 's')); - - // Send the vote information to the server. - $.ajax({ - type: "POST", - url: opts.processVoteURL, - data: d, - error: function(request, textStatus, error) { - showError('Oops, there was a problem casting that vote.'); - } - }); - } - - /** - * Open a reply form used to reply to an existing comment. - */ - function openReply(id) { - // Swap out the reply link for the hide link - $('#rl' + id).hide(); - $('#cr' + id).show(); - - // Add the reply li to the children ul. - var div = $(renderTemplate(replyTemplate, {id: id})).hide(); - $('#cl' + id) - .prepend(div) - // Setup the submit handler for the reply form. - .find('#rf' + id) - .submit(function(event) { - event.preventDefault(); - addComment($('#rf' + id)); - closeReply(id); - }) - .find('input[type=button]') - .click(function() { - closeReply(id); - }); - div.slideDown('fast', function() { - $('#rf' + id).find('textarea').focus(); - }); - } - - /** - * Close the reply form opened with openReply. - */ - function closeReply(id) { - // Remove the reply div from the DOM. - $('#rd' + id).slideUp('fast', function() { - $(this).remove(); - }); - - // Swap out the hide link for the reply link - $('#cr' + id).hide(); - $('#rl' + id).show(); - } - - /** - * Recursively sort a tree of comments using the comp comparator. - */ - function sortComments(comments) { - comments.sort(comp); - $.each(comments, function() { - this.children = sortComments(this.children); - }); - return comments; - } - - /** - * Get the children comments from a ul. If recursive is true, - * recursively include childrens' children. - */ - function getChildren(ul, recursive) { - var children = []; - ul.children().children("[id^='cd']") - .each(function() { - var comment = $(this).data('comment'); - if (recursive) - comment.children = getChildren($(this).find('#cl' + comment.id), true); - children.push(comment); - }); - return children; - } - - /** Create a div to display a comment in. */ - function createCommentDiv(comment) { - if (!comment.displayed && !opts.moderator) { - return $('<div class="moderate">Thank you! Your comment will show up ' - + 'once it is has been approved by a moderator.</div>'); - } - // Prettify the comment rating. - comment.pretty_rating = comment.rating + ' point' + - (comment.rating == 1 ? '' : 's'); - // Make a class (for displaying not yet moderated comments differently) - comment.css_class = comment.displayed ? '' : ' moderate'; - // Create a div for this comment. - var context = $.extend({}, opts, comment); - var div = $(renderTemplate(commentTemplate, context)); - - // If the user has voted on this comment, highlight the correct arrow. - if (comment.vote) { - var direction = (comment.vote == 1) ? 'u' : 'd'; - div.find('#' + direction + 'v' + comment.id).hide(); - div.find('#' + direction + 'u' + comment.id).show(); - } - - if (opts.moderator || comment.text != '[deleted]') { - div.find('a.reply').show(); - if (comment.proposal_diff) - div.find('#sp' + comment.id).show(); - if (opts.moderator && !comment.displayed) - div.find('#cm' + comment.id).show(); - if (opts.moderator || (opts.username == comment.username)) - div.find('#dc' + comment.id).show(); - } - return div; - } - - /** - * A simple template renderer. Placeholders such as <%id%> are replaced - * by context['id'] with items being escaped. Placeholders such as <#id#> - * are not escaped. - */ - function renderTemplate(template, context) { - var esc = $(document.createElement('div')); - - function handle(ph, escape) { - var cur = context; - $.each(ph.split('.'), function() { - cur = cur[this]; - }); - return escape ? esc.text(cur || "").html() : cur; - } - - return template.replace(/<([%#])([\w\.]*)\1>/g, function() { - return handle(arguments[2], arguments[1] == '%' ? true : false); - }); - } - - /** Flash an error message briefly. */ - function showError(message) { - $(document.createElement('div')).attr({'class': 'popup-error'}) - .append($(document.createElement('div')) - .attr({'class': 'error-message'}).text(message)) - .appendTo('body') - .fadeIn("slow") - .delay(2000) - .fadeOut("slow"); - } - - /** Add a link the user uses to open the comments popup. */ - $.fn.comment = function() { - return this.each(function() { - var id = $(this).attr('id').substring(1); - var count = COMMENT_METADATA[id]; - var title = count + ' comment' + (count == 1 ? '' : 's'); - var image = count > 0 ? opts.commentBrightImage : opts.commentImage; - var addcls = count == 0 ? ' nocomment' : ''; - $(this) - .append( - $(document.createElement('a')).attr({ - href: '#', - 'class': 'sphinx-comment-open' + addcls, - id: 'ao' + id - }) - .append($(document.createElement('img')).attr({ - src: image, - alt: 'comment', - title: title - })) - .click(function(event) { - event.preventDefault(); - show($(this).attr('id').substring(2)); - }) - ) - .append( - $(document.createElement('a')).attr({ - href: '#', - 'class': 'sphinx-comment-close hidden', - id: 'ah' + id - }) - .append($(document.createElement('img')).attr({ - src: opts.closeCommentImage, - alt: 'close', - title: 'close' - })) - .click(function(event) { - event.preventDefault(); - hide($(this).attr('id').substring(2)); - }) - ); - }); - }; - - var opts = { - processVoteURL: '/_process_vote', - addCommentURL: '/_add_comment', - getCommentsURL: '/_get_comments', - acceptCommentURL: '/_accept_comment', - deleteCommentURL: '/_delete_comment', - commentImage: '/static/_static/comment.png', - closeCommentImage: '/static/_static/comment-close.png', - loadingImage: '/static/_static/ajax-loader.gif', - commentBrightImage: '/static/_static/comment-bright.png', - upArrow: '/static/_static/up.png', - downArrow: '/static/_static/down.png', - upArrowPressed: '/static/_static/up-pressed.png', - downArrowPressed: '/static/_static/down-pressed.png', - voting: false, - moderator: false - }; - - if (typeof COMMENT_OPTIONS != "undefined") { - opts = jQuery.extend(opts, COMMENT_OPTIONS); - } - - var popupTemplate = '\ - <div class="sphinx-comments" id="sc<%id%>">\ - <p class="sort-options">\ - Sort by:\ - <a href="#" class="sort-option byrating">best rated</a>\ - <a href="#" class="sort-option byascage">newest</a>\ - <a href="#" class="sort-option byage">oldest</a>\ - </p>\ - <div class="comment-header">Comments</div>\ - <div class="comment-loading" id="cn<%id%>">\ - loading comments... <img src="<%loadingImage%>" alt="" /></div>\ - <ul id="cl<%id%>" class="comment-ul"></ul>\ - <div id="ca<%id%>">\ - <p class="add-a-comment">Add a comment\ - (<a href="#" class="comment-markup" id="ab<%id%>">markup</a>):</p>\ - <div class="comment-markup-box" id="mb<%id%>">\ - reStructured text markup: <i>*emph*</i>, <b>**strong**</b>, \ - <tt>``code``</tt>, \ - code blocks: <tt>::</tt> and an indented block after blank line</div>\ - <form method="post" id="cf<%id%>" class="comment-form" action="">\ - <textarea name="comment" cols="80"></textarea>\ - <p class="propose-button">\ - <a href="#" id="pc<%id%>" class="show-propose-change">\ - Propose a change ▹\ - </a>\ - <a href="#" id="hc<%id%>" class="hide-propose-change">\ - Propose a change ▿\ - </a>\ - </p>\ - <textarea name="proposal" id="pt<%id%>" cols="80"\ - spellcheck="false"></textarea>\ - <input type="submit" value="Add comment" />\ - <input type="hidden" name="node" value="<%id%>" />\ - <input type="hidden" name="parent" value="" />\ - </form>\ - </div>\ - </div>'; - - var commentTemplate = '\ - <div id="cd<%id%>" class="sphinx-comment<%css_class%>">\ - <div class="vote">\ - <div class="arrow">\ - <a href="#" id="uv<%id%>" class="vote" title="vote up">\ - <img src="<%upArrow%>" />\ - </a>\ - <a href="#" id="uu<%id%>" class="un vote" title="vote up">\ - <img src="<%upArrowPressed%>" />\ - </a>\ - </div>\ - <div class="arrow">\ - <a href="#" id="dv<%id%>" class="vote" title="vote down">\ - <img src="<%downArrow%>" id="da<%id%>" />\ - </a>\ - <a href="#" id="du<%id%>" class="un vote" title="vote down">\ - <img src="<%downArrowPressed%>" />\ - </a>\ - </div>\ - </div>\ - <div class="comment-content">\ - <p class="tagline comment">\ - <span class="user-id"><%username%></span>\ - <span class="rating"><%pretty_rating%></span>\ - <span class="delta"><%time.delta%></span>\ - </p>\ - <div class="comment-text comment"><#text#></div>\ - <p class="comment-opts comment">\ - <a href="#" class="reply hidden" id="rl<%id%>">reply ▹</a>\ - <a href="#" class="close-reply" id="cr<%id%>">reply ▿</a>\ - <a href="#" id="sp<%id%>" class="show-proposal">proposal ▹</a>\ - <a href="#" id="hp<%id%>" class="hide-proposal">proposal ▿</a>\ - <a href="#" id="dc<%id%>" class="delete-comment hidden">delete</a>\ - <span id="cm<%id%>" class="moderation hidden">\ - <a href="#" id="ac<%id%>" class="accept-comment">accept</a>\ - </span>\ - </p>\ - <pre class="proposal" id="pr<%id%>">\ -<#proposal_diff#>\ - </pre>\ - <ul class="comment-children" id="cl<%id%>"></ul>\ - </div>\ - <div class="clearleft"></div>\ - </div>\ - </div>'; - - var replyTemplate = '\ - <li>\ - <div class="reply-div" id="rd<%id%>">\ - <form id="rf<%id%>">\ - <textarea name="comment" cols="80"></textarea>\ - <input type="submit" value="Add reply" />\ - <input type="button" value="Cancel" />\ - <input type="hidden" name="parent" value="<%id%>" />\ - <input type="hidden" name="node" value="" />\ - </form>\ - </div>\ - </li>'; - - $(document).ready(function() { - init(); - }); -})(jQuery); - -$(document).ready(function() { - // add comment anchors for all paragraphs that are commentable - $('.sphinx-has-comment').comment(); - - // highlight search words in search results - $("div.context").each(function() { - var params = $.getQueryParameters(); - var terms = (params.q) ? params.q[0].split(/\s+/) : []; - var result = $(this); - $.each(terms, function() { - result.highlightText(this.toLowerCase(), 'highlighted'); - }); - }); - - // directly open comment window if requested - var anchor = document.location.hash; - if (anchor.substring(0, 9) == '#comment-') { - $('#ao' + anchor.substring(9)).click(); - document.location.hash = '#s' + anchor.substring(9); - } -}); diff --git a/docs/_build/html/content/advanced-usage.html b/docs/_build/html/content/advanced-usage.html deleted file mode 100644 index c00229ae..00000000 --- a/docs/_build/html/content/advanced-usage.html +++ /dev/null @@ -1,181 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Advanced usage</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="prev" title="Example usage" href="example-usage.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="example-usage.html" title="Example usage" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="advanced-usage"> -<h1>Advanced usage<a class="headerlink" href="#advanced-usage" title="Permalink to this headline">¶</a></h1> -<div class="section" id="mask-all-regions-in-a-genome-except-for-targeted-capture-regions"> -<h2>7.1 Mask all regions in a genome except for targeted capture regions.<a class="headerlink" href="#mask-all-regions-in-a-genome-except-for-targeted-capture-regions" title="Permalink to this headline">¶</a></h2> -<p># Add 500 bp up and downstream of each probe</p> -<div class="highlight-python"><pre>slopBed -i probes.bed -b 500 > probes.500bp.bed</pre> -</div> -<p># Get a BED file of all regions not covered by the probes (+500 bp up/down)</p> -<div class="highlight-python"><pre>complementBed -i probes.500bp.bed -g hg18.genome > probes.500bp.complement.bed</pre> -</div> -<p># Create a masked genome where all bases are masked except for the probes +500bp</p> -<div class="highlight-python"><pre>maskFastaFromBed -in hg18.fa -bed probes.500bp.complement.bed -fo hg18.probecomplement. -masked.fa</pre> -</div> -</div> -<div class="section" id="screening-for-novel-snps"> -<h2>7.2 Screening for novel SNPs.<a class="headerlink" href="#screening-for-novel-snps" title="Permalink to this headline">¶</a></h2> -<p># Find all SNPs that are not in dbSnp and not in the latest 1000 genomes calls</p> -<div class="highlight-python"><pre>intersectBed -a snp.calls.bed -b dbSnp.bed -v | intersectBed -a stdin -b 1KG.bed --v > snp.calls.novel.bed</pre> -</div> -<p>you can first use intersectBed with the “-f 1.0” option.</p> -<div class="highlight-python"><pre>intersectBed -a features.bed -b windows.bed -f 1.0 | coverageBed -a stdin -b -windows.bed > windows.bed.coverage</pre> -</div> -</div> -<div class="section" id="computing-the-coverage-of-bam-alignments-on-exons"> -<h2>7.4 Computing the coverage of BAM alignments on exons.<a class="headerlink" href="#computing-the-coverage-of-bam-alignments-on-exons" title="Permalink to this headline">¶</a></h2> -<p># One can combine SAMtools with BEDtools to compute coverage directly from the BAM -data by using bamToBed.</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam | coverageBed -a stdin -b exons.bed > exons.bed.coverage</pre> -</div> -<p># Take it a step further and require that coverage be from properly-paired reads.</p> -<div class="highlight-python"><pre>samtools view -bf 0x2 reads.bam | bamToBed -i stdin | coverageBed -a stdin -b -exons.bed > exons.bed.proper.coverage</pre> -</div> -</div> -<div class="section" id="computing-coverage-separately-for-each-strand"> -<h2>7.5 Computing coverage separately for each strand.<a class="headerlink" href="#computing-coverage-separately-for-each-strand" title="Permalink to this headline">¶</a></h2> -<p># Use grep to only look at forward strand features (i.e. those that end in “+”).</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam | grep \+$ | coverageBed -a stdin -b genes.bed > -genes.bed.forward.coverage</pre> -</div> -<p># Use grep to only look at reverse strand features (i.e. those that end in “-”).</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam | grep \-$ | coverageBed -a stdin -b genes.bed > -genes.bed.forward.coverage</pre> -</div> -</div> -<div class="section" id="find-structural-variant-calls-that-are-private-to-one-sample"> -<h2>7.6 Find structural variant calls that are private to one sample.<a class="headerlink" href="#find-structural-variant-calls-that-are-private-to-one-sample" title="Permalink to this headline">¶</a></h2> -<p># :</p> -<div class="highlight-python"><pre>pairToPair -a sample1.sv.bedpe -b othersamples.sv.bedpe -type neither > -sample1.sv.private.bedpe</pre> -</div> -</div> -<div class="section" id="exclude-sv-deletions-that-appear-to-be-alu-insertions-in-the-reference-genome"> -<h2>7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome.<a class="headerlink" href="#exclude-sv-deletions-that-appear-to-be-alu-insertions-in-the-reference-genome" title="Permalink to this headline">¶</a></h2> -<p># We’ll require that 90% of the inner span of the deletion be overlapped by a -recent ALU.</p> -<div class="highlight-python"><pre>pairToBed -a deletions.sv.bedpe -b ALUs.recent.bed -type notispan -f 0.80 > -deletions.notALUsinRef.bedpe</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">Advanced usage</a><ul> -<li><a class="reference internal" href="#mask-all-regions-in-a-genome-except-for-targeted-capture-regions">7.1 Mask all regions in a genome except for targeted capture regions.</a></li> -<li><a class="reference internal" href="#screening-for-novel-snps">7.2 Screening for novel SNPs.</a></li> -<li><a class="reference internal" href="#computing-the-coverage-of-bam-alignments-on-exons">7.4 Computing the coverage of BAM alignments on exons.</a></li> -<li><a class="reference internal" href="#computing-coverage-separately-for-each-strand">7.5 Computing coverage separately for each strand.</a></li> -<li><a class="reference internal" href="#find-structural-variant-calls-that-are-private-to-one-sample">7.6 Find structural variant calls that are private to one sample.</a></li> -<li><a class="reference internal" href="#exclude-sv-deletions-that-appear-to-be-alu-insertions-in-the-reference-genome">7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="example-usage.html" - title="previous chapter">Example usage</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/advanced-usage.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="example-usage.html" title="Example usage" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/annotateBed.html b/docs/_build/html/content/annotateBed.html deleted file mode 100644 index 3ed77d0d..00000000 --- a/docs/_build/html/content/annotateBed.html +++ /dev/null @@ -1,224 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.24 annotateBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="Example usage" href="example-usage.html" /> - <link rel="prev" title="5.23 unionBedGraphs" href="unionBedGraphs.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="example-usage.html" title="Example usage" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="unionBedGraphs.html" title="5.23 unionBedGraphs" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="annotatebed"> -<h1>5.24 annotateBed<a class="headerlink" href="#annotatebed" title="Permalink to this headline">¶</a></h1> -<p><strong>annotateBed</strong> annotates one BED/VCF/GFF file with the coverage and number of overlaps observed -from multiple other BED/VCF/GFF files. In this way, it allows one to ask to what degree one feature -coincides with multiple other feature types with a single command.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.24.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>annotateBed [OPTIONS] -i <BED/GFF/VCF> -files FILE1 FILE2 FILE3 ... FILEn</pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-namesr</strong></td> -<td>A list of names (one per file) to describe each file in -i. These names will be printed as a header line.</td> -</tr> -<tr class="row-odd"><td><strong>-counts</strong></td> -<td>Report the count of features in each file that overlap -i. Default behavior is to report the fraction of -i covered by each file.</td> -</tr> -<tr class="row-even"><td><strong>-both</strong></td> -<td>Report the count of features followed by the % coverage for each annotation file. Default is to report solely the fraction of -i covered by each file.</td> -</tr> -<tr class="row-odd"><td><strong>-s</strong></td> -<td>Force strandedness. That is, only include hits in A that overlap B on the same strand. By default, hits are included without respect to strand.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior-annotate-one-file-with-coverage-from-others"> -<h2>5.24.2 Default behavior - annotate one file with coverage from others.<a class="headerlink" href="#default-behavior-annotate-one-file-with-coverage-from-others" title="Permalink to this headline">¶</a></h2> -<p>By default, the fraction of each feature covered by each annotation file is reported after the complete -feature in the file to be annotated.</p> -<div class="highlight-python"><pre>cat variants.bed -chr1 100 200 nasty 1 - -chr2 500 1000 ugly 2 + -chr3 1000 5000 big 3 - - -cat genes.bed -chr1 150 200 geneA 1 + -chr1 175 250 geneB 2 + -chr3 0 10000 geneC 3 - - -cat conserve.bed -chr1 0 10000 cons1 1 + -chr2 700 10000 cons2 2 - -chr3 4000 10000 cons3 3 + - -cat known_var.bed -chr1 0 120 known1 - -chr1 150 160 known2 - -chr2 0 10000 known3 + - -annotateBed -i variants.bed -files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty 1 - 0.500000 1.000000 0.300000 -chr2 500 1000 ugly 2 + 0.000000 0.600000 1.000000 -chr3 1000 5000 big 3 - 1.000000 0.250000 0.000000</pre> -</div> -</div> -<div class="section" id="report-the-count-of-hits-from-the-annotation-files"> -<h2>5.24.3 Report the count of hits from the annotation files<a class="headerlink" href="#report-the-count-of-hits-from-the-annotation-files" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>annotateBed -counts -i variants.bed -files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty 1 - 2 1 2 -chr2 500 1000 ugly 2 + 0 1 1 -chr3 1000 5000 big 3 - 1 1 0</pre> -</div> -</div> -<div class="section" id="report-both-the-count-of-hits-and-the-fraction-covered-from-the-annotation-files"> -<h2>5.24.4 Report both the count of hits and the fraction covered from the annotation files<a class="headerlink" href="#report-both-the-count-of-hits-and-the-fraction-covered-from-the-annotation-files" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>annotateBed -both -i variants.bed -files genes.bed conserv.bed known_var.bed -#chr start end name score +/- cnt1 pct1 cnt2 pct2 cnt3 pct3 -chr1 100 200 nasty 1 - 2 0.500000 1 1.000000 2 0.300000 -chr2 500 1000 ugly 2 + 0 0.000000 1 0.600000 1 1.000000 -chr3 1000 5000 big 3 - 1 1.000000 1 0.250000 0 0.000000</pre> -</div> -</div> -<div class="section" id="restrict-the-reporting-to-overlaps-on-the-same-strand"> -<h2>5.24.5 Restrict the reporting to overlaps on the same strand.<a class="headerlink" href="#restrict-the-reporting-to-overlaps-on-the-same-strand" title="Permalink to this headline">¶</a></h2> -<p>Note: Compare with the result from 5.24.3</p> -<div class="highlight-python"><pre>annotateBed -s -i variants.bed -files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty var1 - 0.000000 0.000000 0.000000 -chr2 500 1000 ugly var2 + 0.000000 0.000000 0.000000 -chr3 1000 5000 big var3 - 1.000000 0.000000 0.000000</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.24 annotateBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.24.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior-annotate-one-file-with-coverage-from-others">5.24.2 Default behavior - annotate one file with coverage from others.</a></li> -<li><a class="reference internal" href="#report-the-count-of-hits-from-the-annotation-files">5.24.3 Report the count of hits from the annotation files</a></li> -<li><a class="reference internal" href="#report-both-the-count-of-hits-and-the-fraction-covered-from-the-annotation-files">5.24.4 Report both the count of hits and the fraction covered from the annotation files</a></li> -<li><a class="reference internal" href="#restrict-the-reporting-to-overlaps-on-the-same-strand">5.24.5 Restrict the reporting to overlaps on the same strand.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="unionBedGraphs.html" - title="previous chapter">5.23 unionBedGraphs</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="example-usage.html" - title="next chapter">Example usage</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/annotateBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="example-usage.html" title="Example usage" - >next</a> |</li> - <li class="right" > - <a href="unionBedGraphs.html" title="5.23 unionBedGraphs" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/bamToBed.html b/docs/_build/html/content/bamToBed.html deleted file mode 100644 index b9474496..00000000 --- a/docs/_build/html/content/bamToBed.html +++ /dev/null @@ -1,229 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.4 bamToBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.5 windowBed" href="windowBed.html" /> - <link rel="prev" title="5.3 pairToPair" href="pairToPair.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="windowBed.html" title="5.5 windowBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="pairToPair.html" title="5.3 pairToPair" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="bamtobed"> -<h1>5.4 bamToBed<a class="headerlink" href="#bamtobed" title="Permalink to this headline">¶</a></h1> -<p><strong>bamToBed</strong> is a general purpose tool that will convert sequence alignments in BAM format to either -BED6, BED12 or BEDPE format. This enables one to convert BAM files for use with all of the other -BEDTools. The CIGAR string is used to compute the alignment end coordinate in an “ungapped” -fashion. That is, match (“M”), deletion (“D”), and splice (“N”) operations are observed when computing -alignment ends.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.4.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage:</strong></p> -<div class="highlight-python"><pre>bamToBed [OPTIONS] -i <BAM></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="3%" /> -<col width="97%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-bedpe</strong></td> -<td><blockquote class="first"> -<div><dl class="docutils"> -<dt>Write BAM alignments in BEDPE format. Only one alignment from paired-end reads will be reported. Specifically, it each mate is aligned to the same chromosome, the BAM alignment reported will be the one where the BAM insert size is greater than zero. When the mate alignments are interchromosomal, the lexicographically lower chromosome will be reported first. Lastly, when an end is unmapped, the chromosome and strand will be set to ”.” and the start and end coordinates will be set to -1. <em>By default, this is disabled and the output will be reported in BED format</em>.</dt> -<dd><strong>NOTE: When using this option, it is required that the BAM file is sorted/grouped by the read name. This allows bamToBed to extract correct alignment coordinates for each end based on their respective CIGAR strings. It also assumes that the alignments for a given pair come in groups of twos. There is not yet a standard method for reporting multiple alignments using BAM. bamToBed will fail if an aligner does not report alignments in pairs</strong>.</dd> -</dl> -</div></blockquote> -<p class="last">BAM files may be piped to bamToBed by specifying “-i stdin”. See example below.</p> -</td> -</tr> -<tr class="row-odd"><td><strong>-bed12</strong></td> -<td>Write “blocked” BED (a.k.a. BED12) format. This will convert “spliced” BAM alignments (denoted by the “N” CIGAR operation) to BED12.</td> -</tr> -<tr class="row-even"><td><strong>-ed</strong></td> -<td>Use the “edit distance” tag (NM) for the BED score field. Default for BED is to use mapping quality. Default for BEDPE is to use the <em>minimum</em> of the two mapping qualities for the pair. When -ed is used with -bedpe, the total edit distance from the two mates is reported.</td> -</tr> -<tr class="row-odd"><td><strong>-tag</strong></td> -<td>Use other <em>numeric</em> BAM alignment tag for BED score. Default for BED is to use mapping quality. Disallowed with BEDPE output.</td> -</tr> -<tr class="row-even"><td><strong>-color</strong></td> -<td>An R,G,B string for the color used with BED12 format. Default is (255,0,0).</td> -</tr> -<tr class="row-odd"><td><strong>-split</strong></td> -<td>Report each portion of a “split” BAM (i.e., having an “N” CIGAR operation) alignment as a distinct BED intervals.</td> -</tr> -</tbody> -</table> -<p>By default, each alignment in the BAM file is converted to a 6 column BED. The BED “name” field is -comprised of the RNAME field in the BAM alignment. If mate information is available, the mate (e.g., -“/1” or “/2”) field will be appended to the name. The “score” field is the mapping quality score from the -BAM alignment, unless the <strong>-ed</strong> option is used.</p> -<p>Examples:</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam | head -5 -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 - -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 - - -bamToBed -i reads.bam -tag NM | head -5 -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 1 - -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 3 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 1 - - -bamToBed -i reads.bam -bedpe | head -3 -chr7 118965072 118965122 chr7 118970079 118970129 - TUPAC_0001:3:1:0:1452#0 37 + - -chr11 46765606 46765656 chr11 46769934 46769984 - TUPAC_0001:3:1:0:1472#0 37 + - -chr20 54704674 54704724 chr20 54708987 54709037 - TUPAC_0001:3:1:1:1833#0 37 +</pre> -</div> -<p>One can easily use samtools and bamToBed together as part of a UNIX pipe. In this example, we will -only convert properly-paired (BAM flag == 0x2) reads to BED format.</p> -<div class="highlight-python"><pre>samtools view -bf 0x2 reads.bam | bamToBed -i stdin | head -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 - -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 - -chr11 46765606 46765656 TUPAC_0001:3:1:0:1472#0/2 37 + -chr20 54704674 54704724 TUPAC_0001:3:1:1:1833#0/1 37 + -chr20 54708987 54709037 TUPAC_0001:3:1:1:1833#0/2 37 - -chrX 9380413 9380463 TUPAC_0001:3:1:1:285#0/1 0 - -chrX 9375861 9375911 TUPAC_0001:3:1:1:285#0/2 0 + -chrX 131756978 131757028 TUPAC_0001:3:1:2:523#0/1 37 + -chrX 131761790 131761840 TUPAC_0001:3:1:2:523#0/2 37 -</pre> -</div> -</div> -<div class="section" id="split-creating-bed12-features-from-spliced-bam-entries"> -<h2>5.4.2 (-split)Creating BED12 features from “spliced” BAM entries.<a class="headerlink" href="#split-creating-bed12-features-from-spliced-bam-entries" title="Permalink to this headline">¶</a></h2> -<p>bamToBed will, by default, create a BED6 feature that represents the entire span of a spliced/split -BAM alignment. However, when using the <strong>-split</strong> command, a BED12 feature is reported where BED -blocks will be created for each aligned portion of the sequencing read.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons *************** ********** - -BED/BAM A ^^^^^^^^^^^^....................................^^^^ - -Result =============== ====</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.4 bamToBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.4.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#split-creating-bed12-features-from-spliced-bam-entries">5.4.2 (-split)Creating BED12 features from “spliced” BAM entries.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="pairToPair.html" - title="previous chapter">5.3 pairToPair</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="windowBed.html" - title="next chapter">5.5 windowBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/bamToBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="windowBed.html" title="5.5 windowBed" - >next</a> |</li> - <li class="right" > - <a href="pairToPair.html" title="5.3 pairToPair" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/bed12ToBed6.html b/docs/_build/html/content/bed12ToBed6.html deleted file mode 100644 index 40a4c8af..00000000 --- a/docs/_build/html/content/bed12ToBed6.html +++ /dev/null @@ -1,177 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.21 bed12ToBed6</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.22 groupBy" href="groupBy.html" /> - <link rel="prev" title="5.20 bedToIgv" href="bedToIgv.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="groupBy.html" title="5.22 groupBy" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="bedToIgv.html" title="5.20 bedToIgv" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="bed12tobed6"> -<h1>5.21 bed12ToBed6<a class="headerlink" href="#bed12tobed6" title="Permalink to this headline">¶</a></h1> -<p><strong>bed12ToBed6</strong> is a convenience tool that converts BED features in BED12 (a.k.a. “blocked” BED -features such as genes) to discrete BED6 features. For example, in the case of a gene with six exons, -bed12ToBed6 would create six separate BED6 features (i.e., one for each exon).</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.21.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>bed12ToBed6 [OPTIONS] -i <BED12></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-i</strong></td> -<td>The BED12 file that should be split into discrete BED6 features. <em>Use “stdin” when using piped input</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.21.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>head data/knownGene.hg18.chr21.bed | tail -n 3 -chr21 10079666 10120808 uc002yiv.1 0 - 10081686 1 0 1 2 0 6 0 8 - 0 4 528,91,101,215, 0,1930,39750,40927, -chr21 10080031 10081687 uc002yiw.1 0 - 10080031 1 0 0 8 0 0 3 1 - 0 2 200,91, 0,1565, -chr21 10081660 10120796 uc002yix.2 0 - 10081660 1 0 0 8 1 6 6 0 - 0 3 27,101,223,0,37756,38913, - -head data/knownGene.hg18.chr21.bed | tail -n 3 | bed12ToBed6 -i stdin -chr21 10079666 10080194 uc002yiv.1 0 - -chr21 10081596 10081687 uc002yiv.1 0 - -chr21 10119416 10119517 uc002yiv.1 0 - -chr21 10120593 10120808 uc002yiv.1 0 - -chr21 10080031 10080231 uc002yiw.1 0 - -chr21 10081596 10081687 uc002yiw.1 0 - -chr21 10081660 10081687 uc002yix.2 0 - -chr21 10119416 10119517 uc002yix.2 0 - -chr21 10120573 10120796 uc002yix.2 0 -</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.21 bed12ToBed6</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.21.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.21.2 Default behavior</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="bedToIgv.html" - title="previous chapter">5.20 bedToIgv</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="groupBy.html" - title="next chapter">5.22 groupBy</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/bed12ToBed6.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="groupBy.html" title="5.22 groupBy" - >next</a> |</li> - <li class="right" > - <a href="bedToIgv.html" title="5.20 bedToIgv" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/bedToBam.html b/docs/_build/html/content/bedToBam.html deleted file mode 100644 index cff13ae9..00000000 --- a/docs/_build/html/content/bedToBam.html +++ /dev/null @@ -1,202 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.18 bedToBam</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.19 overlap" href="overlap.html" /> - <link rel="prev" title="5.17 complementBed" href="complementBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="overlap.html" title="5.19 overlap" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="complementBed.html" title="5.17 complementBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="bedtobam"> -<h1>5.18 bedToBam<a class="headerlink" href="#bedtobam" title="Permalink to this headline">¶</a></h1> -<p><strong>bedToBam</strong> converts features in a feature file to BAM format. This is useful as an efficient means of -storing large genome annotations in a compact, indexed format for visualization purposes.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.18.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>bedToBam [OPTIONS] -i <BED/GFF/VCF> -g <GENOME> > <BAM></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="11%" /> -<col width="89%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-mapq</strong></td> -<td>Set a mapping quality (SAM MAPQ field) value for all BED entries. <em>Default: 255</em></td> -</tr> -<tr class="row-odd"><td><strong>-ubam</strong></td> -<td>Write uncompressed BAM output. The default is write compressed BAM output.</td> -</tr> -<tr class="row-even"><td><strong>-bed12</strong></td> -<td>Indicate that the input BED file is in BED12 (a.k.a “blocked” BED) format. In this case, bedToBam will convert blocked BED features (e.g., gene annotaions) into “spliced” BAM alignments by creating an appropriate CIGAR string.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.18.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>The default behavior is to assume that the input file is in unblocked format. For example:</p> -<div class="highlight-python"><pre>head -5 rmsk.hg18.chr21.bed -chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9725582 9725977 L1PA3 3288 + -chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729320 9729809 L1PA3 3897 - - -bedToBam -i rmsk.hg18.chr21.bed -g human.hg18.genome > rmsk.hg18.chr21.bam - -samtools view rmsk.hg18.chr21.bam | head -5 -ALR/Alpha 0 chr21 9719769 255 2124M * 0 0 * * -ALR/Alpha 0 chr21 9721906 255 3677M * 0 0 * * -L1PA3 0 chr21 9725583 255 395M * 0 0 * * -ALR/Alpha 0 chr21 9726022 255 3288M * 0 0 * * -L1PA3 16 chr21 9729321 255 489M * 0 0 * *</pre> -</div> -</div> -<div class="section" id="creating-spliced-bam-entries-from-blocked-bed-features"> -<h2>5.18.3 Creating “spliced” BAM entries from “blocked” BED features<a class="headerlink" href="#creating-spliced-bam-entries-from-blocked-bed-features" title="Permalink to this headline">¶</a></h2> -<p>Optionally, <strong>bedToBam</strong> will create spliced BAM entries from “blocked” BED features by using the --bed12 option. This will create CIGAR strings in the BAM output that will be displayed as “spliced” -alignments. The image illustrates this behavior, as the top track is a BAM representation (using -bedToBam) of a BED file of UCSC genes.</p> -<p>For example:</p> -<div class="highlight-python"><pre>bedToBam -i knownGene.hg18.chr21.bed -g human.hg18.genome -bed12 > knownGene.bam - -samtools view knownGene.bam | head -2 -uc002yip.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M9274N54M880N54M1229N54M2377N54M112 -68N58M2666N109M2885N158M * 0 0 * * -uc002yiq.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M10208N54M1229N54M2377N54M11268N58M -2666N109M2885N158M * 0 0 * *</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.18 bedToBam</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.18.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.18.2 Default behavior</a></li> -<li><a class="reference internal" href="#creating-spliced-bam-entries-from-blocked-bed-features">5.18.3 Creating “spliced” BAM entries from “blocked” BED features</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="complementBed.html" - title="previous chapter">5.17 complementBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="overlap.html" - title="next chapter">5.19 overlap</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/bedToBam.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="overlap.html" title="5.19 overlap" - >next</a> |</li> - <li class="right" > - <a href="complementBed.html" title="5.17 complementBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/bedToIgv.html b/docs/_build/html/content/bedToIgv.html deleted file mode 100644 index 3ffe4393..00000000 --- a/docs/_build/html/content/bedToIgv.html +++ /dev/null @@ -1,200 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.20 bedToIgv</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.21 bed12ToBed6" href="bed12ToBed6.html" /> - <link rel="prev" title="5.19 overlap" href="overlap.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="bed12ToBed6.html" title="5.21 bed12ToBed6" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="overlap.html" title="5.19 overlap" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="bedtoigv"> -<h1>5.20 bedToIgv<a class="headerlink" href="#bedtoigv" title="Permalink to this headline">¶</a></h1> -<p><strong>bedToIgv</strong> creates an IGV (<a class="reference external" href="http://www.broadinstitute.org/igv/">http://www.broadinstitute.org/igv/</a>) batch script (see: <a class="reference external" href="http://">http://</a> -www.broadinstitute.org/igv/batch for details) such that a ??snapshot?? will be taken at each features in a -feature file. This is useful as an efficient means for quickly collecting images of primary data at several -loci for subsequent screening, etc.</p> -<p><strong>NOTE: One must use IGV version 1.5 or higher.</strong></p> -<div class="section" id="usage-and-option-summary"> -<h2>5.20.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>bedToIgv [OPTIONS] -i <BED/GFF/VCF> > <igv.batch></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="9%" /> -<col width="91%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-path</strong></td> -<td>The full path to which the IGV snapshots should be written. <em>Default: ./</em></td> -</tr> -<tr class="row-odd"><td><strong>-sess</strong></td> -<td>The full path to an existing IGV session file to be loaded prior to taking snapshots. <em>Default is for no session to be loaded and the assumption is that you already have IGV open and loaded with your relevant data prior to running the batch script</em>.</td> -</tr> -<tr class="row-even"><td><strong>-sort</strong></td> -<td>The type of BAM sorting you would like to apply to each image. <strong>Valid sorting options</strong>: <em>base, position, strand, quality, sample, and readGroup Default is to apply no sorting at all</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-clps</strong></td> -<td>Collapse the aligned reads prior to taking a snapshot. <em>Default is to not collapse</em>.</td> -</tr> -<tr class="row-even"><td><strong>-name</strong></td> -<td>Use the “name” field (column 4) for each image’s filename. <em>Default is to use the “chr:start-pos.ext”</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-slop</strong></td> -<td>Number of flanking base pairs on the left & right of the image.</td> -</tr> -<tr class="row-even"><td><strong>-img</strong></td> -<td>The type of image to be created. <strong>Valid options</strong>: <em>png, eps, svg Default is png</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.20.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>bedToIgv -i data/rmsk.hg18.chr21.bed | head -9 -snapshotDirectory ./ -goto chr21:9719768-9721892 -snapshot chr21:9719768-9721892.png -goto chr21:9721905-9725582 -snapshot chr21:9721905-9725582.png -goto chr21:9725582-9725977 -snapshot chr21:9725582-9725977.png -goto chr21:9726021-9729309 -snapshot chr21:9726021-9729309.png</pre> -</div> -</div> -<div class="section" id="using-a-bedtoigv-batch-script-within-igv"> -<h2>5.20.3 Using a bedToIgv batch script within IGV.<a class="headerlink" href="#using-a-bedtoigv-batch-script-within-igv" title="Permalink to this headline">¶</a></h2> -<p>Once an IGV batch script has been created with <strong>bedToIgv</strong>, it is simply a matter of running it from -within IGV.</p> -<p>For example, first create the batch script:</p> -<div class="highlight-python"><pre>bedToIgv -i data/rmsk.hg18.chr21.bed > rmsk.igv.batch</pre> -</div> -<p>Then, open and launch the batch script from within IGV. This will immediately cause IGV to begin -taking snapshots of your requested regions.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.20 bedToIgv</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.20.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.20.2 Default behavior</a></li> -<li><a class="reference internal" href="#using-a-bedtoigv-batch-script-within-igv">5.20.3 Using a bedToIgv batch script within IGV.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="overlap.html" - title="previous chapter">5.19 overlap</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="bed12ToBed6.html" - title="next chapter">5.21 bed12ToBed6</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/bedToIgv.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="bed12ToBed6.html" title="5.21 bed12ToBed6" - >next</a> |</li> - <li class="right" > - <a href="overlap.html" title="5.19 overlap" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/bedtools-suite.html b/docs/_build/html/content/bedtools-suite.html deleted file mode 100644 index ae9e0af5..00000000 --- a/docs/_build/html/content/bedtools-suite.html +++ /dev/null @@ -1,162 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>The BEDTools suite</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="5.1 intersect" href="intersectBed.html" /> - <link rel="prev" title="General usage" href="general-usage.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="intersectBed.html" title="5.1 intersect" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="general-usage.html" title="General usage" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="the-bedtools-suite"> -<h1>The BEDTools suite<a class="headerlink" href="#the-bedtools-suite" title="Permalink to this headline">¶</a></h1> -<p>This section covers the functionality and default / optional usage for each of the available BEDTools. -Example “figures” are provided in some cases in an effort to convey the purpose of the tool. The -behavior of each available parameter is discussed for each tool in abstract terms. More concrete usage -examples are provided in <strong>Section 6</strong>.</p> -<div class="section" id="table-of-contents"> -<h2>Table of contents<a class="headerlink" href="#table-of-contents" title="Permalink to this headline">¶</a></h2> -<div class="toctree-wrapper compound"> -<ul> -<li class="toctree-l1"><a class="reference internal" href="intersectBed.html">5.1 intersect</a></li> -<li class="toctree-l1"><a class="reference internal" href="pairToBed.html">5.2 pairToBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="pairToPair.html">5.3 pairToPair</a></li> -<li class="toctree-l1"><a class="reference internal" href="bamToBed.html">5.4 bamToBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="windowBed.html">5.5 windowBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="closestBed.html">5.6 closestBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="subtractBed.html">5.7 subtractBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="mergeBed.html">5.8 mergeBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="coverageBed.html">5.9 coverageBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="genomecoverageBed.html">5.10 genomeCoverageBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="fastafromBed.html">5.11 fastaFromBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="maskfastafromBed.html">5.12 maskFastaFromBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="shuffleBed.html">5.13 shuffleBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="slopBed.html">5.14 slopBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="sortBed.html">5.15 sortBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="linksBed.html">5.16 linksBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="complementBed.html">5.17 complementBed</a></li> -<li class="toctree-l1"><a class="reference internal" href="bedToBam.html">5.18 bedToBam</a></li> -<li class="toctree-l1"><a class="reference internal" href="overlap.html">5.19 overlap</a></li> -<li class="toctree-l1"><a class="reference internal" href="bedToIgv.html">5.20 bedToIgv</a></li> -<li class="toctree-l1"><a class="reference internal" href="bed12ToBed6.html">5.21 bed12ToBed6</a></li> -<li class="toctree-l1"><a class="reference internal" href="groupBy.html">5.22 groupBy</a></li> -<li class="toctree-l1"><a class="reference internal" href="unionBedGraphs.html">5.23 unionBedGraphs</a></li> -<li class="toctree-l1"><a class="reference internal" href="annotateBed.html">5.24 annotateBed</a></li> -</ul> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">The BEDTools suite</a><ul> -<li><a class="reference internal" href="#table-of-contents">Table of contents</a><ul> -</ul> -</li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="general-usage.html" - title="previous chapter">General usage</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="intersectBed.html" - title="next chapter">5.1 intersect</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/bedtools-suite.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="intersectBed.html" title="5.1 intersect" - >next</a> |</li> - <li class="right" > - <a href="general-usage.html" title="General usage" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/closestBed.html b/docs/_build/html/content/closestBed.html deleted file mode 100644 index b03bc8da..00000000 --- a/docs/_build/html/content/closestBed.html +++ /dev/null @@ -1,251 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.6 closestBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.7 subtractBed" href="subtractBed.html" /> - <link rel="prev" title="5.5 windowBed" href="windowBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="subtractBed.html" title="5.7 subtractBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="windowBed.html" title="5.5 windowBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="closestbed"> -<h1>5.6 closestBed<a class="headerlink" href="#closestbed" title="Permalink to this headline">¶</a></h1> -<p>Similar to <strong>intersectBed, closestBed</strong> searches for overlapping features in A and B. In the event that -no feature in B overlaps the current feature in A, <strong>closestBed</strong> will report the <em>closest</em> (that is, least -genomic distance from the start or end of A) feature in B. For example, one might want to find which -is the closest gene to a significant GWAS polymorphism. Note that <strong>closestBed</strong> will report an -overlapping feature as the closest—that is, it does not restrict to closest <em>non-overlapping</em> feature.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.6.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage:</strong></p> -<div class="highlight-python"><pre>closestBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-s</strong></td> -<td>Force strandedness. That is, find the closest feature in B overlaps A on the same strand. <em>By default, this is disabled</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-d</strong></td> -<td>In addition to the closest feature in B, report its distance to A as an extra column. The reported distance for overlapping features will be 0.</td> -</tr> -<tr class="row-even"><td><strong>-t</strong></td> -<td><p class="first">How ties for closest feature should be handled. This occurs when two features in B have exactly the same overlap with a feature in A. <em>By default, all such features in B are reported</em>.</p> -<blockquote class="last"> -<div><p>Here are the other choices controlling how ties are handled:</p> -<p><em>all-</em> Report all ties (default).</p> -<p><em>first-</em> Report the first tie that occurred in the B file.</p> -<p><em>last-</em> Report the last tie that occurred in the B file.</p> -</div></blockquote> -</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.6.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p><strong>closestBed</strong> first searches for features in B that overlap a feature in A. If overlaps are found, the feature -in B that overlaps the highest fraction of A is reported. If no overlaps are found, <strong>closestBed</strong> looks for -the feature in B that is <em>closest</em> (that is, least genomic distance to the start or end of A) to A. For -example, in the figure below, feature B1 would be reported as the closest feature to A1.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* - -BED File B ^^^^^^^^ ^^^^^^ - -Result ======</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed -a A.bed -b B.bed -chr1 100 200 chr1 500 1000</pre> -</div> -</div> -<div class="section" id="s-enforcing-strandedness"> -<h2>5.6.3 (-s)Enforcing “strandedness”<a class="headerlink" href="#s-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as the -s option for intersectBed while scanning for the closest -(overlapping or not) feature in B. See the discussion in the intersectBed section for details.</p> -</div> -<div class="section" id="t-controlling-how-ties-for-closest-are-broken"> -<h2>5.6.4 (-t)Controlling how ties for “closest” are broken<a class="headerlink" href="#t-controlling-how-ties-for-closest-are-broken" title="Permalink to this headline">¶</a></h2> -<p>When there are two or more features in B that overlap the <em>same fraction</em> of A, <strong>closestBed</strong> will, by -default, report both features in B. Imagine feature A is a SNP and file B contains genes. It can often -occur that two gene annotations (e.g. opposite strands) in B will overlap the SNP. As mentioned, the -default behavior is to report both such genes in B. However, the -t option allows one to optionally -choose the just first or last feature (in terms of where it occurred in the input file, not chromosome -position) that occurred in B.</p> -<p>For example (note the difference between -l 200 and -l 300):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 101 rs1234 - -cat B.bed -chr1 0 1000 geneA 100 + -chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -t all -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -t first -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - -closestBed -a A.bed -b B.bed -t last -chr1 100 101 rs1234 chr1 0 1000 geneB 100 -</pre> -</div> -</div> -<div class="section" id="d-reporting-the-distance-to-the-closest-feature-in-base-pairs"> -<h2>5.6.5 (-d)Reporting the distance to the closest feature in base pairs<a class="headerlink" href="#d-reporting-the-distance-to-the-closest-feature-in-base-pairs" title="Permalink to this headline">¶</a></h2> -<p>ClosestBed will optionally report the distance to the closest feature in the B file using the <strong>-d</strong> option. -When a feature in B overlaps a feature in A, a distance of 0 is reported.</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 500 600 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed -a A.bed -b B.bed -d -chr1 100 200 chr1 500 1000 300 -chr1 500 600 chr1 500 1000 0</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.6 closestBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.6.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.6.2 Default behavior</a></li> -<li><a class="reference internal" href="#s-enforcing-strandedness">5.6.3 (-s)Enforcing “strandedness”</a></li> -<li><a class="reference internal" href="#t-controlling-how-ties-for-closest-are-broken">5.6.4 (-t)Controlling how ties for “closest” are broken</a></li> -<li><a class="reference internal" href="#d-reporting-the-distance-to-the-closest-feature-in-base-pairs">5.6.5 (-d)Reporting the distance to the closest feature in base pairs</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="windowBed.html" - title="previous chapter">5.5 windowBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="subtractBed.html" - title="next chapter">5.7 subtractBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/closestBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="subtractBed.html" title="5.7 subtractBed" - >next</a> |</li> - <li class="right" > - <a href="windowBed.html" title="5.5 windowBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/complementBed.html b/docs/_build/html/content/complementBed.html deleted file mode 100644 index 93daec4d..00000000 --- a/docs/_build/html/content/complementBed.html +++ /dev/null @@ -1,163 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.17 complementBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.18 bedToBam" href="bedToBam.html" /> - <link rel="prev" title="5.16 linksBed" href="linksBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="bedToBam.html" title="5.18 bedToBam" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="linksBed.html" title="5.16 linksBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="complementbed"> -<h1>5.17 complementBed<a class="headerlink" href="#complementbed" title="Permalink to this headline">¶</a></h1> -<p><strong>complementBed</strong> returns the intervals in a genome that are not by the features in a feature file. An -example usage of this tool would be to return the intervals of the genome that are not annotated as a -repeat.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.17.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>complementBed [OPTIONS] -i <BED/GFF/VCF> -g <GENOME></pre> -</div> -<p><strong>No additional options.</strong></p> -</div> -<div class="section" id="default-behavior"> -<h2>5.17.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* *************** ****************** - -Result === === ===== =======</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 400 500 -chr1 500 800 - -cat my.genome -chr1 1000 - -complementBed -i A.bed -g my.genome -chr1 0 100 -chr1 200 400 -chr1 800 1000</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.17 complementBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.17.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.17.2 Default behavior</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="linksBed.html" - title="previous chapter">5.16 linksBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="bedToBam.html" - title="next chapter">5.18 bedToBam</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/complementBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="bedToBam.html" title="5.18 bedToBam" - >next</a> |</li> - <li class="right" > - <a href="linksBed.html" title="5.16 linksBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/coverageBed.html b/docs/_build/html/content/coverageBed.html deleted file mode 100644 index 22e7da9d..00000000 --- a/docs/_build/html/content/coverageBed.html +++ /dev/null @@ -1,317 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.9 coverageBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.10 genomeCoverageBed" href="genomecoverageBed.html" /> - <link rel="prev" title="5.8 mergeBed" href="mergeBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="genomecoverageBed.html" title="5.10 genomeCoverageBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="mergeBed.html" title="5.8 mergeBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="coveragebed"> -<h1>5.9 coverageBed<a class="headerlink" href="#coveragebed" title="Permalink to this headline">¶</a></h1> -<p><strong>coverageBed</strong> computes both the <em>depth</em> and <em>breadth</em> of coverage of features in file A across the features -in file B. For example, <strong>coverageBed</strong> can compute the coverage of sequence alignments (file A) across 1 -kilobase (arbitrary) windows (file B) tiling a genome of interest. One advantage that <strong>coverageBed</strong> -offers is that it not only <em>counts</em> the number of features that overlap an interval in file B, it also -computes the fraction of bases in B interval that were overlapped by one or more features. Thus, -<strong>coverageBed</strong> also computes the <em>breadth</em> of coverage for each interval in B.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.9.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>coverageBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="9%" /> -<col width="91%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-abam</strong></td> -<td><blockquote class="first"> -<div>BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe: For example:</div></blockquote> -<div class="last line-block"> -<div class="line">samtools view -b <BAM> | intersectBed -abam stdin -b genes.bed</div> -</div> -</td> -</tr> -<tr class="row-odd"><td><strong>-s</strong></td> -<td>Force strandedness. That is, only features in A are only counted towards coverage in B if they are the same strand. <em>By default, this is disabled and coverage is counted without respect to strand</em>.</td> -</tr> -<tr class="row-even"><td><strong>-hist</strong></td> -<td><p class="first">Report a histogram of coverage for each feature in B as well as a summary histogram for _all_ features in B.</p> -<div class="line-block"> -<div class="line">Output (tab delimited) after each feature in B:</div> -</div> -<blockquote class="last"> -<div><div class="line-block"> -<div class="line">1) depth</div> -<div class="line">2) # bases at depth</div> -<div class="line">3) size of B</div> -<div class="line">4) % of B at depth</div> -</div> -</div></blockquote> -</td> -</tr> -<tr class="row-odd"><td><strong>-d</strong></td> -<td>Report the depth at each position in each B feature. Positions reported are one based. Each position and depth follow the complete B feature.</td> -</tr> -<tr class="row-even"><td><strong>-split</strong></td> -<td>Treat “split” BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR “N” and “D” operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12).</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.9.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>After each interval in B, <strong>coverageBed</strong> will report:</p> -<ol class="arabic simple"> -<li>The number of features in A that overlapped (by at least one base pair) the B interval.</li> -<li>The number of bases in B that had non-zero coverage from features in A.</li> -<li>The length of the entry in B.</li> -<li>The fraction of bases in B that had non-zero coverage from features in A.</li> -</ol> -<p>Below are the number of features in A (N=...) overlapping B and fraction of bases in B with coverage.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE B *************** *************** ****** ************** - -BED File A ^^^^ ^^^^ ^^ ^^^^^^^^^ ^^^ ^^ ^^^^ - ^^^^^^^^ ^^^^^ ^^^^^ ^^ - -Result [ N=3, 10/15 ] [ N=1, 2/16 ] [N=1,6/6] [N=5, 11/12 ]</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 20 30 -chr1 30 40 -chr1 100 200 - -cat B.bed -chr1 0 100 -chr1 100 200 -chr2 0 100 - -coverageBed -a A.bed -b B.bed -chr1 0 100 3 30 100 0.3000000 -chr1 100 200 1 100 100 1.0000000 -chr2 0 100 0 0 100 0.0000000</pre> -</div> -</div> -<div class="section" id="s-calculating-coverage-by-strand"> -<h2>5.9.4 (-s)Calculating coverage by strand<a class="headerlink" href="#s-calculating-coverage-by-strand" title="Permalink to this headline">¶</a></h2> -<p>Use the “<strong>-s</strong>” option if one wants to only count coverage if features in A are on the same strand as the -feature / window in B. This is especially useful for RNA-seq experiments.</p> -<p>For example (note the difference in coverage with and without <strong>-s</strong>:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 a1 1 - -chr1 20 30 a2 1 - -chr1 30 40 a3 1 - -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 - -chr2 0 100 b3 1 + - -coverageBed -a A.bed -b B.bed -chr1 0 100 b1 1 + 3 30 100 0.3000000 -chr1 100 200 b2 1 - 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000 - -coverageBed -a A.bed -b B.bed -s -chr1 0 100 b1 1 + 0 0 100 0.0000000 -chr1 100 200 b2 1 - 0 0 100 0.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000</pre> -</div> -</div> -<div class="section" id="hist-creating-a-histogram-of-coverage-for-each-feature-in-the-b-file"> -<h2>5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file<a class="headerlink" href="#hist-creating-a-histogram-of-coverage-for-each-feature-in-the-b-file" title="Permalink to this headline">¶</a></h2> -<p>One should use the “<strong>-hist</strong>” option to create, for each interval in B, a histogram of coverage of the -features in A across B.</p> -<p>In this case, each entire feature in B will be reported, followed by the depth of coverage, the number of -bases at that depth, the size of the feature, and the fraction covered. After all of the features in B have -been reported, a histogram summarizing the coverage among all features in B will be reported.</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 a1 1 - -chr1 20 30 a2 1 - -chr1 30 40 a3 1 - -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 - -chr2 0 100 b3 1 + - -coverageBed -a A.bed -b B.bed -hist -chr1 0 100 b1 1 + 0 70 100 0.7000000 -chr1 0 100 b1 1 + 1 30 100 0.3000000 -chr1 100 200 b2 1 - 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 100 100 1.0000000 -all 0 170 300 0.5666667 -all 1 130 300 0.4333333</pre> -</div> -</div> -<div class="section" id="hist-reporting-the-per-base-of-coverage-for-each-feature-in-the-b-file"> -<h2>5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file<a class="headerlink" href="#hist-reporting-the-per-base-of-coverage-for-each-feature-in-the-b-file" title="Permalink to this headline">¶</a></h2> -<p>One should use the “<strong>-d</strong>” option to create, for each interval in B, a detailed list of coverage at each of the -positions across each B interval.</p> -<p>The output will consist of a line for each one-based position in each B feature, followed by the coverage -detected at that position.</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 5 -chr1 3 8 -chr1 4 8 -chr1 5 9 - -cat B.bed -chr1 0 10 - -coverageBed -a A.bed -b B.bed -d -chr1 0 10 B 1 1 -chr1 0 10 B 2 1 -chr1 0 10 B 3 1 -chr1 0 10 B 4 2 -chr1 0 10 B 5 3 -chr1 0 10 B 6 3 -chr1 0 10 B 7 3 -chr1 0 10 B 8 3 -chr1 0 10 B 9 1 -chr1 0 10 B 10 0</pre> -</div> -</div> -<div class="section" id="split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features"> -<h2>5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features<a class="headerlink" href="#split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features" title="Permalink to this headline">¶</a></h2> -<p>As described in section 1.3.19, coverageBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only tabulate coverage for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The <strong>-split</strong> command allows for such coverage to be -performed.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.9 coverageBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.9.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.9.2 Default behavior</a></li> -<li><a class="reference internal" href="#s-calculating-coverage-by-strand">5.9.4 (-s)Calculating coverage by strand</a></li> -<li><a class="reference internal" href="#hist-creating-a-histogram-of-coverage-for-each-feature-in-the-b-file">5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file</a></li> -<li><a class="reference internal" href="#hist-reporting-the-per-base-of-coverage-for-each-feature-in-the-b-file">5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file</a></li> -<li><a class="reference internal" href="#split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features">5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="mergeBed.html" - title="previous chapter">5.8 mergeBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="genomecoverageBed.html" - title="next chapter">5.10 genomeCoverageBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/coverageBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="genomecoverageBed.html" title="5.10 genomeCoverageBed" - >next</a> |</li> - <li class="right" > - <a href="mergeBed.html" title="5.8 mergeBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/example-usage.html b/docs/_build/html/content/example-usage.html deleted file mode 100644 index 452e45cf..00000000 --- a/docs/_build/html/content/example-usage.html +++ /dev/null @@ -1,314 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Example usage</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="Advanced usage" href="advanced-usage.html" /> - <link rel="prev" title="5.24 annotateBed" href="annotateBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="advanced-usage.html" title="Advanced usage" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="annotateBed.html" title="5.24 annotateBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="example-usage"> -<h1>Example usage<a class="headerlink" href="#example-usage" title="Permalink to this headline">¶</a></h1> -<p>Below are several examples of basic BEDTools usage. Example BED files are provided in the -/data directory of the BEDTools distribution.</p> -<div class="section" id="intersectbed"> -<h2>6.1 intersectBed<a class="headerlink" href="#intersectbed" title="Permalink to this headline">¶</a></h2> -<p>6.1.1 Report the base-pair overlap between sequence alignments and genes.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed</pre> -</div> -<p>6.1.2 Report whether each alignment overlaps one or more genes. If not, the alignment is not reported.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -u</pre> -</div> -<p>6.1.3 Report those alignments that overlap NO genes. Like “grep -v”</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -v</pre> -</div> -<p>6.1.4 Report the number of genes that each alignment overlaps.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -c</pre> -</div> -<p>6.1.5 Report the entire, original alignment entry for each overlap with a gene.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -wa</pre> -</div> -<p>6.1.6 Report the entire, original gene entry for each overlap with a gene.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -wb</pre> -</div> -<p>6.1.7 Report the entire, original alignment and gene entries for each overlap.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed -wa -wb</pre> -</div> -<p>6.1.8 Only report an overlap with a repeat if it spans at least 50% of the exon.</p> -<div class="highlight-python"><pre>intersectBed -a exons.bed -b repeatMasker.bed -f 0.50</pre> -</div> -<p>6.1.9 Only report an overlap if comprises 50% of the structural variant and 50% of the segmental duplication. Thus, it is reciprocally at least a 50% overlap.</p> -<div class="highlight-python"><pre>intersectBed -a SV.bed -b segmentalDups.bed -f 0.50 -r</pre> -</div> -<p>6.1.10 Read BED A from stdin. For example, find genes that overlap LINEs but not SINEs.</p> -<div class="highlight-python"><pre>intersectBed -a genes.bed -b LINES.bed | intersectBed -a stdin -b SINEs.bed -v</pre> -</div> -<p>6.1.11 Retain only single-end BAM alignments that overlap exons.</p> -<div class="highlight-python"><pre>intersectBed -abam reads.bam -b exons.bed > reads.touchingExons.bam</pre> -</div> -<p>6.1.12 Retain only single-end BAM alignments that do not overlap simple sequence -repeats.</p> -<div class="highlight-python"><pre>intersectBed -abam reads.bam -b SSRs.bed -v > reads.noSSRs.bam</pre> -</div> -</div> -<div class="section" id="pairtobed"> -<h2>6.2 pairToBed<a class="headerlink" href="#pairtobed" title="Permalink to this headline">¶</a></h2> -<p>6.2.1 Return all structural variants (in BEDPE format) that overlap with genes on either -end.</p> -<div class="highlight-python"><pre>pairToBed -a sv.bedpe -b genes > sv.genes</pre> -</div> -<p>6.2.2 Return all structural variants (in BEDPE format) that overlap with genes on both -end.</p> -<div class="highlight-python"><pre>pairToBed -a sv.bedpe -b genes -type both > sv.genes</pre> -</div> -<p>6.2.3 Retain only paired-end BAM alignments where neither end overlaps simple -sequence repeats.</p> -<div class="highlight-python"><pre>pairToBed -abam reads.bam -b SSRs.bed -type neither > reads.noSSRs.bam</pre> -</div> -<p>6.2.4 Retain only paired-end BAM alignments where both ends overlap segmental -duplications.</p> -<div class="highlight-python"><pre>pairToBed -abam reads.bam -b segdups.bed -type both > reads.SSRs.bam</pre> -</div> -<p>6.2.5 Retain only paired-end BAM alignments where neither or one and only one end -overlaps segmental duplications.</p> -<div class="highlight-python"><pre>pairToBed -abam reads.bam -b segdups.bed -type notboth > reads.notbothSSRs.bam</pre> -</div> -</div> -<div class="section" id="pairtopair"> -<h2>6.3 pairToPair<a class="headerlink" href="#pairtopair" title="Permalink to this headline">¶</a></h2> -<p>6.3.1 Find all SVs (in BEDPE format) in sample 1 that are also in sample 2.</p> -<div class="highlight-python"><pre>pairToPair -a 1.sv.bedpe -b 2.sv.bedpe | cut -f 1-10 > 1.sv.in2.bedpe</pre> -</div> -<p>6.3.2 Find all SVs (in BEDPE format) in sample 1 that are not in sample 2.</p> -<div class="highlight-python"><pre>pairToPair -a 1.sv.bedpe -b 2.sv.bedpe -type neither | cut -f 1-10 ></pre> -</div> -<p>1.sv.notin2.bedpe</p> -</div> -<div class="section" id="bamtobed"> -<h2>6.4 bamToBed<a class="headerlink" href="#bamtobed" title="Permalink to this headline">¶</a></h2> -<p>6.4.1 Convert BAM alignments to BED format.</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam > reads.bed</pre> -</div> -<p>6.4.2 Convert BAM alignments to BED format using the BAM edit distance (NM) as the -BED “score”.</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam -ed > reads.bed</pre> -</div> -<p>6.4.3 Convert BAM alignments to BEDPE format.</p> -<div class="highlight-python"><pre>bamToBed -i reads.bam -bedpe > reads.bedpe</pre> -</div> -</div> -<div class="section" id="windowbed"> -<h2>6.5 windowBed<a class="headerlink" href="#windowbed" title="Permalink to this headline">¶</a></h2> -<p>6.5.1 Report all genes that are within 10000 bp upstream or downstream of CNVs.</p> -<div class="highlight-python"><pre>windowBed -a CNVs.bed -b genes.bed -w 10000</pre> -</div> -<p>6.5.2 Report all genes that are within 10000 bp upstream or 5000 bp downstream of -CNVs.</p> -<div class="highlight-python"><pre>windowBed -a CNVs.bed -b genes.bed -l 10000 -r 5000</pre> -</div> -<p>6.5.3 Report all SNPs that are within 5000 bp upstream or 1000 bp downstream of genes. -Define upstream and downstream based on strand.</p> -<div class="highlight-python"><pre>windowBed -a genes.bed -b snps.bed -l 5000 -r 1000 -sw</pre> -</div> -</div> -<div class="section" id="closestbed"> -<h2>6.6 closestBed<a class="headerlink" href="#closestbed" title="Permalink to this headline">¶</a></h2> -<p>Note: By default, if there is a tie for closest, all ties will be reported. <strong>closestBed</strong> allows overlapping -features to be the closest.</p> -<p>6.6.1 Find the closest ALU to each gene.</p> -<div class="highlight-python"><pre>closestBed -a genes.bed -b ALUs.bed</pre> -</div> -<p>6.6.2 Find the closest ALU to each gene, choosing the first ALU in the file if there is a -tie.</p> -<div class="highlight-python"><pre>closestBed -a genes.bed -b ALUs.bed -t first</pre> -</div> -<p>6.6.3 Find the closest ALU to each gene, choosing the last ALU in the file if there is a -tie.</p> -<div class="highlight-python"><pre>closestBed -a genes.bed -b ALUs.bed -t last</pre> -</div> -</div> -<div class="section" id="subtractbed"> -<h2>6.7 subtractBed<a class="headerlink" href="#subtractbed" title="Permalink to this headline">¶</a></h2> -<p>Note: If a feature in A is entirely “spanned” by any feature in B, it will not be reported.</p> -<p>6.7.1 Remove introns from gene features. Exons will (should) be reported.</p> -<div class="highlight-python"><pre>subtractBed -a genes.bed -b introns.bed</pre> -</div> -</div> -<div class="section" id="mergebed"> -<h2>6.8 mergeBed<a class="headerlink" href="#mergebed" title="Permalink to this headline">¶</a></h2> -<p>6.8.1 Merge overlapping repetitive elements into a single entry.</p> -<div class="highlight-python"><pre>mergeBed -i repeatMasker.bed</pre> -</div> -<p>6.8.2 Merge overlapping repetitive elements into a single entry, returning the number of -entries merged.</p> -<div class="highlight-python"><pre>mergeBed -i repeatMasker.bed -n</pre> -</div> -<p>6.8.3 Merge nearby (within 1000 bp) repetitive elements into a single entry.</p> -<div class="highlight-python"><pre>mergeBed -i repeatMasker.bed -d 1000</pre> -</div> -</div> -<div class="section" id="coveragebed"> -<h2>6.9 coverageBed<a class="headerlink" href="#coveragebed" title="Permalink to this headline">¶</a></h2> -<p>6.9.1 Compute the coverage of aligned sequences on 10 kilobase “windows” spanning the -genome.</p> -<div class="highlight-python"><pre>coverageBed -a reads.bed -b windows10kb.bed | head -chr1 0 10000 0 10000 0.00 -chr1 10001 20000 33 10000 0.21 -chr1 20001 30000 42 10000 0.29 -chr1 30001 40000 71 10000 0.36</pre> -</div> -<p>6.9.2 Compute the coverage of aligned sequences on 10 kilobase “windows” spanning the -genome and created a BEDGRAPH of the number of aligned reads in each window for -display on the UCSC browser.</p> -<div class="highlight-python"><pre>coverageBed -a reads.bed -b windows10kb.bed | cut -f 1-4 > windows10kb.cov.bedg</pre> -</div> -<p>6.9.3 Compute the coverage of aligned sequences on 10 kilobase “windows” spanning the -genome and created a BEDGRAPH of the fraction of each window covered by at least -one aligned read for display on the UCSC browser.</p> -<div class="highlight-python"><pre>coverageBed -a reads.bed -b windows10kb.bed | awk ??{OFS="\t"; print $1,$2,$3,$6}?? -> windows10kb.pctcov.bedg</pre> -</div> -</div> -<div class="section" id="complementbed"> -<h2>6.10 complementBed<a class="headerlink" href="#complementbed" title="Permalink to this headline">¶</a></h2> -<p>6.10.1 Report all intervals in the human genome that are not covered by repetitive -elements.</p> -<div class="highlight-python"><pre>complementBed -i repeatMasker.bed -g hg18.genome</pre> -</div> -</div> -<div class="section" id="shufflebed"> -<h2>6.11 shuffleBed<a class="headerlink" href="#shufflebed" title="Permalink to this headline">¶</a></h2> -<p>6.11.1 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps.</p> -<div class="highlight-python"><pre>shuffleBed -i variants.bed -g hg18.genome -excl genome_gaps.bed</pre> -</div> -<p>6.11.2 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps and require that the variants be randomly -placed on the same chromosome.</p> -<div class="highlight-python"><pre>shuffleBed -i variants.bed -g hg18.genome -excl genome_gaps.bed -chrom</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">Example usage</a><ul> -<li><a class="reference internal" href="#intersectbed">6.1 intersectBed</a></li> -<li><a class="reference internal" href="#pairtobed">6.2 pairToBed</a></li> -<li><a class="reference internal" href="#pairtopair">6.3 pairToPair</a></li> -<li><a class="reference internal" href="#bamtobed">6.4 bamToBed</a></li> -<li><a class="reference internal" href="#windowbed">6.5 windowBed</a></li> -<li><a class="reference internal" href="#closestbed">6.6 closestBed</a></li> -<li><a class="reference internal" href="#subtractbed">6.7 subtractBed</a></li> -<li><a class="reference internal" href="#mergebed">6.8 mergeBed</a></li> -<li><a class="reference internal" href="#coveragebed">6.9 coverageBed</a></li> -<li><a class="reference internal" href="#complementbed">6.10 complementBed</a></li> -<li><a class="reference internal" href="#shufflebed">6.11 shuffleBed</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="annotateBed.html" - title="previous chapter">5.24 annotateBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="advanced-usage.html" - title="next chapter">Advanced usage</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/example-usage.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="advanced-usage.html" title="Advanced usage" - >next</a> |</li> - <li class="right" > - <a href="annotateBed.html" title="5.24 annotateBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/fastafromBed.html b/docs/_build/html/content/fastafromBed.html deleted file mode 100644 index 62dedba0..00000000 --- a/docs/_build/html/content/fastafromBed.html +++ /dev/null @@ -1,240 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.11 fastaFromBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.12 maskFastaFromBed" href="maskfastafromBed.html" /> - <link rel="prev" title="5.10 genomeCoverageBed" href="genomecoverageBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="maskfastafromBed.html" title="5.12 maskFastaFromBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="genomecoverageBed.html" title="5.10 genomeCoverageBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="fastafrombed"> -<h1>5.11 fastaFromBed<a class="headerlink" href="#fastafrombed" title="Permalink to this headline">¶</a></h1> -<p><strong>fastaFromBed</strong> extracts sequences from a FASTA file for each of the intervals defined in a BED file. -The headers in the input FASTA file must exactly match the chromosome column in the BED file.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.11.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>fastaFromBed [OPTIONS] -fi <input FASTA> -bed <BED/GFF/VCF> -fo <output FASTA></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-name</strong></td> -<td>Use the “name” column in the BED file for the FASTA headers in the output FASTA file.</td> -</tr> -<tr class="row-odd"><td><strong>-tab</strong></td> -<td>Report extract sequences in a tab-delimited format instead of in FASTA format.</td> -</tr> -<tr class="row-even"><td><strong>-s</strong></td> -<td>Force strandedness. If the feature occupies the antisense strand, the sequence will be reverse complemented. <em>Default: strand information is ignored</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.11.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p><strong>fastaFromBed</strong> will extract the sequence defined by the coordinates in a BED interval and create a -new FASTA entry in the output file for each extracted sequence. By default, the FASTA header for each -extracted sequence will be formatted as follows: “<chrom>:<start>-<end>”.</p> -<p>For example:</p> -<div class="highlight-python"><pre>$ cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - -cat test.fa.out ->chr1:5-10 -AAACC</pre> -</div> -</div> -<div class="section" id="using-the-bed-name-column-as-a-fasta-header"> -<h2>5.11.3 Using the BED “name” column as a FASTA header.<a class="headerlink" href="#using-the-bed-name-column-as-a-fasta-header" title="Permalink to this headline">¶</a></h2> -<p>Using the <strong>-name</strong> option, one can set the FASTA header for each extracted sequence to be the “name” -columns from the BED feature.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -name - -cat test.fa.out ->myseq -AAACC</pre> -</div> -</div> -<div class="section" id="creating-a-tab-delimited-output-file-in-lieu-of-fasta-output"> -<h2>5.11.4 Creating a tab-delimited output file in lieu of FASTA output.<a class="headerlink" href="#creating-a-tab-delimited-output-file-in-lieu-of-fasta-output" title="Permalink to this headline">¶</a></h2> -<p>Using the <strong>-tab</strong> option, the <strong>-fo</strong> output file will be tab-delimited instead of in FASTA format.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out.tab -name -tab - -cat test.fa.out -myseq AAACC</pre> -</div> -</div> -<div class="section" id="s-forcing-the-extracted-sequence-to-reflect-the-requested-strand"> -<h2>5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand<a class="headerlink" href="#s-forcing-the-extracted-sequence-to-reflect-the-requested-strand" title="Permalink to this headline">¶</a></h2> -<p><strong>fastaFromBed</strong> will extract the sequence in the orientation defined in the strand column when the “-s” -option is used.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 20 25 forward 1 + -chr1 20 25 reverse 1 - - -fastaFromBed -fi test.fa -bed test.bed -s -name -fo test.fa.out - -cat test.fa.out ->forward -CGCTA ->reverse -TAGCG</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.11 fastaFromBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.11.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.11.2 Default behavior</a></li> -<li><a class="reference internal" href="#using-the-bed-name-column-as-a-fasta-header">5.11.3 Using the BED “name” column as a FASTA header.</a></li> -<li><a class="reference internal" href="#creating-a-tab-delimited-output-file-in-lieu-of-fasta-output">5.11.4 Creating a tab-delimited output file in lieu of FASTA output.</a></li> -<li><a class="reference internal" href="#s-forcing-the-extracted-sequence-to-reflect-the-requested-strand">5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="genomecoverageBed.html" - title="previous chapter">5.10 genomeCoverageBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="maskfastafromBed.html" - title="next chapter">5.12 maskFastaFromBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/fastafromBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="maskfastafromBed.html" title="5.12 maskFastaFromBed" - >next</a> |</li> - <li class="right" > - <a href="genomecoverageBed.html" title="5.10 genomeCoverageBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/general-usage.html b/docs/_build/html/content/general-usage.html deleted file mode 100644 index b2527349..00000000 --- a/docs/_build/html/content/general-usage.html +++ /dev/null @@ -1,521 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>General usage</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="prev" title="Quick start" href="quick-start.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="bedtools-suite.html" title="The BEDTools suite" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="quick-start.html" title="Quick start" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="general-usage"> -<h1>General usage<a class="headerlink" href="#general-usage" title="Permalink to this headline">¶</a></h1> -<div class="section" id="supported-file-formats"> -<h2>4.1 Supported file formats<a class="headerlink" href="#supported-file-formats" title="Permalink to this headline">¶</a></h2> -<div class="section" id="bed-format"> -<h3>4.1.1 BED format<a class="headerlink" href="#bed-format" title="Permalink to this headline">¶</a></h3> -<p>As described on the UCSC Genome Browser website (see link below), the BED format is a concise and -flexible way to represent genomic features and annotations. The BED format description supports up to -12 columns, but only the first 3 are required for the UCSC browser, the Galaxy browser and for -BEDTools. BEDTools allows one to use the “BED12” format (that is, all 12 fields listed below). -However, only intersectBed, coverageBed, genomeCoverageBed, and bamToBed will obey the BED12 -“blocks” when computing overlaps, etc., via the <strong>“-split”</strong> option. For all other tools, the last six columns -are not used for any comparisons by the BEDTools. Instead, they will use the entire span (start to end) -of the BED12 entry to perform any relevant feature comparisons. The last six columns will be reported -in the output of all comparisons.</p> -<p>The file description below is modified from: <a class="reference external" href="http://genome.ucsc.edu/FAQ/FAQformat#format1">http://genome.ucsc.edu/FAQ/FAQformat#format1</a>.</p> -<ol class="arabic simple"> -<li><strong>chrom</strong> - The name of the chromosome on which the genome feature exists.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “chr1”, “III”, “myChrom”, “contig1112.23”.</li> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="2"> -<li><strong>start</strong> - The zero-based starting position of the feature in the chromosome.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The first base in a chromosome is numbered 0</em>.</li> -<li><em>The start position in each BED feature is therefore interpreted to be 1 greater than the start position listed in the feature. For example, start=9, end=20 is interpreted to span bases 10 through 20,inclusive</em>.</li> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="3"> -<li><strong>end</strong> - The one-based ending position of the feature in the chromosome.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The end position in each BED feature is one-based. See example above</em>.</li> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="4"> -<li><strong>name</strong> - Defines the name of the BED feature.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “LINE”, “Exon3”, “HWIEAS_0001:3:1:0:266#0/1”, or “my_Feature”.</li> -<li><em>This column is optional</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="5"> -<li><strong>score</strong> - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), “up”, “down”, etc.</li> -<li><em>This column is optional</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="6"> -<li><strong>strand</strong> - Defines the strand - either ‘+’ or ‘-‘.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is optional</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="7"> -<li><strong>thickStart</strong> - The starting position at which the feature is drawn thickly.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="8"> -<li><strong>thickEnd</strong> - The ending position at which the feature is drawn thickly.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="9"> -<li><strong>itemRgb</strong> - An RGB value of the form R,G,B (e.g. 255,0,0).</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="10"> -<li><strong>blockCount</strong> - The number of blocks (exons) in the BED line.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="11"> -<li><strong>blockSizes</strong> - A comma-separated list of the block sizes.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="12"> -<li><strong>blockStarts</strong> - A comma-separated list of block starts.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Allowed yet ignored by BEDTools</em>.</li> -</ul> -</div></blockquote> -<p>BEDTools requires that all BED input files (and input received from stdin) are <strong>tab-delimited</strong>. The following types of BED files are supported by BEDTools:</p> -<ol class="arabic"> -<li><div class="first line-block"> -<div class="line"><strong>BED3</strong>: A BED file where each feature is described by <strong>chrom</strong>, <strong>start</strong>, and <strong>end</strong>.</div> -<div class="line">For example: chr1 11873 14409</div> -</div> -</li> -<li><div class="first line-block"> -<div class="line"><strong>BED4</strong>: A BED file where each feature is described by <strong>chrom</strong>, <strong>start</strong>, <strong>end</strong>, and <strong>name</strong>.</div> -<div class="line">For example: chr1 11873 14409 uc001aaa.3</div> -</div> -</li> -<li><div class="first line-block"> -<div class="line"><strong>BED5</strong>: A BED file where each feature is described by <strong>chrom</strong>, <strong>start</strong>, <strong>end</strong>, <strong>name</strong>, and <strong>score</strong>.</div> -<div class="line">For example: chr1 11873 14409 uc001aaa.3 0</div> -</div> -</li> -<li><div class="first line-block"> -<div class="line"><strong>BED6</strong>: A BED file where each feature is described by <strong>chrom</strong>, <strong>start</strong>, <strong>end</strong>, <strong>name</strong>, <strong>score</strong>, and <strong>strand</strong>.</div> -<div class="line">For example: chr1 11873 14409 uc001aaa.3 0 +</div> -</div> -</li> -<li><div class="first line-block"> -<div class="line"><strong>BED12</strong>: A BED file where each feature is described by all twelve columns listed above.</div> -<div class="line">For example: chr1 11873 14409 uc001aaa.3 0 + 11873</div> -<div class="line">11873 0 3 354,109,1189, 0,739,1347,</div> -</div> -</li> -</ol> -</div> -<div class="section" id="bedpe-format"> -<h3>4.1.2 BEDPE format<a class="headerlink" href="#bedpe-format" title="Permalink to this headline">¶</a></h3> -<p>We have defined a new file format (BEDPE) in order to concisely describe disjoint genome features, -such as structural variations or paired-end sequence alignments. We chose to define a new format -because the existing “blocked” BED format (a.k.a. BED12) does not allow inter-chromosomal feature -definitions. In addition, BED12 only has one strand field, which is insufficient for paired-end sequence -alignments, especially when studying structural variation.</p> -<p>The BEDPE format is described below. The description is modified from: <a class="reference external" href="http://genome.ucsc.edu/FAQ/FAQformat#format1">http://genome.ucsc.edu/FAQ/FAQformat#format1</a>.</p> -<ol class="arabic simple"> -<li><strong>chrom1</strong> - The name of the chromosome on which the <strong>first</strong> end of the feature exists.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “chr1”, “III”, “myChrom”, “contig1112.23”.</li> -<li><em>This column is required</em>.</li> -<li><em>Use ”.” for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="2"> -<li><strong>start1</strong> - The zero-based starting position of the <strong>first</strong> end of the feature on <strong>chrom1</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The first base in a chromosome is numbered 0</em>.</li> -<li><em>As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required</em>.</li> -<li><em>Use -1 for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="3"> -<li><strong>end1</strong> - The one-based ending position of the first end of the feature on <strong>chrom1</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The end position in each BEDPE feature is one-based</em>.</li> -<li><em>This column is required</em>.</li> -<li><em>Use -1 for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="4"> -<li><strong>chrom2</strong> - The name of the chromosome on which the <strong>second</strong> end of the feature exists.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “chr1”, “III”, “myChrom”, “contig1112.23”.</li> -<li><em>This column is required</em>.</li> -<li><em>Use ”.” for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="5"> -<li><strong>start2</strong> - The zero-based starting position of the <strong>second</strong> end of the feature on <strong>chrom2</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The first base in a chromosome is numbered 0</em>.</li> -<li><em>As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required</em>.</li> -<li><em>Use -1 for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="6"> -<li><strong>end2</strong> - The one-based ending position of the <strong>second</strong> end of the feature on <strong>chrom2</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>The end position in each BEDPE feature is one-based</em>.</li> -<li><em>This column is required</em>.</li> -<li><em>Use -1 for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="7"> -<li><strong>name</strong> - Defines the name of the BEDPE feature.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “LINE”, “Exon3”, “HWIEAS_0001:3:1:0:266#0/1”, or “my_Feature”.</li> -<li><em>This column is optional</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="8"> -<li><strong>score</strong> - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. <em>However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features</em>. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), “up”, “down”, etc.</li> -<li><em>This column is optional</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="9"> -<li><strong>strand1</strong> - Defines the strand for the first end of the feature. Either ‘+’ or ‘-‘.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is optional</em>.</li> -<li><em>Use ”.” for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="10"> -<li><strong>strand2</strong> - Defines the strand for the second end of the feature. Either ‘+’ or ‘-‘.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is optional</em>.</li> -<li><em>Use ”.” for unknown</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="11"> -<li><strong>Any number of additional, user-defined fields</strong> - BEDTools allows one to add as many additional fields to the normal, 10-column BEDPE format as necessary. These columns are merely “passed through” <strong>pairToBed</strong> and <strong>pairToPair</strong> and are not part of any analysis. One would use these additional columns to add extra information (e.g., edit distance for each end of an alignment, or “deletion”, “inversion”, etc.) to each BEDPE feature.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>These additional columns are optional</em>.</li> -</ul> -</div></blockquote> -<p>Entries from an typical BEDPE file:</p> -<div class="highlight-python"><pre>chr1 100 200 chr5 5000 5100 bedpe_example1 30 + - -chr9 1000 5000 chr9 3000 3800 bedpe_example2 100 + -</pre> -</div> -<p>Entries from a BEDPE file with two custom fields added to each record:</p> -<div class="highlight-python"><pre>chr1 10 20 chr5 50 60 a1 30 + - 0 1 -chr9 30 40 chr9 80 90 a2 100 + - 2 1</pre> -</div> -</div> -<div class="section" id="gff-format"> -<h3>4.1.3 GFF format<a class="headerlink" href="#gff-format" title="Permalink to this headline">¶</a></h3> -<p>The GFF format is described on the Sanger Institute’s website (<a class="reference external" href="http://www.sanger.ac.uk/resources/software/gff/spec.html">http://www.sanger.ac.uk/resources/software/gff/spec.html</a>). The GFF description below is modified from the definition at this URL. All nine columns in the GFF format description are required by BEDTools.</p> -<ol class="arabic simple"> -<li><strong>seqname</strong> - The name of the sequence (e.g. chromosome) on which the feature exists.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “chr1”, “III”, “myChrom”, “contig1112.23”.</li> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="2"> -<li><strong>source</strong> - The source of this feature. This field will normally be used to indicate the program making the prediction, or if it comes from public database annotation, or is experimentally verified, etc.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="3"> -<li><strong>feature</strong> - The feature type name. Equivalent to BED’s <strong>name</strong> field.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>Any string can be used</em>. For example, “exon”, etc.</li> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="4"> -<li><strong>start</strong> - The one-based starting position of feature on <strong>seqname</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -<li><em>BEDTools accounts for the fact the GFF uses a one-based position and BED uses a zero-based start position</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="5"> -<li><strong>end</strong> - The one-based ending position of feature on <strong>seqname</strong>.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="6"> -<li><strong>score</strong> - A score assigned to the GFF feature. Like BED format, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. We note that this differs from the GFF definition in the interest of flexibility.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="7"> -<li><strong>strand</strong> - Defines the strand. Use ‘+’, ‘-‘ or ‘.’</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="8"> -<li><strong>frame</strong> - The frame of the coding sequence. Use ‘0’, ‘1’, ‘2’, or ‘.’.</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<ol class="arabic simple" start="9"> -<li><strong>attribute</strong> - Taken from <a class="reference external" href="http://www.sanger.ac.uk/resources/software/gff/spec.html">http://www.sanger.ac.uk/resources/software/gff/spec.html</a>: From version 2 onwards, the attribute field must have an tag value structure following the syntax used within objects in a .ace file, flattened onto one line by semicolon separators. Tags must be standard identifiers ([A-Za-z][<a href="#id2"><span class="problematic" id="id3">AZa-z0-9_</span></a>]*). Free text values must be quoted with double quotes. <em>Note: all non-printing characters in such free text value strings (e.g. newlines, tabs, control characters, etc) must be explicitly represented by their C (UNIX) style backslash-escaped representation (e.g. newlines as ‘n’, tabs as ‘t’)</em>. As in ACEDB, multiple values can follow a specific tag. The aim is to establish consistent use of particular tags, corresponding to an underlying implied ACEDB model if you want to think that way (but acedb is not required).</li> -</ol> -<blockquote> -<div><ul class="simple"> -<li><em>This column is required</em>.</li> -</ul> -</div></blockquote> -<p>An entry from an example GFF file :</p> -<div class="highlight-python"><pre>seq1 BLASTX similarity 101 235 87.1 + 0 Target "HBA_HUMAN" 11 55 ; -E_value 0.0003 dJ102G20 GD_mRNA coding_exon 7105 7201 . - 2 Sequence -"dJ102G20.C1.1"</pre> -</div> -</div> -<div class="section" id="id1"> -<h3>4.1.3 GFF format<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3> -<p>Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which which species/genome build you are -working. The way you do this for BEDTools is to create a “genome” file, which simply lists the names of -the chromosomes (or scaffolds, etc.) and their size (in basepairs).</p> -<p>Genome files must be <strong>tab-delimited</strong> and are structured as follows (this is an example for <em>C. elegans</em>):</p> -<div class="highlight-python"><pre>chrI 15072421 -chrII 15279323 -... -chrX 17718854 -chrM 13794</pre> -</div> -<p>BEDTools includes pre-defined genome files for human and mouse in the <strong>/genomes</strong> directory included -in the BEDTools distribution.</p> -</div> -<div class="section" id="sam-bam-format"> -<h3>4.1.5 SAM/BAM format<a class="headerlink" href="#sam-bam-format" title="Permalink to this headline">¶</a></h3> -<p>The SAM / BAM format is a powerful and widely-used format for storing sequence alignment data (see -<a class="reference external" href="http://samtools.sourceforge.net/">http://samtools.sourceforge.net/</a> for more details). It has quickly become the standard format to which -most DNA sequence alignment programs write their output. Currently, the following BEDTools -support inout in BAM format: <em>intersectBed, windowBed, coverageBed, genomeCoverageBed, -pairToBed, bamToBed</em>. Support for the BAM format in BEDTools allows one to (to name a few): -compare sequence alignments to annotations, refine alignment datasets, screen for potential mutations -and compute aligned sequence coverage.</p> -<p>The details of how these tools work with BAM files are addressed in <strong>Section 5</strong> of this manual.</p> -</div> -<div class="section" id="vcf-format"> -<h3>4.1.6 VCF format<a class="headerlink" href="#vcf-format" title="Permalink to this headline">¶</a></h3> -<p>The Variant Call Format (VCF) was conceived as part of the 1000 Genomes Project as a standardized -means to report genetic variation calls from SNP, INDEL and structural variant detection programs -(see <a class="reference external" href="http://www.1000genomes.org/wiki/doku.php?id=1000_genomes:analysis:vcf4.0">http://www.1000genomes.org/wiki/doku.php?id=1000_genomes:analysis:vcf4.0</a> for details). -BEDTools now supports the latest version of this format (i.e, Version 4.0). As a result, BEDTools can -be used to compare genetic variation calls with other genomic features.</p> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">General usage</a><ul> -<li><a class="reference internal" href="#supported-file-formats">4.1 Supported file formats</a><ul> -<li><a class="reference internal" href="#bed-format">4.1.1 BED format</a></li> -<li><a class="reference internal" href="#bedpe-format">4.1.2 BEDPE format</a></li> -<li><a class="reference internal" href="#gff-format">4.1.3 GFF format</a></li> -<li><a class="reference internal" href="#id1">4.1.3 GFF format</a></li> -<li><a class="reference internal" href="#sam-bam-format">4.1.5 SAM/BAM format</a></li> -<li><a class="reference internal" href="#vcf-format">4.1.6 VCF format</a></li> -</ul> -</li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="quick-start.html" - title="previous chapter">Quick start</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="bedtools-suite.html" - title="next chapter">The BEDTools suite</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/general-usage.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="bedtools-suite.html" title="The BEDTools suite" - >next</a> |</li> - <li class="right" > - <a href="quick-start.html" title="Quick start" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/genomecoverageBed.html b/docs/_build/html/content/genomecoverageBed.html deleted file mode 100644 index 4b1d6b8c..00000000 --- a/docs/_build/html/content/genomecoverageBed.html +++ /dev/null @@ -1,257 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.10 genomeCoverageBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.11 fastaFromBed" href="fastafromBed.html" /> - <link rel="prev" title="5.9 coverageBed" href="coverageBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="fastafromBed.html" title="5.11 fastaFromBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="coverageBed.html" title="5.9 coverageBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="genomecoveragebed"> -<h1>5.10 genomeCoverageBed<a class="headerlink" href="#genomecoveragebed" title="Permalink to this headline">¶</a></h1> -<p><strong>genomeCoverageBed</strong> computes a histogram of feature coverage (e.g., aligned sequences) for a given -genome. Optionally, by using the <strong>-d</strong> option, it will report the depth of coverage at <em>each base</em> on each -chromosome in the genome file (<strong>-g</strong>).</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.10.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>genomeCoverageBed [OPTIONS] -i <BED> -g <GENOME></pre> -</div> -<p>NOTE: genomeCoverageBed requires that the input BED file be sorted by -chromosome. A simple sort -k1,1 will suffice.</p> -<table border="1" class="docutils"> -<colgroup> -<col width="9%" /> -<col width="91%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-ibam</strong></td> -<td><blockquote class="first"> -<div>BAM file as input for coverage. Each BAM alignment in A added to the total coverage for the genome. Use “stdin” if passing it with a UNIX pipe: For example:</div></blockquote> -<div class="last line-block"> -<div class="line">samtools view -b <BAM> | genomeCoverageBed -ibam stdin -g hg18.genome</div> -</div> -</td> -</tr> -<tr class="row-odd"><td><strong>-d</strong></td> -<td>Report the depth at each genome position. <em>Default behavior is to report a histogram</em>.</td> -</tr> -<tr class="row-even"><td><strong>-max</strong></td> -<td>Combine all positions with a depth >= max into a single bin in the histogram.</td> -</tr> -<tr class="row-odd"><td><strong>-bg</strong></td> -<td>Report depth in BedGraph format. For details, see: <a class="reference external" href="http://genome.ucsc.edu/goldenPath/help/bedgraph.html">http://genome.ucsc.edu/goldenPath/help/bedgraph.html</a></td> -</tr> -<tr class="row-even"><td><strong>-bga</strong></td> -<td>Report depth in BedGraph format, as above (i.e., -bg). However with this option, regions with zero coverage are also reported. This allows one to quickly extract all regions of a genome with 0 coverage by applying: “grep -w 0$” to the output.</td> -</tr> -<tr class="row-odd"><td><strong>-split</strong></td> -<td>Treat “split” BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR “N” and “D” operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12).</td> -</tr> -<tr class="row-even"><td><strong>-strand</strong></td> -<td>Calculate coverage of intervals from a specific strand. With BED files, requires at least 6 columns (strand is column 6).</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.10.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>genomeCoverageBed</strong> will compute a histogram of coverage for the genome file provided. -The default output format is as follows: -1. chromosome (or entire genome) -2. depth of coverage from features in input file -3. number of bases on chromosome (or genome) with depth equal to column 2. -4. size of chromosome (or entire genome) in base pairs -5. fraction of bases on chromosome (or entire genome) with depth equal to column 2.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed -i A.bed -g my.genome -chr1 0 980 1000 0.98 -chr1 1 20 1000 0.02 -chr2 1 500 500 1 -genome 0 980 1500 0.653333 -genome 1 520 1500 0.346667</pre> -</div> -</div> -<div class="section" id="max-controlling-the-histogram-s-maximum-depth"> -<h2>5.10.3 (-max)Controlling the histogram’s maximum depth<a class="headerlink" href="#max-controlling-the-histogram-s-maximum-depth" title="Permalink to this headline">¶</a></h2> -<p>Using the <strong>-max</strong> option, <strong>genomeCoverageBed</strong> will “lump” all positions in the genome having feature -coverage greather than or equal to <strong>max</strong> into the <strong>max</strong> histogram bin. For example, if one sets <strong>-max</strong> -equal to 50, the max depth reported in the output will be 50 and all positions with a depth >= 50 will -be represented in bin 50.</p> -</div> -<div class="section" id="d-reporting-per-base-genome-coverage"> -<h2>5.10.4 (-d)Reporting “per-base” genome coverage<a class="headerlink" href="#d-reporting-per-base-genome-coverage" title="Permalink to this headline">¶</a></h2> -<p>Using the <strong>-d</strong> option, <strong>genomeCoverageBed</strong> will compute the depth of feature coverage for each base -on each chromosome in genome file provided.</p> -<p>The “per-base” output format is as follows: -1. chromosome -2. chromosome position -3. depth (number) of features overlapping this chromosome position.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed -i A.bed -g my.genome -d | head -15 | tail -n 10 -chr1 6 0 -chr1 7 0 -chr1 8 0 -chr1 9 0 -chr1 10 0 -chr1 11 1 -chr1 12 1 -chr1 13 1 -chr1 14 1 -chr1 15 1</pre> -</div> -</div> -<div class="section" id="split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features"> -<h2>5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features<a class="headerlink" href="#split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features" title="Permalink to this headline">¶</a></h2> -<p>As described in section 1.3.19, genomeCoverageBed will, by default, screen for overlaps against the -entire span of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq -reads, for example, one typically wants to only screen for overlaps for the portions of the reads that -come from exons (and ignore the interstitial intron sequence). The <strong>-split</strong> command allows for such -overlaps to be performed.</p> -<p>For additional details, please visit the Usage From The Wild site and have a look at example 5, -contributed by Assaf Gordon.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.10 genomeCoverageBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.10.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.10.2 Default behavior</a></li> -<li><a class="reference internal" href="#max-controlling-the-histogram-s-maximum-depth">5.10.3 (-max)Controlling the histogram’s maximum depth</a></li> -<li><a class="reference internal" href="#d-reporting-per-base-genome-coverage">5.10.4 (-d)Reporting “per-base” genome coverage</a></li> -<li><a class="reference internal" href="#split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features">5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="coverageBed.html" - title="previous chapter">5.9 coverageBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="fastafromBed.html" - title="next chapter">5.11 fastaFromBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/genomecoverageBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="fastafromBed.html" title="5.11 fastaFromBed" - >next</a> |</li> - <li class="right" > - <a href="coverageBed.html" title="5.9 coverageBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/groupBy.html b/docs/_build/html/content/groupBy.html deleted file mode 100644 index 82d21d4b..00000000 --- a/docs/_build/html/content/groupBy.html +++ /dev/null @@ -1,324 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.22 groupBy</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.23 unionBedGraphs" href="unionBedGraphs.html" /> - <link rel="prev" title="5.21 bed12ToBed6" href="bed12ToBed6.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="unionBedGraphs.html" title="5.23 unionBedGraphs" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="bed12ToBed6.html" title="5.21 bed12ToBed6" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="groupby"> -<h1>5.22 groupBy<a class="headerlink" href="#groupby" title="Permalink to this headline">¶</a></h1> -<p><strong>groupBy</strong> is a useful tool that mimics the “groupBy” clause in database systems. Given a file or stream -that is sorted by the appropriate “grouping columns”, groupBy will compute summary statistics on -another column in the file or stream. This will work with output from all BEDTools as well as any other -tab-delimited file or stream.</p> -<p><strong>NOTE: When using groupBy, the input data must be ordered by the same -columns as specified with the -grp argument. For example, if -grp is 1,2,3, the the -data should be pre-grouped accordingly. When groupBy detects changes in the -group columns it then summarizes all lines with that group</strong>.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.22.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>groupBy [OPTIONS] -i <input> -opCol <input column></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="11%" /> -<col width="89%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-i</strong></td> -<td><blockquote class="first"> -<div>The input file that should be grouped and summarized. <em>Use “stdin” when using piped input</em>.</div></blockquote> -<p class="last"><strong>Note: if -i is omitted, input is assumed to come from standard input (stdin)</strong></p> -</td> -</tr> -<tr class="row-odd"><td><strong>-g OR -grp</strong></td> -<td>Specifies which column(s) (1-based) should be used to group the input. The columns must be comma-separated and each column must be explicitly listed. No ranges (e.g. 1-4) yet allowed. <em>Default: 1,2,3</em></td> -</tr> -<tr class="row-even"><td><strong>-c OR -opCol</strong></td> -<td>Specify the column (1-based) that should be summarized. <em>Required</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-o OR -op</strong></td> -<td><p class="first">Specify the operation that should be applied to <strong>opCol</strong>.</p> -<div class="line-block"> -<div class="line">Valid operations:</div> -</div> -<blockquote> -<div><div class="line-block"> -<div class="line"><strong>sum</strong> - <em>numeric only</em></div> -<div class="line"><strong>count</strong> - <em>numeric or text</em></div> -<div class="line"><strong>min</strong> - <em>numeric only</em></div> -<div class="line"><strong>max</strong> - <em>numeric only</em></div> -<div class="line"><strong>mean</strong> - <em>numeric only</em></div> -<div class="line"><strong>stdev</strong> - <em>numeric only</em></div> -<div class="line"><strong>median</strong> - <em>numeric only</em></div> -<div class="line"><strong>mode</strong> - <em>numeric or text</em></div> -<div class="line"><strong>antimode</strong> - <em>numeric or text</em></div> -<div class="line"><strong>collapse</strong> (i.e., print a comma separated list) - <em>numeric or text</em></div> -<div class="line"><strong>freqasc</strong> - <em>print a comma separated list of values observed and the number of times they were observed. Reported in ascending order of frequency</em></div> -</div> -</div></blockquote> -<div class="line-block"> -<div class="line"><strong>freqdesc</strong> - <em>print a comma separated list of values observed and the number of times they were observed. Reported in descending order of frequency</em></div> -</div> -<blockquote class="last"> -<div><div class="line-block"> -<div class="line"><em>Default: sum</em></div> -</div> -</div></blockquote> -</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.22.2 Default behavior.<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Let’s imagine we have three incredibly interesting genetic variants that we are studying and we are -interested in what annotated repeats these variants overlap.</p> -<div class="highlight-python"><pre>cat variants.bed -chr21 9719758 9729320 variant1 -chr21 9729310 9757478 variant2 -chr21 9795588 9796685 variant3 - -intersectBed -a variants.bed -b repeats.bed -wa -wb > variantsToRepeats.bed -cat variantsToRepeats.bed -chr21 9719758 9729320 variant1 chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9719758 9729320 variant1 chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9719758 9729320 variant1 chr21 9725582 9725977 L1PA3 3288 + -chr21 9719758 9729320 variant1 chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729310 9757478 variant2 chr21 9729320 9729809 L1PA3 3897 - -chr21 9729310 9757478 variant2 chr21 9729809 9730866 L1P1 8367 + -chr21 9729310 9757478 variant2 chr21 9730866 9734026 ALR/Alpha 1036 - -chr21 9729310 9757478 variant2 chr21 9734037 9757471 ALR/Alpha 1182 - -chr21 9795588 9796685 variant3 chr21 9795589 9795713 (GAATG)n 308 + -chr21 9795588 9796685 variant3 chr21 9795736 9795894 (GAATG)n 683 + -chr21 9795588 9796685 variant3 chr21 9795911 9796007 (GAATG)n 345 + -chr21 9795588 9796685 variant3 chr21 9796028 9796187 (GAATG)n 756 + -chr21 9795588 9796685 variant3 chr21 9796202 9796615 (GAATG)n 891 + -chr21 9795588 9796685 variant3 chr21 9796637 9796824 (GAATG)n 621 +</pre> -</div> -<p>We can see that variant1 overlaps with 3 repeats, variant2 with 4 and variant3 with 6. We can use -groupBy to summarize the hits for each variant in several useful ways. The default behavior is to -compute the <em>sum</em> of the opCol.</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -grp 1,2,3 -opCol 9 -chr21 9719758 9729320 6353 -chr21 9729310 9757478 14482 -chr21 9795588 9796685 3604</pre> -</div> -</div> -<div class="section" id="computing-the-min-and-max"> -<h2>5.22.3 Computing the min and max.<a class="headerlink" href="#computing-the-min-and-max" title="Permalink to this headline">¶</a></h2> -<p>Now let’s find the <em>min</em> and <em>max</em> repeat score for each variant. We do this by “grouping” on the variant -coordinate columns (i.e. cols. 1,2 and 3) and ask for the min and max of the repeat score column (i.e. -col. 9).</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -g 1,2,3 -c 9 -o min -chr21 9719758 9729320 1004 -chr21 9729310 9757478 1036 -chr21 9795588 9796685 308</pre> -</div> -<p>We can also group on just the <em>name</em> column with similar effect.</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -grp 4 -opCol 9 -op min -variant1 1004 -variant2 1036 -variant3 308</pre> -</div> -<p>What about the <em>max</em> score? Let’s keep the coordinates and the name of the variants so that we -stay in BED format.</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op max -chr21 9719758 9729320 variant1 3288 -chr21 9729310 9757478 variant2 8367 -chr21 9795588 9796685 variant3 891</pre> -</div> -</div> -<div class="section" id="computing-the-mean-and-median"> -<h2>5.22.4 Computing the mean and median.<a class="headerlink" href="#computing-the-mean-and-median" title="Permalink to this headline">¶</a></h2> -<p>Now let’s find the <em>mean</em> and <em>median</em> repeat score for each variant.</p> -<div class="highlight-python"><pre>cat variantsToRepeats.bed | groupBy -g 1,2,3,4 -c 9 -o mean -chr21 9719758 9729320 variant1 1588.25 -chr21 9729310 9757478 variant2 3620.5 -chr21 9795588 9796685 variant3 600.6667 - -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op median -chr21 9719758 9729320 variant1 1030.5 -chr21 9729310 9757478 variant2 2539.5 -chr21 9795588 9796685 variant3 652</pre> -</div> -</div> -<div class="section" id="computing-the-mode-and-antimode"> -<h2>5.22.5 Computing the mode and “antimode”.<a class="headerlink" href="#computing-the-mode-and-antimode" title="Permalink to this headline">¶</a></h2> -<p>Now let’s find the <em>mode</em> and <em>antimode</em> (i.e., the least frequent) repeat score for each variant (in this case -they are identical).</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op mode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308 - -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op antimode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308</pre> -</div> -</div> -<div class="section" id="computing-the-count-of-lines-for-a-given-group"> -<h2>5.22.6 Computing the count of lines for a given group.<a class="headerlink" href="#computing-the-count-of-lines-for-a-given-group" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -g 1,2,3,4 -c 9 -c count -chr21 9719758 9729320 variant1 4 -chr21 9729310 9757478 variant2 4 -chr21 9795588 9796685 variant3 6</pre> -</div> -</div> -<div class="section" id="collapsing-listing-all-of-the-values-in-the-opcol-for-a-given-group"> -<h2>5.22.7 Collapsing: listing all of the values in the opCol for a given group.<a class="headerlink" href="#collapsing-listing-all-of-the-values-in-the-opcol-for-a-given-group" title="Permalink to this headline">¶</a></h2> -<p>Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This “denormalizes” things. Now you have a list of all the -repeats on a single line.</p> -<div class="highlight-python"><pre>groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op collapse -chr21 9719758 9729320 variant1 ALR/Alpha,ALR/Alpha,L1PA3,ALR/Alpha, -chr21 9729310 9757478 variant2 L1PA3,L1P1,ALR/Alpha,ALR/Alpha, -chr21 9795588 9796685 variant3 (GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,</pre> -</div> -</div> -<div class="section" id="computing-frequencies-freqasc-and-freqdesc"> -<h2>5.22.8 Computing frequencies: freqasc and freqdesc.<a class="headerlink" href="#computing-frequencies-freqasc-and-freqdesc" title="Permalink to this headline">¶</a></h2> -<p>Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This “denormalizes” things. Now you have a list of all the -repeats on a single line.</p> -<div class="highlight-python"><pre>cat variantsToRepeats.bed | groupBy -g 1 -c 8 -o freqdesc -chr21 (GAATG)n:6,ALR/Alpha:5,L1PA3:2,L1P1:1, - -cat variantsToRepeats.bed | groupBy -g 1 -c 8 -o freqasc -chr21 L1P1:1,L1PA3:2,ALR/Alpha:5,(GAATG)n:6,</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.22 groupBy</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.22.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.22.2 Default behavior.</a></li> -<li><a class="reference internal" href="#computing-the-min-and-max">5.22.3 Computing the min and max.</a></li> -<li><a class="reference internal" href="#computing-the-mean-and-median">5.22.4 Computing the mean and median.</a></li> -<li><a class="reference internal" href="#computing-the-mode-and-antimode">5.22.5 Computing the mode and “antimode”.</a></li> -<li><a class="reference internal" href="#computing-the-count-of-lines-for-a-given-group">5.22.6 Computing the count of lines for a given group.</a></li> -<li><a class="reference internal" href="#collapsing-listing-all-of-the-values-in-the-opcol-for-a-given-group">5.22.7 Collapsing: listing all of the values in the opCol for a given group.</a></li> -<li><a class="reference internal" href="#computing-frequencies-freqasc-and-freqdesc">5.22.8 Computing frequencies: freqasc and freqdesc.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="bed12ToBed6.html" - title="previous chapter">5.21 bed12ToBed6</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="unionBedGraphs.html" - title="next chapter">5.23 unionBedGraphs</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/groupBy.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="unionBedGraphs.html" title="5.23 unionBedGraphs" - >next</a> |</li> - <li class="right" > - <a href="bed12ToBed6.html" title="5.21 bed12ToBed6" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/installation.html b/docs/_build/html/content/installation.html deleted file mode 100644 index 33119690..00000000 --- a/docs/_build/html/content/installation.html +++ /dev/null @@ -1,135 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Installation</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="Quick start" href="quick-start.html" /> - <link rel="prev" title="Overview" href="overview.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="quick-start.html" title="Quick start" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="overview.html" title="Overview" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="installation"> -<h1>Installation<a class="headerlink" href="#installation" title="Permalink to this headline">¶</a></h1> -<p>BEDTools is intended to run in a “command line” environment on UNIX, LINUX and Apple OS X -operating systems. Installing BEDTools involves downloading the latest source code archive followed by -compiling the source code into binaries on your local system. The following commands will install -BEDTools in a local directory on a NIX or OS X machine. Note that the <strong>“<version>”</strong> refers to the -latest posted version number on <a class="reference external" href="http://bedtools.googlecode.com/">http://bedtools.googlecode.com/</a>.</p> -<p>Note: <em>The BEDTools “makefiles” use the GCC compiler. One should edit the Makefiles accordingly if -one wants to use a different compiler.</em>:</p> -<div class="highlight-python"><pre>curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz -tar -zxvf BEDTools.tar.gz -cd BEDTools-<version> -make clean -make all -ls bin</pre> -</div> -<p>At this point, one should copy the binaries in BEDTools/bin/ to either usr/local/bin/ or some -other repository for commonly used UNIX tools in your environment. You will typically require -administrator (e.g. “root” or “sudo”) privileges to copy to usr/local/bin/. If in doubt, contact you -system administrator for help.</p> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h4>Previous topic</h4> - <p class="topless"><a href="overview.html" - title="previous chapter">Overview</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="quick-start.html" - title="next chapter">Quick start</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/installation.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="quick-start.html" title="Quick start" - >next</a> |</li> - <li class="right" > - <a href="overview.html" title="Overview" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/intersectBed-1.hires.png b/docs/_build/html/content/intersectBed-1.hires.png deleted file mode 100644 index 20d88ed6202463a9cbf4509234cea38d37c47752..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28671 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 diff --git a/docs/_build/html/content/intersectBed-1.png b/docs/_build/html/content/intersectBed-1.png deleted file mode 100644 index 97a96cd187eff19720ea844504b9ca6548c946e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10209 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 diff --git a/docs/_build/html/content/intersectBed-1.py b/docs/_build/html/content/intersectBed-1.py deleted file mode 100644 index 01036d2f..00000000 --- a/docs/_build/html/content/intersectBed-1.py +++ /dev/null @@ -1,8 +0,0 @@ -a = """chr1 10 20\nchr1 30 40""" -b = """chr1 15 20""" - -title = "bedtools intersect -a A.bed -b B.bed" -from matplotlib.pyplot import show -from pyplots.plotter import plot_a_b_tool -plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed') -show() \ No newline at end of file diff --git a/docs/_build/html/content/intersectBed-2.hires.png b/docs/_build/html/content/intersectBed-2.hires.png deleted file mode 100644 index b15687c7e942f3bc1297e981495457e8a41f71dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30023 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 diff --git a/docs/_build/html/content/intersectBed-2.png b/docs/_build/html/content/intersectBed-2.png deleted file mode 100644 index 7083e944f3e274de6c57f130c1329ad20a65eca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10523 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 diff --git a/docs/_build/html/content/intersectBed-2.py b/docs/_build/html/content/intersectBed-2.py deleted file mode 100644 index b459b3cd..00000000 --- a/docs/_build/html/content/intersectBed-2.py +++ /dev/null @@ -1,8 +0,0 @@ -a = """chr1 10 20\nchr1 30 40""" -b = """chr1 15 20""" - -title = "bedtools intersect -a A.bed -b B.bed -wa" -from matplotlib.pyplot import show -from pyplots.plotter import plot_a_b_tool -plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed', wa=True) -show() \ No newline at end of file diff --git a/docs/_build/html/content/intersectBed-3.hires.png b/docs/_build/html/content/intersectBed-3.hires.png deleted file mode 100644 index 355c5e60e6db1d004cdcdaa57d3f8680f378657f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26615 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
jz3&Xw!1OSWa1zk&l3&Lqvk$qIHMm&J@u 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 Moindu$Dzc30r&ws-T(jq diff --git a/docs/_build/html/content/intersectBed-3.png b/docs/_build/html/content/intersectBed-3.png deleted file mode 100644 index 3dda9a99c96c3f7b549e1b3c47839d2dec83bc89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9274 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 BY!Lte diff --git a/docs/_build/html/content/intersectBed-3.py b/docs/_build/html/content/intersectBed-3.py deleted file mode 100644 index a7947684..00000000 --- a/docs/_build/html/content/intersectBed-3.py +++ /dev/null @@ -1,8 +0,0 @@ -a = """chr1 10 20\nchr1 30 40""" -b = """chr1 15 20""" - -title = "bedtools intersect -a A -b B -v" -from matplotlib.pyplot import show -from pyplots.plotter import plot_a_b_tool -plot_a_b_tool(a, b, 'intersect', title, 'A.bed', 'B.bed', v=True) -show() \ No newline at end of file diff --git a/docs/_build/html/content/intersectBed.html b/docs/_build/html/content/intersectBed.html deleted file mode 100644 index 58932995..00000000 --- a/docs/_build/html/content/intersectBed.html +++ /dev/null @@ -1,500 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.1 intersect</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.2 pairToBed" href="pairToBed.html" /> - <link rel="prev" title="The BEDTools suite" href="bedtools-suite.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="pairToBed.html" title="5.2 pairToBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="bedtools-suite.html" title="The BEDTools suite" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="intersect"> -<h1>5.1 intersect<a class="headerlink" href="#intersect" title="Permalink to this headline">¶</a></h1> -<p>By far, the most common question asked of two sets of genomic features is whether or not any of the -features in the two sets “overlap” with one another. This is known as feature intersection. <strong>bedtools intersect</strong> -allows one to screen for overlaps between two sets of genomic features. Moreover, it allows one to have -fine control as to how the intersections are reported. <strong>bedtools intersect</strong> works with both BED/GFF/VCF -and BAM files as input.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.1.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage</strong>:</p> -<div class="highlight-python"><pre>bedtools intersect [OPTIONS] [-a <BED/GFF/VCF> || -abam <BAM>] -b <BED/GFF/VCF> - -intersectBed [OPTIONS] [-a <BED/GFF/VCF> || -abam <BAM>] -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="10%" /> -<col width="90%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-a</strong></td> -<td>BED/GFF/VCF file A. Each feature in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe.</td> -</tr> -<tr class="row-odd"><td><strong>-b</strong></td> -<td>BED/GFF/VCF file B. Use “stdin” if passing B with a UNIX pipe.</td> -</tr> -<tr class="row-even"><td><strong>-abam</strong></td> -<td>BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe: For example: samtools view -b <BAM> | bedtools intersect -abam stdin -b genes.bed</td> -</tr> -<tr class="row-odd"><td><strong>-ubam</strong></td> -<td>Write uncompressed BAM output. The default is write compressed BAM output.</td> -</tr> -<tr class="row-even"><td><strong>-bed</strong></td> -<td>When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: bedtools intersect -abam reads.bam -b genes.bed -bed</td> -</tr> -<tr class="row-odd"><td><strong>-wa</strong></td> -<td>Write the original entry in A for each overlap.</td> -</tr> -<tr class="row-even"><td><strong>-wb</strong></td> -<td>Write the original entry in B for each overlap. Useful for knowing what A overlaps. Restricted by -f and -r.</td> -</tr> -<tr class="row-odd"><td><strong>-wo</strong></td> -<td>Write the original A and B entries plus the number of base pairs of overlap between the two features. Only A features with overlap are reported. Restricted by -f and -r.</td> -</tr> -<tr class="row-even"><td><strong>-wao</strong></td> -<td>Write the original A and B entries plus the number of base pairs of overlap between the two features. However, A features w/o overlap are also reported with a NULL B feature and overlap = 0. Restricted by -f and -r.</td> -</tr> -<tr class="row-odd"><td><strong>-u</strong></td> -<td>Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. Restricted by -f and -r.</td> -</tr> -<tr class="row-even"><td><strong>-c</strong></td> -<td>For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B. Restricted by -f and -r.</td> -</tr> -<tr class="row-odd"><td><strong>-v</strong></td> -<td>Only report those entries in A that have no overlap in B. Restricted by -f and -r.</td> -</tr> -<tr class="row-even"><td><strong>-f</strong></td> -<td>Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp).</td> -</tr> -<tr class="row-odd"><td><strong>-r</strong></td> -<td>Require that the fraction of overlap be reciprocal for A and B. In other words, if -f is 0.90 and -r is used, this requires that B overlap at least 90% of A and that A also overlaps at least 90% of B.</td> -</tr> -<tr class="row-even"><td><strong>-s</strong></td> -<td>Force “strandedness”. That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand.</td> -</tr> -<tr class="row-odd"><td><strong>-split</strong></td> -<td>Treat “split” BAM (i.e., having an “N” CIGAR operation) or BED12 entries as distinct BED intervals.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.1.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, if an overlap is found, <strong>bedtools intersect</strong> reports the shared interval between the two -overlapping features.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 - -bedtools intersect -a A.bed -b B.bed -chr1 15 20</pre> -</div> -<p>(<a class="reference external" href="../content/intersectBed-1.py">Source code</a>, <a class="reference external" href="../content/intersectBed-1.png">png</a>, <a class="reference external" href="../content/intersectBed-1.hires.png">hires.png</a>, <a class="reference external" href="../content/intersectBed-1.pdf">pdf</a>)</p> -<div class="figure"> -<img alt="../_images/intersectBed-1.png" src="../_images/intersectBed-1.png" /> -</div> -</div> -<div class="section" id="wa-reporting-the-original-a-feature"> -<h2>5.1.3 (-wa) Reporting the original A feature<a class="headerlink" href="#wa-reporting-the-original-a-feature" title="Permalink to this headline">¶</a></h2> -<p>Instead, one can force <strong>bedtools intersect</strong> to report the <em>original</em> <strong>“A”</strong> feature when an overlap is found. As -shown below, the entire “A” feature is reported, not just the portion that overlaps with the “B” feature.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 - -bedtools intersect -a A.bed -b B.bed -wa -chr1 10 20</pre> -</div> -<p>(<a class="reference external" href="../content/intersectBed-2.py">Source code</a>, <a class="reference external" href="../content/intersectBed-2.png">png</a>, <a class="reference external" href="../content/intersectBed-2.hires.png">hires.png</a>, <a class="reference external" href="../content/intersectBed-2.pdf">pdf</a>)</p> -<div class="figure"> -<img alt="../_images/intersectBed-2.png" src="../_images/intersectBed-2.png" /> -</div> -</div> -<div class="section" id="wb-reporting-the-original-b-feature"> -<h2>5.1.4 (-wb) Reporting the original B feature<a class="headerlink" href="#wb-reporting-the-original-b-feature" title="Permalink to this headline">¶</a></h2> -<p>Similarly, one can force <strong>bedtools intersect</strong> to report the <em>original</em> <strong>“B”</strong> feature when an overlap is found. If -just -wb is used, the overlapping portion of A will be reported followed by the <em>original</em> <strong>“B”</strong>. If both -wa -and -wb are used, the <em>originals</em> of both <strong>“A”</strong> and <strong>“B”</strong> will be reported.</p> -<p>For example (-wb alone): -:: -For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 - -bedtools intersect -a A.bed -b B.bed -wb -chr1 15 20 chr 15 20</pre> -</div> -<p>Now -wa and -wb:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 - -bedtools intersect -a A.bed -b B.bed -wa -wb -chr1 10 20 chr 15 20</pre> -</div> -</div> -<div class="section" id="u-reporting-the-presence-of-at-least-one-overlapping-feature"> -<h2>5.1.5 (-u) Reporting the presence of <em>at least one</em> overlapping feature<a class="headerlink" href="#u-reporting-the-presence-of-at-least-one-overlapping-feature" title="Permalink to this headline">¶</a></h2> -<p>Frequently a feature in “A” will overlap with multiple features in “B”. By default, <strong>bedtools intersect</strong> will -report each overlap as a separate output line. However, one may want to simply know that there is at -least one overlap (or none). When one uses the -u option, “A” features that overlap with one or more -“B” features are reported once. Those that overlap with no “B” features are not reported at all.</p> -<p>For example (<em>without</em> -u):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 -chr1 18 25 - -bedtools intersect -a A.bed -b B.bed -wb -chr1 10 20 chr 15 20 -chr1 10 20 chr 18 25</pre> -</div> -<p>For example (<em>with</em> -u):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 -chr1 18 25 - -bedtools intersect -a A.bed -b B.bed -u -chr1 10 20</pre> -</div> -</div> -<div class="section" id="c-reporting-the-number-of-overlapping-features"> -<h2>5.1.6 (-c) Reporting the number of overlapping features<a class="headerlink" href="#c-reporting-the-number-of-overlapping-features" title="Permalink to this headline">¶</a></h2> -<p>The -c option reports a column after each “A” feature indicating the <em>number</em> (0 or more) of overlapping -features found in “B”. Therefore, <em>each feature in A is reported once</em>.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 -chr1 18 25 - -bedtools intersect -a A.bed -b B.bed -u -chr1 10 20 2 -chr1 30 40 0</pre> -</div> -</div> -<div class="section" id="v-reporting-the-absence-of-any-overlapping-features"> -<h2>5.1.7 (-v) Reporting the absence of any overlapping features<a class="headerlink" href="#v-reporting-the-absence-of-any-overlapping-features" title="Permalink to this headline">¶</a></h2> -<p>There will likely be cases where you’d like to know which “A” features do not overlap with any of the -“B” features. Perhaps you’d like to know which SNPs don’t overlap with any gene annotations. The -v -(an homage to “grep -v”) option will only report those “A” features that have no overlaps in “B”.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10 20 -chr1 30 40 - -cat B.bed -chr1 15 20 - -bedtools intersect -a A.bed -b B.bed -v -chr1 30 40</pre> -</div> -<p>(<a class="reference external" href="../content/intersectBed-3.py">Source code</a>, <a class="reference external" href="../content/intersectBed-3.png">png</a>, <a class="reference external" href="../content/intersectBed-3.hires.png">hires.png</a>, <a class="reference external" href="../content/intersectBed-3.pdf">pdf</a>)</p> -<div class="figure"> -<img alt="../_images/intersectBed-3.png" src="../_images/intersectBed-3.png" /> -</div> -</div> -<div class="section" id="f-requiring-a-minimal-overlap-fraction"> -<h2>5.1.8 (-f) Requiring a minimal overlap fraction<a class="headerlink" href="#f-requiring-a-minimal-overlap-fraction" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>bedtools intersect</strong> will report an overlap between A and B so long as there is at least one base -pair is overlapping. Yet sometimes you may want to restrict reported overlaps between A and B to cases -where the feature in B overlaps at least X% (e.g. 50%) of the A feature. The -f option does exactly -this.</p> -<p>For example (note that the second B entry is not reported):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 180 220 - -bedtools intersect -a A.bed -b B.bed -f 0.50 -wa -wb -chr1 100 200 chr1 130 201</pre> -</div> -</div> -<div class="section" id="r-combined-with-f-requiring-reciprocal-minimal-overlap-fraction"> -<h2>5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction<a class="headerlink" href="#r-combined-with-f-requiring-reciprocal-minimal-overlap-fraction" title="Permalink to this headline">¶</a></h2> -<p>Similarly, you may want to require that a minimal fraction of both the A and the B features is -overlapped. For example, if feature A is 1kb and feature B is 1Mb, you might not want to report the -overlap as feature A can overlap at most 1% of feature B. If one set -f to say, 0.02, and one also -enable the -r (reciprocal overlap fraction required), this overlap would not be reported.</p> -<p>For example (note that the second B entry is not reported):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 130 200000 - -bedtools intersect -a A.bed -b B.bed -f 0.50 -r -wa -wb -chr1 100 200 chr1 130 201</pre> -</div> -</div> -<div class="section" id="s-enforcing-strandedness"> -<h2>5.1.10 (-s)Enforcing “strandedness”<a class="headerlink" href="#s-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>bedtools intersect</strong> will report overlaps between features even if the features are on opposite -strands. However, if strand information is present in both BED files and the “-s” option is used, overlaps -will only be reported when features are on the same strand.</p> -<p>For example (note that the second B entry is not reported):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 a1 100 + - -cat B.bed -chr1 130 201 b1 100 - -chr1 130 201 b2 100 + - -bedtools intersect -a A.bed -b B.bed -wa -wb -s -chr1 100 200 a1 100 + chr1 130 201 b2 100 +</pre> -</div> -</div> -<div class="section" id="abam-default-behavior-when-using-bam-input"> -<h2>5.1.11 (-abam)Default behavior when using BAM input<a class="headerlink" href="#abam-default-behavior-when-using-bam-input" title="Permalink to this headline">¶</a></h2> -<p>When comparing alignments in BAM format (<strong>-abam</strong>) to features in BED format (<strong>-b</strong>), <strong>bedtools intersect</strong> -will, <strong>by default</strong>, write the output in BAM format. That is, each alignment in the BAM file that meets -the user’s criteria will be written (to standard output) in BAM format. This serves as a mechanism to -create subsets of BAM alignments are of biological interest, etc. Note that only the mate in the BAM -alignment is compared to the BED file. Thus, if only one end of a paired-end sequence overlaps with a -feature in B, then that end will be written to the BAM output. By contrast, the other mate for the -pair will not be written. One should use <strong>pairToBed(Section 5.2)</strong> if one wants each BAM alignment -for a pair to be written to BAM output.</p> -<p>For example:</p> -<div class="highlight-python"><pre>bedtools intersect -abam reads.unsorted.bam -b simreps.bed | samtools view - | head -3 - -BERTHA_0001:3:1:15:1362#0 99 chr4 9236904 0 50M = 9242033 5 1 7 9 -AGACGTTAACTTTACACACCTCTGCCAAGGTCCTCATCCTTGTATTGAAG W c T U ] b \ g c e g X g f c b f c c b d d g g V Y P W W _ -\c`dcdabdfW^a^gggfgd XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:19 X1:i:2 XM:i:0 XO:i:0 XG:i:0 MD:Z:50 -BERTHA _0001:3:1:16:994#0 83 chr6 114221672 37 25S6M1I11M7S = -114216196 -5493 G A A A G G C C A G A G T A T A G A A T A A A C A C A A C A A T G T C C A A G G T A C A C T G T T A -gffeaaddddggggggedgcgeggdegggggffcgggggggegdfggfgf XT:A:M NM:i:3 SM:i:37 AM:i:37 XM:i:2 X O : i : -1 XG:i:1 MD:Z:6A6T3 -BERTHA _0001:3:1:16:594#0 147 chr8 43835330 0 50M = -43830893 -4487 CTTTGGGAGGGCTTTGTAGCCTATCTGGAAAAAGGAAATATCTTCCCATG U -\e^bgeTdg_Kgcg`ggeggg_gggggggggddgdggVg\gWdfgfgff XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:10 X1:i:7 X M : i : -2 XO:i:0 XG:i:0 MD:Z:1A2T45</pre> -</div> -</div> -<div class="section" id="bed-output-bed-format-when-using-bam-input"> -<h2>5.1.12 (-bed)Output BED format when using BAM input<a class="headerlink" href="#bed-output-bed-format-when-using-bam-input" title="Permalink to this headline">¶</a></h2> -<p>When comparing alignments in BAM format (<strong>-abam</strong>) to features in BED format (<strong>-b</strong>), <strong>bedtools intersect</strong> -will <strong>optionally</strong> write the output in BED format. That is, each alignment in the BAM file is converted -to a 6 column BED feature and if overlaps are found (or not) based on the user’s criteria, the BAM -alignment will be reported in BED format. The BED “name” field is comprised of the RNAME field in -the BAM alignment. If mate information is available, the mate (e.g., “/1” or “/2”) field will be -appended to the name. The “score” field is the mapping quality score from the BAM alignment.</p> -<p>For example:</p> -<div class="highlight-python"><pre>bedtools intersect -abam reads.unsorted.bam -b simreps.bed -bed | head -20 - -chr4 9236903 9236953 BERTHA_0001:3:1:15:1362#0/1 0 + -chr6 114221671 114221721 BERTHA_0001:3:1:16:994#0/1 37 - -chr8 43835329 43835379 BERTHA_0001:3:1:16:594#0/2 0 - -chr4 49110668 49110718 BERTHA_0001:3:1:31:487#0/1 23 + -chr19 27732052 27732102 BERTHA_0001:3:1:32:890#0/2 46 + -chr19 27732012 27732062 BERTHA_0001:3:1:45:1135#0/1 37 + -chr10 117494252 117494302 BERTHA_0001:3:1:68:627#0/1 37 - -chr19 27731966 27732016 BERTHA_0001:3:1:83:931#0/2 9 + -chr8 48660075 48660125 BERTHA_0001:3:1:86:608#0/2 37 - -chr9 34986400 34986450 BERTHA_0001:3:1:113:183#0/2 37 - -chr10 42372771 42372821 BERTHA_0001:3:1:128:1932#0/1 3 - -chr19 27731954 27732004 BERTHA_0001:3:1:130:1402#0/2 0 + -chr10 42357337 42357387 BERTHA_0001:3:1:137:868#0/2 9 + -chr1 159720631 159720681 BERTHA_0001:3:1:147:380#0/2 37 - -chrX 58230155 58230205 BERTHA_0001:3:1:151:656#0/2 37 - -chr5 142612746 142612796 BERTHA_0001:3:1:152:1893#0/1 37 - -chr9 71795659 71795709 BERTHA_0001:3:1:177:387#0/1 37 + -chr1 106240854 106240904 BERTHA_0001:3:1:194:928#0/1 37 - -chr4 74128456 74128506 BERTHA_0001:3:1:221:724#0/1 37 - -chr8 42606164 42606214 BERTHA_0001:3:1:244:962#0/1 37 +</pre> -</div> -</div> -<div class="section" id="split-reporting-overlaps-with-spliced-alignments-or-blocked-bed-features"> -<h2>5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features<a class="headerlink" href="#split-reporting-overlaps-with-spliced-alignments-or-blocked-bed-features" title="Permalink to this headline">¶</a></h2> -<p>As described in section 1.3.19, bedtools intersect will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only screen for overlaps for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The <strong>-split</strong> command allows for such overlaps to be -performed.</p> -<p>For example, the diagram below illustrates the <em>default</em> behavior. The blue dots represent the “split/ -spliced” portion of the alignment (i.e., CIGAR “N” operation). In this case, the two exon annotations -are reported as overlapping with the “split” BAM alignment, but in addition, a third feature that -overlaps the “split” portion of the alignment is also reported.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons --------------- ---------- - -BED/BAM A ************.......................................**** - -BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - -Result =============== ======== ==========</pre> -</div> -<p>In contrast, when using the <strong>-split</strong> option, only the exon overlaps are reported.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons --------------- ---------- - -BED/BAM A ************.......................................**** - -BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - -Result =============== ==========</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.1 intersect</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.1.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.1.2 Default behavior</a></li> -<li><a class="reference internal" href="#wa-reporting-the-original-a-feature">5.1.3 (-wa) Reporting the original A feature</a></li> -<li><a class="reference internal" href="#wb-reporting-the-original-b-feature">5.1.4 (-wb) Reporting the original B feature</a></li> -<li><a class="reference internal" href="#u-reporting-the-presence-of-at-least-one-overlapping-feature">5.1.5 (-u) Reporting the presence of <em>at least one</em> overlapping feature</a></li> -<li><a class="reference internal" href="#c-reporting-the-number-of-overlapping-features">5.1.6 (-c) Reporting the number of overlapping features</a></li> -<li><a class="reference internal" href="#v-reporting-the-absence-of-any-overlapping-features">5.1.7 (-v) Reporting the absence of any overlapping features</a></li> -<li><a class="reference internal" href="#f-requiring-a-minimal-overlap-fraction">5.1.8 (-f) Requiring a minimal overlap fraction</a></li> -<li><a class="reference internal" href="#r-combined-with-f-requiring-reciprocal-minimal-overlap-fraction">5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction</a></li> -<li><a class="reference internal" href="#s-enforcing-strandedness">5.1.10 (-s)Enforcing “strandedness”</a></li> -<li><a class="reference internal" href="#abam-default-behavior-when-using-bam-input">5.1.11 (-abam)Default behavior when using BAM input</a></li> -<li><a class="reference internal" href="#bed-output-bed-format-when-using-bam-input">5.1.12 (-bed)Output BED format when using BAM input</a></li> -<li><a class="reference internal" href="#split-reporting-overlaps-with-spliced-alignments-or-blocked-bed-features">5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="bedtools-suite.html" - title="previous chapter">The BEDTools suite</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="pairToBed.html" - title="next chapter">5.2 pairToBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/intersectBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="pairToBed.html" title="5.2 pairToBed" - >next</a> |</li> - <li class="right" > - <a href="bedtools-suite.html" title="The BEDTools suite" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/linksBed.html b/docs/_build/html/content/linksBed.html deleted file mode 100644 index 5df5bc53..00000000 --- a/docs/_build/html/content/linksBed.html +++ /dev/null @@ -1,200 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.16 linksBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.17 complementBed" href="complementBed.html" /> - <link rel="prev" title="5.15 sortBed" href="sortBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="complementBed.html" title="5.17 complementBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="sortBed.html" title="5.15 sortBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="linksbed"> -<h1>5.16 linksBed<a class="headerlink" href="#linksbed" title="Permalink to this headline">¶</a></h1> -<p>Creates an HTML file with links to an instance of the UCSC Genome Browser for all features / -intervals in a file. This is useful for cases when one wants to manually inspect through a large set of -annotations or features.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.16.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>linksBed [OPTIONS] -i <BED/GFF/VCF> > <HTML file></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-base</strong></td> -<td>The “basename” for the UCSC browser. <em>Default: http://genome.ucsc.edu</em></td> -</tr> -<tr class="row-odd"><td><strong>-org</strong></td> -<td>The organism (e.g. mouse, human). <em>Default: human</em></td> -</tr> -<tr class="row-even"><td><strong>-db</strong></td> -<td>The genome build. <em>Default: hg18</em></td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.16.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>linksBed</strong> creates links to the public UCSC Genome Browser.</p> -<p>For example:</p> -<div class="highlight-python"><pre>head genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - -chr21 9928613 10012791 uc002yir.1 0 - -chr21 9928613 10012791 uc010gkv.1 0 - -chr21 9928613 10061300 uc002yis.1 0 - -chr21 10042683 10120796 uc002yit.1 0 - -chr21 10042683 10120808 uc002yiu.1 0 - -chr21 10079666 10120808 uc002yiv.1 0 - -chr21 10080031 10081687 uc002yiw.1 0 - -chr21 10081660 10120796 uc002yix.2 0 - - -linksBed -i genes.bed > genes.html</pre> -</div> -<p>When genes.html is opened in a web browser, one should see something like the following, where each -link on the page is built from the features in genes.bed:</p> -</div> -<div class="section" id="creating-html-links-to-a-local-ucsc-browser-installation"> -<h2>5.16.3 Creating HTML links to a local UCSC Browser installation<a class="headerlink" href="#creating-html-links-to-a-local-ucsc-browser-installation" title="Permalink to this headline">¶</a></h2> -<p>Optionally, <strong>linksBed</strong> will create links to a local copy of the UCSC Genome Browser.</p> -<p>For example:</p> -<div class="highlight-python"><pre>head -3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - - -linksBed -i genes.bed -base http://mirror.uni.edu > genes.html</pre> -</div> -<p>One can point the links to the appropriate organism and genome build as well:</p> -<div class="highlight-python"><pre>head -3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - - -linksBed -i genes.bed -base http://mirror.uni.edu -org mouse -db mm9 > genes.html</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.16 linksBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.16.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.16.2 Default behavior</a></li> -<li><a class="reference internal" href="#creating-html-links-to-a-local-ucsc-browser-installation">5.16.3 Creating HTML links to a local UCSC Browser installation</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="sortBed.html" - title="previous chapter">5.15 sortBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="complementBed.html" - title="next chapter">5.17 complementBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/linksBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="complementBed.html" title="5.17 complementBed" - >next</a> |</li> - <li class="right" > - <a href="sortBed.html" title="5.15 sortBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/maskfastafromBed.html b/docs/_build/html/content/maskfastafromBed.html deleted file mode 100644 index 1652f480..00000000 --- a/docs/_build/html/content/maskfastafromBed.html +++ /dev/null @@ -1,194 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.12 maskFastaFromBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.13 shuffleBed" href="shuffleBed.html" /> - <link rel="prev" title="5.11 fastaFromBed" href="fastafromBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="shuffleBed.html" title="5.13 shuffleBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="fastafromBed.html" title="5.11 fastaFromBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="maskfastafrombed"> -<h1>5.12 maskFastaFromBed<a class="headerlink" href="#maskfastafrombed" title="Permalink to this headline">¶</a></h1> -<p><strong>maskFastaFromBed</strong> masks sequences in a FASTA file based on intervals defined in a feature file. The -headers in the input FASTA file must exactly match the chromosome column in the feature file. This -may be useful fro creating your own masked genome file based on custom annotations or for masking all -but your target regions when aligning sequence data from a targeted capture experiment.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.12.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>maskFastaFromBed [OPTIONS] -fi <input FASTA> -bed <BED/GFF/VCF> -fo <output FASTA></pre> -</div> -<p>NOTE: The input and output FASTA files must be different.</p> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-soft</strong></td> -<td>Soft-mask (that is, convert to lower-case bases) the FASTA sequence. <em>By default, hard-masking (that is, conversion to Ns) is performed</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.12.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p><strong>maskFastaFromBed</strong> will mask a FASTA file based on the intervals in a BED file. The newly masked -FASTA file is written to the output FASTA file.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - -cat test.fa.out ->chr1 -AAAAANNNNNCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG</pre> -</div> -</div> -<div class="section" id="soft-masking-the-fasta-file"> -<h2>5.12.3 Soft-masking the FASTA file.<a class="headerlink" href="#soft-masking-the-fasta-file" title="Permalink to this headline">¶</a></h2> -<p>Using the <strong>-soft</strong> option, one can optionally “soft-mask” the FASTA file.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -soft - -cat test.fa.out ->chr1 -AAAAAaaaccCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.12 maskFastaFromBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.12.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.12.2 Default behavior</a></li> -<li><a class="reference internal" href="#soft-masking-the-fasta-file">5.12.3 Soft-masking the FASTA file.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="fastafromBed.html" - title="previous chapter">5.11 fastaFromBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="shuffleBed.html" - title="next chapter">5.13 shuffleBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/maskfastafromBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="shuffleBed.html" title="5.13 shuffleBed" - >next</a> |</li> - <li class="right" > - <a href="fastafromBed.html" title="5.11 fastaFromBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/mergeBed.html b/docs/_build/html/content/mergeBed.html deleted file mode 100644 index 92650249..00000000 --- a/docs/_build/html/content/mergeBed.html +++ /dev/null @@ -1,244 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.8 mergeBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.9 coverageBed" href="coverageBed.html" /> - <link rel="prev" title="5.7 subtractBed" href="subtractBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="coverageBed.html" title="5.9 coverageBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="subtractBed.html" title="5.7 subtractBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="mergebed"> -<h1>5.8 mergeBed<a class="headerlink" href="#mergebed" title="Permalink to this headline">¶</a></h1> -<p><strong>mergeBed</strong> combines overlapping or “book-ended” (that is, one base pair away) features in a feature file -into a single feature which spans all of the combined features.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.8.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>mergeBed [OPTIONS] -i <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-s</strong></td> -<td>Force strandedness. That is, only merge features that are the same strand. <em>By default, this is disabled</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-n</strong></td> -<td>Report the number of BED entries that were merged. <em>1 is reported if no merging occurred</em>.</td> -</tr> -<tr class="row-even"><td><strong>-d</strong></td> -<td>Maximum distance between features allowed for features to be merged. <em>Default is 0. That is, overlapping and/or book-ended features are merged</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-nms</strong></td> -<td>Report the names of the merged features separated by semicolons.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.8.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE ************* *************** ********************** - ******** - -Result =============================== ======================</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed -i A.bed -chr1 100 500 -chr1 501 1000</pre> -</div> -</div> -<div class="section" id="s-enforcing-strandedness"> -<h2>5.8.3 (-s)Enforcing “strandedness”<a class="headerlink" href="#s-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as the -s option for intersectBed while scanning for features that should -be merged. Only features on the same strand will be merged. See the discussion in the intersectBed -section for details.</p> -</div> -<div class="section" id="n-reporting-the-number-of-features-that-were-merged"> -<h2>5.8.4 (-n)Reporting the number of features that were merged<a class="headerlink" href="#n-reporting-the-number-of-features-that-were-merged" title="Permalink to this headline">¶</a></h2> -<p>The -n option will report the number of features that were combined from the original file in order to -make the newly merged feature. If a feature in the original file was not merged with any other features, -a “1” is reported.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed -i A.bed -n -chr1 100 500 3 -chr1 501 1000 1</pre> -</div> -</div> -<div class="section" id="d-controlling-how-close-two-features-must-be-in-order-to-merge"> -<h2>5.8.5 (-d)Controlling how close two features must be in order to merge<a class="headerlink" href="#d-controlling-how-close-two-features-must-be-in-order-to-merge" title="Permalink to this headline">¶</a></h2> -<p>By default, only overlapping or book-ended features are combined into a new feature. However, one can -force mergeBed to combine more distant features with the -d option. For example, were one to set -d to -1000, any features that overlap or are within 1000 base pairs of one another will be combined.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed -i A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed -i A.bed -d 1000 -chr1 100 200 1000</pre> -</div> -</div> -<div class="section" id="nms-reporting-the-names-of-the-features-that-were-merged"> -<h2>5.8.6 (-nms)Reporting the names of the features that were merged<a class="headerlink" href="#nms-reporting-the-names-of-the-features-that-were-merged" title="Permalink to this headline">¶</a></h2> -<p>Occasionally, one might like to know that names of the features that were merged into a new feature. -The -nms option will add an extra column to the mergeBed output which lists (separated by -semicolons) the names of the merged features.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 A1 -chr1 150 300 A2 -chr1 250 500 A3 - -mergeBed -i A.bed -nms -chr1 100 500 A1;A2;A3</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.8 mergeBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.8.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.8.2 Default behavior</a></li> -<li><a class="reference internal" href="#s-enforcing-strandedness">5.8.3 (-s)Enforcing “strandedness”</a></li> -<li><a class="reference internal" href="#n-reporting-the-number-of-features-that-were-merged">5.8.4 (-n)Reporting the number of features that were merged</a></li> -<li><a class="reference internal" href="#d-controlling-how-close-two-features-must-be-in-order-to-merge">5.8.5 (-d)Controlling how close two features must be in order to merge</a></li> -<li><a class="reference internal" href="#nms-reporting-the-names-of-the-features-that-were-merged">5.8.6 (-nms)Reporting the names of the features that were merged</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="subtractBed.html" - title="previous chapter">5.7 subtractBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="coverageBed.html" - title="next chapter">5.9 coverageBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/mergeBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="coverageBed.html" title="5.9 coverageBed" - >next</a> |</li> - <li class="right" > - <a href="subtractBed.html" title="5.7 subtractBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/overlap.html b/docs/_build/html/content/overlap.html deleted file mode 100644 index 81a657a9..00000000 --- a/docs/_build/html/content/overlap.html +++ /dev/null @@ -1,173 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.19 overlap</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.20 bedToIgv" href="bedToIgv.html" /> - <link rel="prev" title="5.18 bedToBam" href="bedToBam.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="bedToIgv.html" title="5.20 bedToIgv" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="bedToBam.html" title="5.18 bedToBam" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="overlap"> -<h1>5.19 overlap<a class="headerlink" href="#overlap" title="Permalink to this headline">¶</a></h1> -<p><strong>overlap</strong> computes the amount of overlap (in the case of positive values) or distance (in the case of -negative values) between feature coordinates occurring on the same input line and reports the result at -the end of the same line. In this way, it is a useful method for computing custom overlap scores from -the output of other BEDTools.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.19.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>overlap [OPTIONS] -i <input> -cols s1,e1,s2,e2</pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="11%" /> -<col width="89%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-i</strong></td> -<td>Input file. Use “stdin” for pipes.</td> -</tr> -<tr class="row-odd"><td><strong>-cols</strong></td> -<td>Specify the columns (1-based) for the starts and ends of the features for which you’d like to compute the overlap/distance. The columns must be listed in the following order: <em>start1,end1,start2,end2</em></td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.19.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>The default behavior is to compute the amount of overlap between the features you specify based on the -start and end coordinates. For example:</p> -<div class="highlight-python"><pre>windowBed -a A.bed -b B.bed -w 10 -chr1 10 20 A chr1 15 25 B -chr1 10 20 C chr1 25 35 D</pre> -</div> -<p># Now let’s say we want to compute the number of base pairs of overlap -# between the overlapping features from the output of windowBed.</p> -<div class="highlight-python"><pre>windowBed -a A.bed -b B.bed -w 10 | overlap -i stdin -cols 2,3,6,7 -chr1 10 20 A chr1 15 25 B 5 -chr1 10 20 C chr1 25 35 D -5</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.19 overlap</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.19.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.19.2 Default behavior</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="bedToBam.html" - title="previous chapter">5.18 bedToBam</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="bedToIgv.html" - title="next chapter">5.20 bedToIgv</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/overlap.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="bedToIgv.html" title="5.20 bedToIgv" - >next</a> |</li> - <li class="right" > - <a href="bedToBam.html" title="5.18 bedToBam" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/overview.html b/docs/_build/html/content/overview.html deleted file mode 100644 index 74c2b9d7..00000000 --- a/docs/_build/html/content/overview.html +++ /dev/null @@ -1,506 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Overview</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="Installation" href="installation.html" /> - <link rel="prev" title="bedtools: a powerful toolset for genome arithmetic" href="../index.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="installation.html" title="Installation" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="../index.html" title="bedtools: a powerful toolset for genome arithmetic" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="overview"> -<h1>Overview<a class="headerlink" href="#overview" title="Permalink to this headline">¶</a></h1> -<div class="section" id="background"> -<h2>1.1 Background<a class="headerlink" href="#background" title="Permalink to this headline">¶</a></h2> -<p>The development of BEDTools was motivated by a need for fast, flexible tools with which to compare large sets of genomic -features. Answering fundamental research questions with existing tools was either too slow or required modifications to the -way they reported or computed their results. We were aware of the utilities on the UCSC Genome Browser and Galaxy websites, as -well as the elegant tools available as part of Jim Kent’s monolithic suite of tools (“Kent sourceâ€). However, we found that -the web-based tools were too cumbersome when working with large datasets generated by current sequencing technologies. -Similarly, we found that the Kent source command line tools often required a local installation of the UCSC Genome Browser. -These limitations, combined with the fact that we often wanted an extra option here or there that wasn’t available with -existing tools, led us to develop our own from scratch. The initial version of BEDTools was publicly released in the spring of -2009. The current version has evolved from our research experiences and those of the scientists using the suite over the last -year. The BEDTools suite enables one to answer common questions of genomic data in a fast and reliable manner. The fact that -almost all the utilities accept input from “stdin†allows one to “stream / pipe†several commands together to facilitate more -complicated analyses. Also, the tools allow fine control over how output is reported. The initial version of BEDTools -supported solely 6-column <a class="reference external" href="http://genome.ucsc.edu/FAQ/FAQformat#format1">BED</a> files. <em>However, we have subsequently added support for sequence alignments in</em> <a class="reference external" href="http://samtools.sourceforge.net/">BAM</a> -<em>format, as well as for features in</em> <a class="reference external" href="http://genome.ucsc.edu/FAQ/FAQformat#format3">GFF</a> , <em>“blocked†BED format, and</em> -<a class="reference external" href="http://www.1000genomes.org/wiki/Analysis/Variant%20Call%20Format/vcf-variant-call-format-version-41">VCF</a> <em>format</em>. -The tools are quite fast and typically finish in a matter of a few seconds, even for large datasets. This manual seeks to describe the behavior and -available functionality for each BEDTool. Usage examples are scattered throughout the text, and formal examples are -provided in the last two sections, we hope that this document will give you a sense of the flexibility of -the toolkit and the types of analyses that are possible with BEDTools. If you have further questions, please join the BEDTools -discussion group, visit the Usage Examples on the Google Code site (usage, advanced usage), or take a look at the nascent -“Usage From the Wild†page.</p> -</div> -<div class="section" id="summary-of-available-tools"> -<h2>1.2 Summary of available tools.<a class="headerlink" href="#summary-of-available-tools" title="Permalink to this headline">¶</a></h2> -<p>BEDTools support a wide range of operations for interrogating and manipulating genomic features. The table below summarizes -the tools available in the suite.</p> -<table border="1" class="docutils"> -<colgroup> -<col width="14%" /> -<col width="86%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Utility</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>intersectBed</strong></td> -<td>Returns overlaps between two BED/GFF/VCF files.</td> -</tr> -<tr class="row-odd"><td><strong>pairToBed</strong></td> -<td>Returns overlaps between a paired-end BED file and a regular BED/VCF/GFF file.</td> -</tr> -<tr class="row-even"><td><strong>bamToBed</strong></td> -<td>Converts BAM alignments to BED6, BED12, or BEDPE format.</td> -</tr> -<tr class="row-odd"><td><strong>bedToBam</strong></td> -<td>Converts BED/GFF/VCF features to BAM format.</td> -</tr> -<tr class="row-even"><td><strong>bed12ToBed6</strong></td> -<td>Converts “blocked” BED12 features to discrete BED6 features.</td> -</tr> -<tr class="row-odd"><td><strong>bedToIgv</strong></td> -<td>Creates IGV batch scripts for taking multiple snapshots from BED/GFF/VCF features.</td> -</tr> -<tr class="row-even"><td><strong>coverageBed</strong></td> -<td>Summarizes the depth and breadth of coverage of features in one BED versus features (e.g, windows, exons, etc.) defined in another BED/GFF/VCF file.</td> -</tr> -<tr class="row-odd"><td><strong>multiBamCov</strong></td> -<td>Counts sequence coverage for multiple position-sorted bams at specific loci defined in a BED/GFF/VCF file</td> -</tr> -<tr class="row-even"><td><strong>tagBam</strong></td> -<td>Annotates a BAM file with custom tag fields based on overlaps with BED/GFF/VCF files</td> -</tr> -<tr class="row-odd"><td><strong>nuclBed</strong></td> -<td>Profiles the nucleotide content of intervals in a fasta file</td> -</tr> -<tr class="row-even"><td><strong>genomeCoverageBed</strong></td> -<td>Creates either a histogram, BEDGRAPH, or a “per base” report of genome coverage.</td> -</tr> -<tr class="row-odd"><td><strong>unionBedGraphs</strong></td> -<td>Combines multiple BedGraph? files into a single file, allowing coverage/other comparisons between them.</td> -</tr> -<tr class="row-even"><td><strong>annotateBed</strong></td> -<td>Annotates one BED/VCF/GFF file with overlaps from many others.</td> -</tr> -<tr class="row-odd"><td><strong>groupBy</strong></td> -<td>Deprecated. Now in the filo package.</td> -</tr> -<tr class="row-even"><td><strong>overlap</strong></td> -<td>Returns the number of bases pairs of overlap b/w two features on the same line.</td> -</tr> -<tr class="row-odd"><td><strong>pairToPair</strong></td> -<td>Returns overlaps between two paired-end BED files.</td> -</tr> -<tr class="row-even"><td><strong>closestBed</strong></td> -<td>Returns the closest feature to each entry in a BED/GFF/VCF file.</td> -</tr> -<tr class="row-odd"><td><strong>subtractBed</strong></td> -<td>Removes the portion of an interval that is overlapped by another feature.</td> -</tr> -<tr class="row-even"><td><strong>windowBed</strong></td> -<td>Returns overlaps between two BED/VCF/GFF files based on a user-defined window.</td> -</tr> -<tr class="row-odd"><td><strong>mergeBed</strong></td> -<td>Merges overlapping features into a single feature.</td> -</tr> -<tr class="row-even"><td><strong>complementBed</strong></td> -<td>Returns all intervals not spanned by the features in a BED/GFF/VCF file.</td> -</tr> -<tr class="row-odd"><td><strong>fastaFromBed</strong></td> -<td>Creates FASTA sequences based on intervals in a BED/GFF/VCF file.</td> -</tr> -<tr class="row-even"><td><strong>maskFastaFromBed</strong></td> -<td>Masks a FASTA file based on BED coordinates.</td> -</tr> -<tr class="row-odd"><td><strong>shuffleBed</strong></td> -<td>Randomly permutes the locations of a BED file among a genome.</td> -</tr> -<tr class="row-even"><td><strong>slopBed</strong></td> -<td>Adjusts each BED entry by a requested number of base pairs.</td> -</tr> -<tr class="row-odd"><td><strong>flankBed</strong></td> -<td>Creates flanking intervals for each feature in a BED/GFF/VCF file.</td> -</tr> -<tr class="row-even"><td><strong>sortBed</strong></td> -<td>Sorts a BED file by chrom, then start position. Other ways as well.</td> -</tr> -<tr class="row-odd"><td><strong>linksBed</strong></td> -<td>Creates an HTML file of links to the UCSC or a custom browser.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="fundamental-concepts"> -<h2>1.3 Fundamental concepts.<a class="headerlink" href="#fundamental-concepts" title="Permalink to this headline">¶</a></h2> -<div class="section" id="what-are-genome-features-and-how-are-they-represented"> -<h3>1.3.1 What are genome features and how are they represented?<a class="headerlink" href="#what-are-genome-features-and-how-are-they-represented" title="Permalink to this headline">¶</a></h3> -<p>Throughout this manual, we will discuss how to use BEDTools to manipulate, compare and ask questions of genome “featuresâ€. Genome features can be functional elements (e.g., genes), genetic polymorphisms (e.g. -SNPs, INDELs, or structural variants), or other annotations that have been discovered or curated by genome sequencing groups or genome browser groups. In addition, genome features can be custom annotations that -an individual lab or researcher defines (e.g., my novel gene or variant).</p> -<p>The basic characteristics of a genome feature are the chromosome or scaffold on which the feature “residesâ€, the base pair on which the -feature starts (i.e. the “startâ€), the base pair on which feature ends (i.e. the “endâ€), the strand on which the feature exists (i.e. “+†or “-“), and the name of the feature if one is applicable.</p> -<p>The two most widely used formats for representing genome features are the BED (Browser Extensible Data) and GFF (General Feature Format) formats. BEDTools was originally written to work exclusively with genome features -described using the BED format, but it has been recently extended to seamlessly work with BED, GFF and VCF files.</p> -<p>Existing annotations for the genomes of many species can be easily downloaded in BED and GFF -format from the UCSC Genome Browser’s “Table Browser†(<a class="reference external" href="http://genome.ucsc.edu/cgi-bin/hgTables?command=start">http://genome.ucsc.edu/cgi-bin/hgTables?command=start</a>) or from the “Bulk Downloads†page (<a class="reference external" href="http://hgdownload.cse.ucsc.edu/downloads.html">http://hgdownload.cse.ucsc.edu/downloads.html</a>). In addition, the -Ensemble Genome Browser contains annotations in GFF/GTF format for many species (<a class="reference external" href="http://www.ensembl.org/info/data/ftp/index.html">http://www.ensembl.org/info/data/ftp/index.html</a>)</p> -</div> -<div class="section" id="overlapping-intersecting-features"> -<h3>1.3.2 Overlapping / intersecting features.<a class="headerlink" href="#overlapping-intersecting-features" title="Permalink to this headline">¶</a></h3> -<p>Two genome features (henceforth referred to as “featuresâ€) are said to overlap or intersect if they share at least one base in common. -In the figure below, Feature A intersects/overlaps Feature B, but it does not intersect/overlap Feature C.</p> -<p><strong>TODO: place figure here</strong></p> -</div> -<div class="section" id="comparing-features-in-file-a-and-file-b"> -<h3>1.3.3 Comparing features in file “A†and file “Bâ€.<a class="headerlink" href="#comparing-features-in-file-a-and-file-b" title="Permalink to this headline">¶</a></h3> -<p>The previous section briefly introduced a fundamental naming convention used in BEDTools. Specifically, all BEDTools that compare features contained in two distinct files refer to one file as feature set “A†and the other file as feature set “Bâ€. This is mainly in the interest of brevity, but it also has its roots in set theory. -As an example, if one wanted to look for SNPs (file A) that overlap with exons (file B), one would use intersectBed in the following manner:</p> -<div class="highlight-python"><pre>intersectBed –a snps.bed –b exons.bed</pre> -</div> -<p>There are two exceptions to this rule: 1) When the “A†file is in BAM format, the “-abam†option must bed used. For example:</p> -<div class="highlight-python"><pre>intersectBed –abam alignedReads.bam –b exons.bed</pre> -</div> -<p>And 2) For tools where only one input feature file is needed, the “-i†option is used. For example:</p> -<div class="highlight-python"><pre>mergeBed –i repeats.bed</pre> -</div> -</div> -<div class="section" id="bed-starts-are-zero-based-and-bed-ends-are-one-based"> -<h3>1.3.4 BED starts are zero-based and BED ends are one-based.<a class="headerlink" href="#bed-starts-are-zero-based-and-bed-ends-are-one-based" title="Permalink to this headline">¶</a></h3> -<p>BEDTools users are sometimes confused by the way the start and end of BED features are represented. Specifically, BEDTools uses the UCSC Genome Browser’s internal database convention of making the start position 0-based and the end position 1-based: (<a class="reference external" href="http://genome.ucsc.edu/FAQ/FAQtracks#tracks1">http://genome.ucsc.edu/FAQ/FAQtracks#tracks1</a>) -In other words, BEDTools interprets the “start†column as being 1 basepair higher than what is represented in the file. For example, the following BED feature represents a single base on chromosome 1; namely, the 1st base:</p> -<div class="highlight-python"><pre>chr1 0 1 first_base</pre> -</div> -<p>Why, you might ask? The advantage of storing features this way is that when computing the length of a feature, one must simply subtract the start from the end. Were the start position 1-based, -the calculation would be (slightly) more complex (i.e. (end-start)+1). Thus, storing BED features this way reduces the computational burden.</p> -</div> -<div class="section" id="gff-starts-and-ends-are-one-based"> -<h3>1.3.5 GFF starts and ends are one-based.<a class="headerlink" href="#gff-starts-and-ends-are-one-based" title="Permalink to this headline">¶</a></h3> -<p>In contrast, the GFF format uses 1-based coordinates for both the start and the end positions. BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your GFF features for them to work correctly with BEDTools.</p> -</div> -<div class="section" id="vcf-coordinates-are-one-based"> -<h3>1.3.6 VCF coordinates are one-based.<a class="headerlink" href="#vcf-coordinates-are-one-based" title="Permalink to this headline">¶</a></h3> -<p>The VCF format uses 1-based coordinates. As in GFF, BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your VCF features for them to work correctly with BEDTools.</p> -</div> -<div class="section" id="file-b-is-loaded-into-memory-most-of-the-time"> -<h3>1.3.7 File B is loaded into memory (most of the time).<a class="headerlink" href="#file-b-is-loaded-into-memory-most-of-the-time" title="Permalink to this headline">¶</a></h3> -<p>Whenever a BEDTool compares two files of features, the “B†file is loaded into memory. By contrast, the “A†file is processed line by line and compared with the features from B. -Therefore to minimize memory usage, one should set the smaller of the two files as the B file. One salient example is the comparison of aligned sequence reads from a -current DNA sequencer to gene annotations. In this case, the aligned sequence file (in BED format) may have tens of millions of features (the sequence alignments), -while the gene annotation file will have tens of thousands of features. In this case, it is wise to sets the reads as file A and the genes as file B.</p> -</div> -<div class="section" id="feature-files-must-be-tab-delimited"> -<h3>1.3.8 Feature files <em>must</em> be tab-delimited.<a class="headerlink" href="#feature-files-must-be-tab-delimited" title="Permalink to this headline">¶</a></h3> -<p>This is rather self-explanatory. While it is possible to allow BED files to be space-delimited, we have decided to require tab delimiters for three reasons:</p> -<ol class="arabic simple"> -<li>By requiring one delimiter type, the processing time is minimized.</li> -<li>Tab-delimited files are more amenable to other UNIX utilities.</li> -<li>GFF files can contain spaces within attribute columns. This complicates the use of space-delimited files as spaces must therefore be treated specially depending on the context.</li> -</ol> -</div> -<div class="section" id="all-bedtools-allow-features-to-be-piped-via-standard-input"> -<h3>1.3.9 All BEDTools allow features to be “piped†via standard input.<a class="headerlink" href="#all-bedtools-allow-features-to-be-piped-via-standard-input" title="Permalink to this headline">¶</a></h3> -<p>In an effort to allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, all BEDTools allow features -to be passed to them via standard input. Only one feature file may be passed to a BEDTool via standard input. -The convention used by all BEDTools is to set either file A or file B to “stdin†or “-”. For example:</p> -<div class="highlight-python"><pre>cat snps.bed | intersectBed –a stdin –b exons.bed -cat snps.bed | intersectBed –a - –b exons.bed</pre> -</div> -<p>In addition, all BEDTools that simply require one main input file (the -i file) will assume that input is -coming from standard input if the -i parameter is ignored. For example, the following are equivalent:</p> -<div class="highlight-python"><pre>cat snps.bed | sortBed –i stdin -cat snps.bed | sortBed</pre> -</div> -</div> -<div class="section" id="most-bedtools-write-their-results-to-standard-output"> -<h3>1.3.10 Most BEDTools write their results to standard output.<a class="headerlink" href="#most-bedtools-write-their-results-to-standard-output" title="Permalink to this headline">¶</a></h3> -<p>To allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, -most BEDTools report their output to standard output, rather than to a named file. If one wants to write the output to a named file, one can use the UNIX “file redirection†symbol “>†to do so. -Writing to standard output (the default):</p> -<div class="highlight-python"><pre>intersectBed –a snps.bed –b exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678</pre> -</div> -<p>Writing to a file:</p> -<div class="highlight-python"><pre>intersectBed –a snps.bed –b exons.bed > snps.in.exons.bed - -cat snps.in.exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678</pre> -</div> -</div> -<div class="section" id="what-is-a-genome-file"> -<h3>1.3.11 What is a “genome†file?<a class="headerlink" href="#what-is-a-genome-file" title="Permalink to this headline">¶</a></h3> -<p>Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which species / genome build you are working. -The way you do this for BEDTools is to create a “genome†file, which simply lists the names of the -chromosomes (or scaffolds, etc.) and their size (in basepairs). -Genome files must be tab-delimited and are structured as follows (this is an example for C. elegans):</p> -<div class="highlight-python"><pre>chrI 15072421 -chrII 15279323 -... -chrX 17718854 -chrM 13794</pre> -</div> -<p>BEDTools includes predefined genome files for human and mouse in the /genomes directory included -in the BEDTools distribution. Additionally, the “chromInfo†files/tables available from the UCSC -Genome Browser website are acceptable. For example, one can download the hg19 chromInfo file here: -<a class="reference external" href="http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz">http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz</a></p> -</div> -<div class="section" id="paired-end-bed-files-bedpe-files"> -<h3>1.3.12 Paired-end BED files (BEDPE files).<a class="headerlink" href="#paired-end-bed-files-bedpe-files" title="Permalink to this headline">¶</a></h3> -<p>We have defined a new file format (BEDPE) to concisely describe disjoint genome features, such as -structural variations or paired-end sequence alignments. We chose to define a new format because the -existing BED block format (i.e. BED12) does not allow inter-chromosomal feature definitions. Moreover, -the BED12 format feels rather bloated when one want to describe events with only two blocks.</p> -</div> -<div class="section" id="use-h-for-help-with-any-bedtool"> -<h3>1.3.13 Use “-h†for help with any BEDTool.<a class="headerlink" href="#use-h-for-help-with-any-bedtool" title="Permalink to this headline">¶</a></h3> -<p>Rather straightforward. If you use the “-h†option with any BEDTool, a full menu of example usage -and available options (when applicable) will be reported.</p> -</div> -<div class="section" id="bed-features-must-not-contain-negative-positions"> -<h3>1.3.14 BED features must not contain negative positions.<a class="headerlink" href="#bed-features-must-not-contain-negative-positions" title="Permalink to this headline">¶</a></h3> -<p>BEDTools will typically reject BED features that contain negative positions. In special cases, however, -BEDPE positions may be set to -1 to indicate that one or more ends of a BEDPE feature is unaligned.</p> -</div> -<div class="section" id="the-start-position-must-be-to-the-end-position"> -<h3>1.3.15 The start position must be <= to the end position.<a class="headerlink" href="#the-start-position-must-be-to-the-end-position" title="Permalink to this headline">¶</a></h3> -<p>BEDTools will reject BED features where the start position is greater than the end position.</p> -</div> -<div class="section" id="headers-are-allowed-in-gff-and-bed-files"> -<h3>1.3.16 Headers are allowed in GFF and BED files<a class="headerlink" href="#headers-are-allowed-in-gff-and-bed-files" title="Permalink to this headline">¶</a></h3> -<p>BEDTools will ignore headers at the beginning of BED and GFF files. Valid header lines begin with a -“#†symbol, the work “trackâ€, or the word “browserâ€. For example, the following examples are valid -headers for BED or GFF files:</p> -<div class="highlight-python"><pre>track name=aligned_read description="Illumina aligned reads†-chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 - - -#This is a fascinating dataset -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 - - -browser position chr22:1-20000 -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 -</pre> -</div> -</div> -<div class="section" id="gzip-support-bed-gff-vcf-and-bedpe-file-can-be-gzipped"> -<h3>1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzippedâ€<a class="headerlink" href="#gzip-support-bed-gff-vcf-and-bedpe-file-can-be-gzipped" title="Permalink to this headline">¶</a></h3> -<p>BEDTools will process gzipped BED, GFF, VCF and BEDPE files in the same manner as -uncompressed files. Gzipped files are auto-detected thanks to a helpful contribution from Gordon -Assaf.</p> -</div> -<div class="section" id="support-for-split-or-spliced-bam-alignments-and-blocked-bed-features"> -<h3>1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features<a class="headerlink" href="#support-for-split-or-spliced-bam-alignments-and-blocked-bed-features" title="Permalink to this headline">¶</a></h3> -<p>As of Version 2.8.0, five BEDTools (<tt class="docutils literal"><span class="pre">intersectBed</span></tt>, <tt class="docutils literal"><span class="pre">coverageBed</span></tt>, <tt class="docutils literal"><span class="pre">genomeCoverageBed</span></tt>, -<tt class="docutils literal"><span class="pre">bamToBed</span></tt>, and <tt class="docutils literal"><span class="pre">bed12ToBed6</span></tt>) can properly handle “splitâ€/â€spliced†BAM alignments (i.e., having an -“N†CIGAR operation) and/or “blocked†BED (aka BED12) features.</p> -<p><tt class="docutils literal"><span class="pre">intersectBed</span></tt>, <tt class="docutils literal"><span class="pre">coverageBed</span></tt>, and <tt class="docutils literal"><span class="pre">genomeCoverageBed</span></tt> will optionally handle “split†BAM and/or -“blocked†BED by using the <tt class="docutils literal"><span class="pre">-split</span></tt> option. This will cause intersects or coverage to be computed only -for the alignment or feature blocks. In contrast, without this option, the intersects/coverage would be -computed for the entire “span†of the alignment or feature, regardless of the size of the gaps between -each alignment or feature block. For example, imagine you have a RNA-seq read that originates from -the junction of two exons that were spliced together in a mRNA. In the genome, these two exons -happen to be 30Kb apart. Thus, when the read is aligned to the reference genome, one portion of the -read will align to the first exon, while another portion of the read will align ca. 30Kb downstream to the -other exon. The corresponding CIGAR string would be something like (assuming a 76bp read): -30M*3000N*46M. In the genome, this alignment “spans†3076 bp, yet the nucleotides in the sequencing -read only align “cover†76bp. Without the <tt class="docutils literal"><span class="pre">-split</span></tt> option, coverage or overlaps would be reported for the -entire 3076bp span of the alignment. However, with the <tt class="docutils literal"><span class="pre">-split</span></tt> option, coverage or overlaps will only -be reported for the portions of the read that overlap the exons (i.e. 30bp on one exon, and -46bp on the other).</p> -<p>Using the -split option with bamToBed causes “spliced/split†alignments to be reported in BED12 -format. Using the -split option with bed12ToBed6 causes “blocked†BED12 features to be reported in -BED6 format.</p> -</div> -<div class="section" id="writing-uncompressed-bam-output"> -<h3>1.3.19 Writing uncompressed BAM output.<a class="headerlink" href="#writing-uncompressed-bam-output" title="Permalink to this headline">¶</a></h3> -<p>When working with a large BAM file using a complex set of tools in a pipe/stream, it is advantageous -to pass uncompressed BAM output to each downstream program. This minimizes the amount of time -spent compressing and decompressing output from one program to the next. All BEDTools that create -BAM output (e.g. <tt class="docutils literal"><span class="pre">intersectBed</span></tt>, <tt class="docutils literal"><span class="pre">windowBed</span></tt>) will now optionally create uncompressed BAM output -using the <tt class="docutils literal"><span class="pre">-ubam</span></tt> option.</p> -</div> -</div> -<div class="section" id="implementation-and-algorithmic-notes"> -<h2>1.4 Implementation and algorithmic notes.<a class="headerlink" href="#implementation-and-algorithmic-notes" title="Permalink to this headline">¶</a></h2> -<p>BEDTools was implemented in C++ and makes extensive use of data structures and fundamental -algorithms from the Standard Template Library (STL). Many of the core algorithms are based upon the -genome binning algorithm described in the original UCSC Genome Browser paper (Kent et al, 2002). -The tools have been designed to inherit core data structures from central source files, thus allowing -rapid tool development and deployment of improvements and corrections. Support for BAM files is -made possible through Derek Barnett’s elegant C++ API called BamTools.</p> -</div> -<div class="section" id="license-and-availability"> -<h2>1.5 License and availability.<a class="headerlink" href="#license-and-availability" title="Permalink to this headline">¶</a></h2> -<p>BEDTools is freely available under a GNU Public License (Version 2) at: -<a class="reference external" href="http://bedtools.googlecode.com">http://bedtools.googlecode.com</a></p> -</div> -<div class="section" id="mailing-list"> -<h2>1.6 Mailing list.<a class="headerlink" href="#mailing-list" title="Permalink to this headline">¶</a></h2> -<p>A discussion group for reporting bugs, asking questions of the developer and of the user community, as -well as for requesting new features is available at: -<a class="reference external" href="http://groups.google.com/group/bedtools-discuss">http://groups.google.com/group/bedtools-discuss</a></p> -</div> -<div class="section" id="contributors"> -<h2>1.7 Contributors.<a class="headerlink" href="#contributors" title="Permalink to this headline">¶</a></h2> -<p>As open-source software, BEDTools greatly benefits from contributions made by other developers and -users of the tools. We encourage and welcome suggestions, contributions and complaints. This is how -software matures, improves and stays on top of the needs of its user community. The Google Code -(GC) site maintains a list of individuals who have contributed either source code or useful ideas for -improving the tools. In the near future, we hope to maintain a source repository on the GC site in -order to facilitate further contributions. We are currently unable to do so because we use Git for -version control, which is not yet supported by GC.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">Overview</a><ul> -<li><a class="reference internal" href="#background">1.1 Background</a></li> -<li><a class="reference internal" href="#summary-of-available-tools">1.2 Summary of available tools.</a></li> -<li><a class="reference internal" href="#fundamental-concepts">1.3 Fundamental concepts.</a><ul> -<li><a class="reference internal" href="#what-are-genome-features-and-how-are-they-represented">1.3.1 What are genome features and how are they represented?</a></li> -<li><a class="reference internal" href="#overlapping-intersecting-features">1.3.2 Overlapping / intersecting features.</a></li> -<li><a class="reference internal" href="#comparing-features-in-file-a-and-file-b">1.3.3 Comparing features in file “A†and file “Bâ€.</a></li> -<li><a class="reference internal" href="#bed-starts-are-zero-based-and-bed-ends-are-one-based">1.3.4 BED starts are zero-based and BED ends are one-based.</a></li> -<li><a class="reference internal" href="#gff-starts-and-ends-are-one-based">1.3.5 GFF starts and ends are one-based.</a></li> -<li><a class="reference internal" href="#vcf-coordinates-are-one-based">1.3.6 VCF coordinates are one-based.</a></li> -<li><a class="reference internal" href="#file-b-is-loaded-into-memory-most-of-the-time">1.3.7 File B is loaded into memory (most of the time).</a></li> -<li><a class="reference internal" href="#feature-files-must-be-tab-delimited">1.3.8 Feature files <em>must</em> be tab-delimited.</a></li> -<li><a class="reference internal" href="#all-bedtools-allow-features-to-be-piped-via-standard-input">1.3.9 All BEDTools allow features to be “piped†via standard input.</a></li> -<li><a class="reference internal" href="#most-bedtools-write-their-results-to-standard-output">1.3.10 Most BEDTools write their results to standard output.</a></li> -<li><a class="reference internal" href="#what-is-a-genome-file">1.3.11 What is a “genome†file?</a></li> -<li><a class="reference internal" href="#paired-end-bed-files-bedpe-files">1.3.12 Paired-end BED files (BEDPE files).</a></li> -<li><a class="reference internal" href="#use-h-for-help-with-any-bedtool">1.3.13 Use “-h†for help with any BEDTool.</a></li> -<li><a class="reference internal" href="#bed-features-must-not-contain-negative-positions">1.3.14 BED features must not contain negative positions.</a></li> -<li><a class="reference internal" href="#the-start-position-must-be-to-the-end-position">1.3.15 The start position must be <= to the end position.</a></li> -<li><a class="reference internal" href="#headers-are-allowed-in-gff-and-bed-files">1.3.16 Headers are allowed in GFF and BED files</a></li> -<li><a class="reference internal" href="#gzip-support-bed-gff-vcf-and-bedpe-file-can-be-gzipped">1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzippedâ€</a></li> -<li><a class="reference internal" href="#support-for-split-or-spliced-bam-alignments-and-blocked-bed-features">1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features</a></li> -<li><a class="reference internal" href="#writing-uncompressed-bam-output">1.3.19 Writing uncompressed BAM output.</a></li> -</ul> -</li> -<li><a class="reference internal" href="#implementation-and-algorithmic-notes">1.4 Implementation and algorithmic notes.</a></li> -<li><a class="reference internal" href="#license-and-availability">1.5 License and availability.</a></li> -<li><a class="reference internal" href="#mailing-list">1.6 Mailing list.</a></li> -<li><a class="reference internal" href="#contributors">1.7 Contributors.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="../index.html" - title="previous chapter"><strong>bedtools</strong>: <em>a powerful toolset for genome arithmetic</em></a></p> - <h4>Next topic</h4> - <p class="topless"><a href="installation.html" - title="next chapter">Installation</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/overview.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="installation.html" title="Installation" - >next</a> |</li> - <li class="right" > - <a href="../index.html" title="bedtools: a powerful toolset for genome arithmetic" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/pairToBed.html b/docs/_build/html/content/pairToBed.html deleted file mode 100644 index 65bbd4ff..00000000 --- a/docs/_build/html/content/pairToBed.html +++ /dev/null @@ -1,495 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.2 pairToBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.3 pairToPair" href="pairToPair.html" /> - <link rel="prev" title="5.1 intersect" href="intersectBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="pairToPair.html" title="5.3 pairToPair" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="intersectBed.html" title="5.1 intersect" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="pairtobed"> -<h1>5.2 pairToBed<a class="headerlink" href="#pairtobed" title="Permalink to this headline">¶</a></h1> -<p><strong>pairToBed</strong> compares each end of a BEDPE feature or a paired-end BAM alignment to a feature file in -search of overlaps.</p> -<p><strong>NOTE: pairToBed requires that the BAM file is sorted/grouped by the read name. This -allows pairToBed to extract correct alignment coordinates for each end based on their -respective CIGAR strings. It also assumes that the alignments for a given pair come in -groups of twos. There is not yet a standard method for reporting multiple alignments -using BAM. pairToBed will fail if an aligner does not report alignments in pairs.</strong></p> -<div class="section" id="usage-and-option-summary"> -<h2>5.2.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage:</strong></p> -<div class="highlight-python"><pre>pairToBed [OPTIONS] [-a <BEDPE> || -abam <BAM>] -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="10%" /> -<col width="90%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-a</strong></td> -<td>BEDPE file A. Each feature in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe. Output will be in BEDPE format.</td> -</tr> -<tr class="row-odd"><td><strong>-b</strong></td> -<td>BED file B. Use “stdin” if passing B with a UNIX pipe.</td> -</tr> -<tr class="row-even"><td><strong>-abam</strong></td> -<td>BAM file A. Each end of each BAM alignment in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe: For example: samtools view ?Cb <BAM> | pairToBed ?Cabam stdin ?Cb genes.bed | samtools view -</td> -</tr> -<tr class="row-odd"><td><strong>-ubam</strong></td> -<td>Write uncompressed BAM output. The default is write compressed BAM output.</td> -</tr> -<tr class="row-even"><td><strong>-bedpe</strong></td> -<td>When using BAM input (-abam), write output as BEDPE. The default is to write output in BAM when using -abam. For example: pairToBed ?Cabam reads.bam ?Cb genes.bed ?Cbedpe</td> -</tr> -<tr class="row-odd"><td><strong>-ed</strong></td> -<td>Use BAM total edit distance (NM tag) for BEDPE score. Default for BEDPE is to use the <em>minimum</em> of the two mapping qualities for the pair. When -ed is used the <em>total</em> edit distance from the two mates is reported as the score.</td> -</tr> -<tr class="row-even"><td><strong>-f</strong></td> -<td>Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp).</td> -</tr> -<tr class="row-odd"><td><strong>-s</strong></td> -<td>Force “strandedness”. That is, only report hits in B that overlap A on the <strong>same</strong> strand. By default, overlaps are reported without respect to strand.</td> -</tr> -<tr class="row-even"><td><strong>-type</strong></td> -<td><p class="first">Approach to reporting overlaps between BEDPE and BED.</p> -<blockquote class="last"> -<div><blockquote> -<div><p><strong>either-</strong> Report overlaps if either end of A overlaps B.</p> -<ul class="simple"> -<li><em>Default</em></li> -</ul> -<p><strong>neither-</strong> Report A if neither end of A overlaps B.</p> -<p><strong>xor-</strong> Report overlaps if one and only one end of A overlaps B.</p> -<p><strong>both-</strong> Report overlaps if both ends of A overlap B.</p> -<p><strong>notboth-</strong> Report overlaps if neither end or one and only one end of A overlap B.</p> -<p><strong>ispan-</strong> Report overlaps between [end1, start2] of A and B.</p> -<ul class="simple"> -<li>Note: If chrom1 <> chrom2, entry is ignored.</li> -</ul> -</div></blockquote> -<p><strong>ospan-</strong> Report overlaps between [start1, end2] of A and B.</p> -<blockquote> -<div><ul class="simple"> -<li>Note: If chrom1 <> chrom2, entry is ignored.</li> -</ul> -<p><strong>notispan-</strong> Report A if ispan of A doesn’t overlap B. -- Note: If chrom1 <> chrom2, entry is ignored.</p> -<p><strong>notospan-</strong> Report A if ospan of A doesn’t overlap B. -- Note: If chrom1 <> chrom2, entry is ignored.</p> -</div></blockquote> -</div></blockquote> -</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.2.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, a BEDPE / BAM feature will be reported if <em>either</em> end overlaps a feature in the BED file. -In the example below, the left end of the pair overlaps B yet the right end does not. Thus, BEDPE/ -BAM A is reported since the default is to report A if either end overlaps B.</p> -<p>Default: Report A if <em>either</em> end overlaps B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................=====</pre> -</div> -</div> -<div class="section" id="type-optional-overlap-requirements"> -<h2>5.2.3 (-type)Optional overlap requirements<a class="headerlink" href="#type-optional-overlap-requirements" title="Permalink to this headline">¶</a></h2> -<p>Using then <strong>-type</strong> option, <strong>pairToBed</strong> provides several other overlap requirements for controlling how -overlaps between BEDPE/BAM A and BED B are reported. The examples below illustrate how each -option behaves.</p> -<p><strong>-type both</strong>: Report A only if <em>both</em> ends overlap B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................=====</pre> -</div> -<p><strong>-type neither</strong>: Report A only if <em>neither</em> end overlaps B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result =====.................................=====</pre> -</div> -<p><strong>-type xor</strong>: Report A only if <em>one and only one</em> end overlaps B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result</pre> -</div> -<p><strong>-type notboth</strong>: Report A only if <em>neither end</em> <strong>or</strong> <em>one and only one</em> end overlaps B. Thus “notboth” -includes what would be reported by “neither” and by “xor”.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result</pre> -</div> -<p><strong>-type ispan</strong>: Report A if it’s “<em>inner span</em>” overlaps B. Applicable only to intra-chromosomal features.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |-------------------------------| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A =====.................................===== - -BED File B ==== - -Result</pre> -</div> -<p><strong>-type ospan</strong>: Report A if it’s “<em>outer span</em>” overlaps B. Applicable only to intra-chromosomal features.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |-----------------------------------------| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result</pre> -</div> -<p><strong>-type notispan</strong>: Report A only if it’s “<em>inner span</em>” does not overlap B. Applicable only to intrachromosomal -features.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |-------------------------------| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result =====.................................=====</pre> -</div> -<p><strong>-type notospan</strong>: Report A if it’s “<em>outer span</em>” overlaps B. Applicable only to intra-chromosomal -features.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |-----------------------------------------| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result =====.................................=====</pre> -</div> -</div> -<div class="section" id="f-requiring-a-minimum-overlap-fraction"> -<h2>5.2.4 (-f)Requiring a minimum overlap fraction<a class="headerlink" href="#f-requiring-a-minimum-overlap-fraction" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>pairToBed</strong> will report an overlap between A and B so long as there is at least one base -pair is overlapping on either end. Yet sometimes you may want to restrict reported overlaps between A -and B to cases where the feature in B overlaps at least X% (e.g. 50%) of A. The <strong>?Cf</strong> option does exactly -this. The <strong>-f</strong> option may also be combined with the -type option for additional control. For example, -combining <strong>-f 0.50</strong> with <strong>-type both</strong> requires that both ends of A have at least 50% overlap with a -feature in B.</p> -<p>For example, report A only at least 50% of one of the two ends is overlapped by B.</p> -<div class="highlight-python"><pre>pairToBed -a A.bedpe -b B.bed -f 0.5 - - -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result =====.................................=====</pre> -</div> -</div> -<div class="section" id="s-enforcing-strandedness"> -<h2>5.2.5 (-s)Enforcing “strandedness”<a class="headerlink" href="#s-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>pairToBed</strong> will report overlaps between features even if the features are on opposing -strands. However, if strand information is present in both files and the <strong>“-s”</strong> option is used, overlaps will -only be reported when features are on the same strand.</p> -<p>For example, report A only at least 50% of one of the two ends is overlapped by B.</p> -<div class="highlight-python"><pre>pairToBed -a A.bedpe -b B.bed -s - - - -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A >>>>>.................................<<<<< - -BED File B << >>>>> - -Result - - - -BEDPE/BAM A >>>>>.................................<<<<< - -BED File B >> >>>>> - -Result >>>>>.................................<<<<<</pre> -</div> -</div> -<div class="section" id="abam-default-is-to-write-bam-output-when-using-bam-input"> -<h2>5.2.6 (-abam)Default is to write BAM output when using BAM input<a class="headerlink" href="#abam-default-is-to-write-bam-output-when-using-bam-input" title="Permalink to this headline">¶</a></h2> -<p>When comparing <em>paired</em> alignments in BAM format (<strong>-abam</strong>) to features in BED format (<strong>-b</strong>), -<strong>pairToBed</strong> will , by default, write the output in BAM format. That is, each alignment in the BAM -file that meets the user’s criteria will be written (to standard output) in BAM format. This serves as a -mechanism to create subsets of BAM alignments are of biological interest, etc. Note that both -alignments for each aligned pair will be written to the BAM output.</p> -<p>For example:</p> -<div class="highlight-python"><pre>pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed | samtools view - | head -4 - -JOBU_0001:3:1:4:1060#0 99 chr10 42387928 29 50M = 42393091 5 2 1 3 -AA A A A C G G A A T T A T C G A A T G G A A T C G A A G A G A A T C T T C G A A C G G A C C C G A -dcgggggfbgfgdgggggggfdfgggcggggfcggcggggggagfgbggc XT:A:R NM:i:5 SM:i:0 AM:i:0 X0:i:3 X 1 : i : -3 XM:i:5 XO:i:0 XG:i:0 MD:Z:0T0C33A5T4T3 -JOBU_0001:3:1:4:1060#0 147 chr10 42393091 0 50M = 42387928 - 5 2 1 3 -AAATGGAATCGAATGGAATCAACATCAAATGGAATCAAATGGAATCATTG K g d c g g d e c d g -\d`ggfcgcggffcgggc^cgfgccgggfc^gcdgg\bg XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:3 X1:i:13 XM:i:2 X O : i : -0 XG:i:0 MD:Z:21T14G13 -JOBU_0001:3:1:8:446#0 99 chr10 42388091 9 50M = 42392738 4 6 9 7 -GAATCGACTGGAATCATCATCGGATGGAAATGAATGGAATAATCATCGAA f _ O f f ` ] I e Y f f ` f f e d d c f e f c P ` c _ W \ \ R _ ] -_BBBBBBBBBBBBBBBB XT:A:U NM:i:4 SM:i:0 AM:i:0 X0:i:1 X1:i:3 XM:i:4 XO:i:0 XG:i:0 M D : Z : -7A22C9C2T6 -JOBU_0001:3:1:8:446#0 147 chr10 42392738 9 50M = 42388091 - 4 6 9 7 -TTATCGAATGCAATCGAATGGAATTATCGAATGCAATCGAATAGAATCAT df^ffec_JW[`MWceRec``fee`dcecfeeZae`c] -f^cNeecfccf^ XT:A:R NM:i:1 SM:i:0 AM:i:0 X0:i:2 X1:i:2 XM:i:1 XO:i:0 XG:i:0 MD:Z:38A11</pre> -</div> -</div> -<div class="section" id="bedpe-output-bedpe-format-when-using-bam-input"> -<h2>5.2.7 (-bedpe)Output BEDPE format when using BAM input<a class="headerlink" href="#bedpe-output-bedpe-format-when-using-bam-input" title="Permalink to this headline">¶</a></h2> -<p>When comparing <em>paired</em> alignments in BAM format (<strong>-abam</strong>) to features in BED format (<strong>-b</strong>), -<strong>pairToBed</strong> will optionally write the output in BEDPE format. That is, each alignment in the BAM -file is converted to a 10 column BEDPE feature and if overlaps are found (or not) based on the user’s -criteria, the BAM alignment will be reported in BEDPE format. The BEDPE “name” field is comprised -of the RNAME field in the BAM alignment. The “score” field is the mapping quality score from the -BAM alignment.</p> -<p>For example:</p> -<div class="highlight-python"><pre>pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed -bedpe | head -5 -chr10 42387927 42387977 chr10 42393090 42393140 - JOBU_0001:3:1:4:1060#0 29 + - -chr10 42388090 42388140 chr10 42392737 42392787 - JOBU_0001:3:1:8:446#0 9 + - -chr10 42390552 42390602 chr10 42396045 42396095 - JOBU_0001:3:1:10:1865#0 9 + - -chrX 139153741 139153791 chrX 139159018 139159068 - JOBU_0001:3:1:14:225#0 37 + - -chr4 9236903 9236953 chr4 9242032 9242082 - JOBU_0001:3:1:15:1362#0 0 + -</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.2 pairToBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.2.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.2.2 Default behavior</a></li> -<li><a class="reference internal" href="#type-optional-overlap-requirements">5.2.3 (-type)Optional overlap requirements</a></li> -<li><a class="reference internal" href="#f-requiring-a-minimum-overlap-fraction">5.2.4 (-f)Requiring a minimum overlap fraction</a></li> -<li><a class="reference internal" href="#s-enforcing-strandedness">5.2.5 (-s)Enforcing “strandedness”</a></li> -<li><a class="reference internal" href="#abam-default-is-to-write-bam-output-when-using-bam-input">5.2.6 (-abam)Default is to write BAM output when using BAM input</a></li> -<li><a class="reference internal" href="#bedpe-output-bedpe-format-when-using-bam-input">5.2.7 (-bedpe)Output BEDPE format when using BAM input</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="intersectBed.html" - title="previous chapter">5.1 intersect</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="pairToPair.html" - title="next chapter">5.3 pairToPair</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/pairToBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="pairToPair.html" title="5.3 pairToPair" - >next</a> |</li> - <li class="right" > - <a href="intersectBed.html" title="5.1 intersect" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/pairToPair.html b/docs/_build/html/content/pairToPair.html deleted file mode 100644 index 081bb31a..00000000 --- a/docs/_build/html/content/pairToPair.html +++ /dev/null @@ -1,237 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.3 pairToPair</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.4 bamToBed" href="bamToBed.html" /> - <link rel="prev" title="5.2 pairToBed" href="pairToBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="bamToBed.html" title="5.4 bamToBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="pairToBed.html" title="5.2 pairToBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="pairtopair"> -<h1>5.3 pairToPair<a class="headerlink" href="#pairtopair" title="Permalink to this headline">¶</a></h1> -<p><strong>pairToPair</strong> compares two BEDPE files in search of overlaps where each end of a BEDPE feature in A -overlaps with the ends of a feature in B. For example, using pairToPair, one could screen for the exact -same discordant paired-end alignment in two files. This could suggest (among other things) that the -discordant pair suggests the same structural variation in each file/sample.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.3.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage:</strong></p> -<div class="highlight-python"><pre>pairToPair [OPTIONS] -a <BEDPE> -b <BEDPE></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="14%" /> -<col width="86%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-a</strong></td> -<td>BEDPE file A. Each feature in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe.</td> -</tr> -<tr class="row-odd"><td><strong>-b</strong></td> -<td>BEDPE file B. Use “stdin” if passing B with a UNIX pipe.</td> -</tr> -<tr class="row-even"><td><strong>-f</strong></td> -<td>Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp).</td> -</tr> -<tr class="row-odd"><td><strong>-is</strong></td> -<td>Force “strandedness”. That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand.</td> -</tr> -<tr class="row-even"><td><strong>-type</strong></td> -<td><blockquote class="first"> -<div>Approach to reporting overlaps between BEDPE and BED.</div></blockquote> -<div class="line-block"> -<div class="line"><strong>either</strong> Report overlaps if either ends of A overlap B.</div> -</div> -<blockquote class="last"> -<div><div class="line-block"> -<div class="line"><strong>neither</strong> Report A if neither end of A overlaps B.</div> -</div> -<div class="line-block"> -<div class="line"><strong>both</strong> Report overlaps if both ends of A overlap B. -<em>Default behavior.</em></div> -</div> -</div></blockquote> -</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.3.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, a BEDPE feature from A will be reported if <em>both</em> ends overlap a feature in the BEDPE B -file. If strand information is present for the two BEDPE files, it will be further required that the -overlaps on each end be on the same strand. This way, an otherwise overlapping (in terms of genomic -locations) F/R alignment will not be matched with a R/R alignment.</p> -<p>Default: Report A if <em>both</em> ends overlaps B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................=====</pre> -</div> -<p>Default when strand information is present in both BEDPE files: Report A if <em>both</em> ends overlaps B <em>on -the same strands</em>.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE A >>>>>.................................>>>>> - -BEDPE B <<<<<.............................>>>>> - -Result - - - -BEDPE A >>>>>.................................>>>>> - -BEDPE B >>>>>.............................>>>>> - -Result >>>>>.................................>>>>></pre> -</div> -</div> -<div class="section" id="type-neither-optional-overlap-requirements"> -<h2>5.3.3 (-type neither)Optional overlap requirements<a class="headerlink" href="#type-neither-optional-overlap-requirements" title="Permalink to this headline">¶</a></h2> -<p>Using then <strong>-type neither, pairToPair</strong> will only report A if <em>neither</em> end overlaps with a BEDPE -feature in B.</p> -<p><strong>-type neither</strong>: Report A only if <em>neither</em> end overlaps B.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^......................................^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^................................................^^^^^^ - -Result =====.................................=====</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.3 pairToPair</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.3.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.3.2 Default behavior</a></li> -<li><a class="reference internal" href="#type-neither-optional-overlap-requirements">5.3.3 (-type neither)Optional overlap requirements</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="pairToBed.html" - title="previous chapter">5.2 pairToBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="bamToBed.html" - title="next chapter">5.4 bamToBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/pairToPair.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="bamToBed.html" title="5.4 bamToBed" - >next</a> |</li> - <li class="right" > - <a href="pairToBed.html" title="5.2 pairToBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/quick-start.html b/docs/_build/html/content/quick-start.html deleted file mode 100644 index ed957dca..00000000 --- a/docs/_build/html/content/quick-start.html +++ /dev/null @@ -1,161 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Quick start</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="next" title="General usage" href="general-usage.html" /> - <link rel="prev" title="Installation" href="installation.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="general-usage.html" title="General usage" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="installation.html" title="Installation" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="quick-start"> -<h1>Quick start<a class="headerlink" href="#quick-start" title="Permalink to this headline">¶</a></h1> -<div class="section" id="install-bedtools"> -<h2>Install BEDTools<a class="headerlink" href="#install-bedtools" title="Permalink to this headline">¶</a></h2> -<div class="highlight-python"><pre>curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz -tar -zxvf BEDTools.tar.gz -cd BEDTools -make clean -make all -sudo cp bin/* /usr/local/bin/</pre> -</div> -</div> -<div class="section" id="use-bedtools"> -<h2>Use BEDTools<a class="headerlink" href="#use-bedtools" title="Permalink to this headline">¶</a></h2> -<p>Below are examples of typical BEDTools usage. <strong>Additional usage examples are described in -section 6 of this manual.</strong> Using the “-h” option with any BEDTools will report a list of all command -line options.</p> -<p>A. Report the base-pair overlap between the features in two BED files.</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed</pre> -</div> -<p>B. Report those entries in A that overlap NO entries in B. Like “grep -v”</p> -<div class="highlight-python"><pre>intersectBed -a reads.bed -b genes.bed ?Cv</pre> -</div> -<p>C. Read BED A from stdin. Useful for stringing together commands. For example, find genes that overlap LINEs -but not SINEs.</p> -<div class="highlight-python"><pre>intersectBed -a genes.bed -b LINES.bed | intersectBed -a stdin -b SINEs.bed ?Cv</pre> -</div> -<p>D. Find the closest ALU to each gene.</p> -<div class="highlight-python"><pre>closestBed -a genes.bed -b ALUs.bed</pre> -</div> -<p>E. Merge overlapping repetitive elements into a single entry, returning the number of entries merged.</p> -<div class="highlight-python"><pre>mergeBed -i repeatMasker.bed -n</pre> -</div> -<p>F. Merge nearby repetitive elements into a single entry, so long as they are within 1000 bp of one another.</p> -<div class="highlight-python"><pre>mergeBed -i repeatMasker.bed -d 1000</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">Quick start</a><ul> -<li><a class="reference internal" href="#install-bedtools">Install BEDTools</a></li> -<li><a class="reference internal" href="#use-bedtools">Use BEDTools</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="installation.html" - title="previous chapter">Installation</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="general-usage.html" - title="next chapter">General usage</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/quick-start.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="general-usage.html" title="General usage" - >next</a> |</li> - <li class="right" > - <a href="installation.html" title="Installation" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/shuffleBed.html b/docs/_build/html/content/shuffleBed.html deleted file mode 100644 index cb01f0cc..00000000 --- a/docs/_build/html/content/shuffleBed.html +++ /dev/null @@ -1,274 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.13 shuffleBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.14 slopBed" href="slopBed.html" /> - <link rel="prev" title="5.12 maskFastaFromBed" href="maskfastafromBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="slopBed.html" title="5.14 slopBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="maskfastafromBed.html" title="5.12 maskFastaFromBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="shufflebed"> -<h1>5.13 shuffleBed<a class="headerlink" href="#shufflebed" title="Permalink to this headline">¶</a></h1> -<p><strong>shuffleBed</strong> will randomly permute the genomic locations of a fearure file among a genome defined in a -genome file. One can also provide an “exclusions” BED/GFF/VCF file that lists regions where you do -not want the permuted features to be placed. For example, one might want to prevent features from -being placed in known genome gaps. <strong>shuffleBed</strong> is useful as a <em>null</em> basis against which to test the -significance of associations of one feature with another.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.13.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>shuffleBed [OPTIONS] -i <BED/GFF/VCF> -g <GENOME></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="11%" /> -<col width="89%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-excl</strong></td> -<td>A BED file of coordinates in which features from -i should <em>not</em> be placed (e.g., genome gaps).</td> -</tr> -<tr class="row-odd"><td><strong>-chrom</strong></td> -<td>Keep features in -i on the same chromosome. Solely permute their location on the chromosome. <em>By default, both the chromosome and position are randomly chosen</em>.</td> -</tr> -<tr class="row-even"><td><strong>-seed</strong></td> -<td>Supply an integer seed for the shuffling. This will allow feature shuffling experiments to be recreated exactly as the seed for the pseudo-random number generation will be constant. <em>By default, the seed is chosen automatically</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.13.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>shuffleBed</strong> will reposition each feature in the input BED file on a random chromosome at a -random position. The size and strand of each feature are preserved.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed -i A.bed -g my.genome -chr4 1498 1598 a1 1 + -chr3 2156 3156 a2 2 -</pre> -</div> -</div> -<div class="section" id="chrom-requiring-that-features-be-shuffled-on-the-same-chromosome"> -<h2>5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome<a class="headerlink" href="#chrom-requiring-that-features-be-shuffled-on-the-same-chromosome" title="Permalink to this headline">¶</a></h2> -<p>The “<strong>-chrom</strong>” option behaves the same as the default behavior except that features are randomly -placed on the same chromosome as defined in the BED file.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed -i A.bed -g my.genome -chrom -chr1 9560 9660 a1 1 + -chr1 7258 8258 a2 2 -</pre> -</div> -</div> -<div class="section" id="excluding-certain-genome-regions-from-shufflebed"> -<h2>5.13.4 Excluding certain genome regions from shuffleBed<a class="headerlink" href="#excluding-certain-genome-regions-from-shufflebed" title="Permalink to this headline">¶</a></h2> -<p>One may want to prevent BED features from being placed in certain regions of the genome. For -example, one may want to exclude genome gaps from permutation experiment. The “<strong>-excl</strong>” option -defines a BED file of regions that should be excluded. <strong>shuffleBed</strong> will attempt to permute the -locations of all features while adhering to the exclusion rules. However it will stop looking for an -appropriate location if it cannot find a valid spot for a feature after 1,000,000 tries.</p> -<p>For example (<em>note that the exclude file excludes all but 100 base pairs of the chromosome</em>):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 100 10000 - -shuffleBed -i A.bed -g my.genome -excl exclude.bed -chr1 0 100 a1 1 + -Error, line 2: tried 1000000 potential loci for entry, but could not avoid excluded -regions. Ignoring entry and moving on.</pre> -</div> -<p>For example (<em>now the exclusion file only excludes the first 100 bases of the chromosome</em>):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 0 100 - -shuffleBed -i A.bed -g my.genome -excl exclude.bed -chr1 147 247 a1 1 + -chr1 2441 3441 a2 2 -</pre> -</div> -</div> -<div class="section" id="defining-a-seed-for-the-random-replacement"> -<h2>5.13.5 Defining a “seed” for the random replacement.<a class="headerlink" href="#defining-a-seed-for-the-random-replacement" title="Permalink to this headline">¶</a></h2> -<p><strong>shuffleBed</strong> uses a pseudo-random number generator to permute the locations of BED features. -Therefore, each run should produce a different result. This can be problematic if one wants to exactly -recreate an experiment. By using the “<strong>-seed</strong>” option, one can supply a custom integer seed for -<strong>shuffleBed</strong>. In turn, each execution of <strong>shuffleBed</strong> with the same seed and input files should produce -identical results.</p> -<p>For example (<em>note that the exclude file below excludes all but 100 base pairs of the chromosome</em>):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 - - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 - - -. . . - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 -</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.13 shuffleBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.13.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.13.2 Default behavior</a></li> -<li><a class="reference internal" href="#chrom-requiring-that-features-be-shuffled-on-the-same-chromosome">5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome</a></li> -<li><a class="reference internal" href="#excluding-certain-genome-regions-from-shufflebed">5.13.4 Excluding certain genome regions from shuffleBed</a></li> -<li><a class="reference internal" href="#defining-a-seed-for-the-random-replacement">5.13.5 Defining a “seed” for the random replacement.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="maskfastafromBed.html" - title="previous chapter">5.12 maskFastaFromBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="slopBed.html" - title="next chapter">5.14 slopBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/shuffleBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="slopBed.html" title="5.14 slopBed" - >next</a> |</li> - <li class="right" > - <a href="maskfastafromBed.html" title="5.12 maskFastaFromBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/slopBed.html b/docs/_build/html/content/slopBed.html deleted file mode 100644 index 1eb8b2a0..00000000 --- a/docs/_build/html/content/slopBed.html +++ /dev/null @@ -1,216 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.14 slopBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.15 sortBed" href="sortBed.html" /> - <link rel="prev" title="5.13 shuffleBed" href="shuffleBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="sortBed.html" title="5.15 sortBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="shuffleBed.html" title="5.13 shuffleBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="slopbed"> -<h1>5.14 slopBed<a class="headerlink" href="#slopbed" title="Permalink to this headline">¶</a></h1> -<p><strong>slopBed</strong> will increase the size of each feature in a feature file be a user-defined number of bases. While -something like this could be done with an “<strong>awk ‘{OFS=”t” print $1,$2-<slop>,$3+<slop>}’</strong>”, -<strong>slopBed</strong> will restrict the resizing to the size of the chromosome (i.e. no start < 0 and no end > -chromosome size).</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.14.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><div class="highlight"><pre><span class="n">slopBed</span> <span class="p">[</span><span class="n">OPTIONS</span><span class="p">]</span> <span class="o">-</span><span class="n">i</span> <span class="o"><</span><span class="n">BED</span><span class="o">/</span><span class="n">GFF</span><span class="o">/</span><span class="n">VCF</span><span class="o">></span> <span class="o">-</span><span class="n">g</span> <span class="o"><</span><span class="n">GENOME</span><span class="o">></span> <span class="p">[</span><span class="o">-</span><span class="n">b</span> <span class="ow">or</span> <span class="p">(</span><span class="o">-</span><span class="n">l</span> <span class="ow">and</span> <span class="o">-</span><span class="n">r</span><span class="p">)]</span> -</pre></div> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-b</strong></td> -<td>Increase the BED/GFF/VCF entry by the same number base pairs in each direction. <em>Integer</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-l</strong></td> -<td>The number of base pairs to subtract from the start coordinate. <em>Integer</em>.</td> -</tr> -<tr class="row-even"><td><strong>-r</strong></td> -<td>The number of base pairs to add to the end coordinate. <em>Integer</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-s</strong></td> -<td>Define -l and -r based on strand. For example. if used, -l 500 for a negative-stranded feature, it will add 500 bp to the <em>end</em> coordinate.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.14.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>slopBed</strong> will either add a fixed number of bases in each direction (<strong>-b</strong>) or an asymmetric -number of bases in each direction (<strong>-l</strong> and <strong>-r</strong>).</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -b 5 -chr1 0 105 -chr1 795 985 - -slopBed -i A.bed -g my.genome -l 2 -r 3 -chr1 3 103 -chr1 798 983</pre> -</div> -<p>However, if the requested number of bases exceeds the boundaries of the chromosome, <strong>slopBed</strong> will -“clip” the feature accordingly.</p> -<div class="highlight-python"><pre>cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -b 5000 -chr1 0 1000 -chr1 0 1000</pre> -</div> -</div> -<div class="section" id="resizing-features-according-to-strand"> -<h2>5.14.3 Resizing features according to strand<a class="headerlink" href="#resizing-features-according-to-strand" title="Permalink to this headline">¶</a></h2> -<p><strong>slopBed</strong> will optionally increase the size of a feature based on strand.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 a1 1 + -chr1 100 200 a2 2 - - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -l 50 -r 80 -s -chr1 50 280 a1 1 + -chr1 20 250 a2 2 -</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.14 slopBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.14.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.14.2 Default behavior</a></li> -<li><a class="reference internal" href="#resizing-features-according-to-strand">5.14.3 Resizing features according to strand</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="shuffleBed.html" - title="previous chapter">5.13 shuffleBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="sortBed.html" - title="next chapter">5.15 sortBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/slopBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="sortBed.html" title="5.15 sortBed" - >next</a> |</li> - <li class="right" > - <a href="shuffleBed.html" title="5.13 shuffleBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/sortBed.html b/docs/_build/html/content/sortBed.html deleted file mode 100644 index 1f62dc6d..00000000 --- a/docs/_build/html/content/sortBed.html +++ /dev/null @@ -1,211 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.15 sortBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.16 linksBed" href="linksBed.html" /> - <link rel="prev" title="5.14 slopBed" href="slopBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="linksBed.html" title="5.16 linksBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="slopBed.html" title="5.14 slopBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="sortbed"> -<h1>5.15 sortBed<a class="headerlink" href="#sortbed" title="Permalink to this headline">¶</a></h1> -<p><strong>sortBed</strong> sorts a feature file by chromosome and other criteria.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.15.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>sortBed [OPTIONS] -i <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-sizeA</strong></td> -<td>Sort by feature size in ascending order.</td> -</tr> -<tr class="row-odd"><td><strong>-sizeD</strong></td> -<td>Sort by feature size in descending order.</td> -</tr> -<tr class="row-even"><td><strong>-chrThenSizeA</strong></td> -<td>Sort by chromosome, then by feature size (asc).</td> -</tr> -<tr class="row-odd"><td><strong>-chrThenSizeD</strong></td> -<td>Sort by chromosome, then by feature size (desc).</td> -</tr> -<tr class="row-even"><td><strong>-chrThenScoreA</strong></td> -<td>Sort by chromosome, then by score (asc).</td> -</tr> -<tr class="row-odd"><td><strong>-chrThenScoreD</strong></td> -<td>Sort by chromosome, then by score (desc).</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.15.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>sortBed</strong> sorts a BED file by chromosome and then by start position in ascending order.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed -i A.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000</pre> -</div> -</div> -<div class="section" id="optional-sorting-behavior"> -<h2>5.15.3 Optional sorting behavior<a class="headerlink" href="#optional-sorting-behavior" title="Permalink to this headline">¶</a></h2> -<p><strong>sortBed</strong> will also sorts a BED file by chromosome and then by other criteria.</p> -<p>For example, to sort by chromosome and then by feature size (in descending order):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed -i A.bed -sizeD -chr1 750 10000 -chr1 800 1000 -chr1 80 180 -chr1 1 10</pre> -</div> -<p><strong>Disclaimer:</strong> it should be noted that <strong>sortBed</strong> is merely a convenience utility, as the UNIX sort utility -will sort BED files more quickly while using less memory. For example, UNIX sort will sort a BED file -by chromosome then by start position in the following manner:</p> -<div class="highlight-python"><pre>sort -k 1,1 -k2,2 -n a.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.15 sortBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.15.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.15.2 Default behavior</a></li> -<li><a class="reference internal" href="#optional-sorting-behavior">5.15.3 Optional sorting behavior</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="slopBed.html" - title="previous chapter">5.14 slopBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="linksBed.html" - title="next chapter">5.16 linksBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/sortBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="linksBed.html" title="5.16 linksBed" - >next</a> |</li> - <li class="right" > - <a href="slopBed.html" title="5.14 slopBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/subtractBed.html b/docs/_build/html/content/subtractBed.html deleted file mode 100644 index 4b4e55e0..00000000 --- a/docs/_build/html/content/subtractBed.html +++ /dev/null @@ -1,207 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.7 subtractBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.8 mergeBed" href="mergeBed.html" /> - <link rel="prev" title="5.6 closestBed" href="closestBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="mergeBed.html" title="5.8 mergeBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="closestBed.html" title="5.6 closestBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="subtractbed"> -<h1>5.7 subtractBed<a class="headerlink" href="#subtractbed" title="Permalink to this headline">¶</a></h1> -<p><strong>subtractBed</strong> searches for features in B that overlap A. If an overlapping feature is found in B, the -overlapping portion is removed from A and the remaining portion of A is reported. If a feature in B -overlaps all of a feature in A, the A feature will not be reported.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.7.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>subtractBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-f</strong></td> -<td>Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp).</td> -</tr> -<tr class="row-odd"><td><strong>-s</strong></td> -<td>Force strandedness. That is, find the closest feature in B overlaps A on the same strand. <em>By default, this is disabled</em>.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.7.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* ****** - -BED File B ^^^^^^^^ ^^^^^^^^^^^ - -Result =========</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 -chr1 10 20 - -cat B.bed -chr1 0 30 -chr1 180 300 - -subtractBed -a A.bed -b B.bed -chr1 100 180</pre> -</div> -</div> -<div class="section" id="f-requiring-a-minimal-overlap-fraction-before-subtracting"> -<h2>5.7.3 (-f)Requiring a minimal overlap fraction before subtracting<a class="headerlink" href="#f-requiring-a-minimal-overlap-fraction-before-subtracting" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as the -f option for intersectBed. In this case, subtractBed will only -subtract an overlap with B if it covers at least the fraction of A defined by -f. If an overlap is found, -but it does not meet the overlap fraction, the original A feature is reported without subtraction.</p> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 180 300 - -subtractBed -a A.bed -b B.bed -f 0.10 -chr1 100 180 - -subtractBed -a A.bed -b B.bed -f 0.80 -chr1 100 200</pre> -</div> -</div> -<div class="section" id="s-enforcing-strandedness"> -<h2>5.7.4 (-s)Enforcing “strandedness”<a class="headerlink" href="#s-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as the -s option for intersectBed while scanning for features in B that -should be subtracted from A. See the discussion in the intersectBed section for details.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.7 subtractBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.7.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.7.2 Default behavior</a></li> -<li><a class="reference internal" href="#f-requiring-a-minimal-overlap-fraction-before-subtracting">5.7.3 (-f)Requiring a minimal overlap fraction before subtracting</a></li> -<li><a class="reference internal" href="#s-enforcing-strandedness">5.7.4 (-s)Enforcing “strandedness”</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="closestBed.html" - title="previous chapter">5.6 closestBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="mergeBed.html" - title="next chapter">5.8 mergeBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/subtractBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="mergeBed.html" title="5.8 mergeBed" - >next</a> |</li> - <li class="right" > - <a href="closestBed.html" title="5.6 closestBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/unionBedGraphs.html b/docs/_build/html/content/unionBedGraphs.html deleted file mode 100644 index a45ddd29..00000000 --- a/docs/_build/html/content/unionBedGraphs.html +++ /dev/null @@ -1,296 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.23 unionBedGraphs</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.24 annotateBed" href="annotateBed.html" /> - <link rel="prev" title="5.22 groupBy" href="groupBy.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="annotateBed.html" title="5.24 annotateBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="groupBy.html" title="5.22 groupBy" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="unionbedgraphs"> -<h1>5.23 unionBedGraphs<a class="headerlink" href="#unionbedgraphs" title="Permalink to this headline">¶</a></h1> -<p><strong>unionBedGraphs</strong> combines multiple BEDGRAPH files into a single file such that one can directly -compare coverage (and other text-values such as genotypes) across multiple sample</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.23.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p>Usage:</p> -<div class="highlight-python"><pre>unionBedGraphs [OPTIONS] -i FILE1 FILE2 FILE3 ... FILEn</pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="12%" /> -<col width="88%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-header</strong></td> -<td>Print a header line, consisting of chrom, start, end followed by the names of each input BEDGRAPH file.</td> -</tr> -<tr class="row-odd"><td><strong>-names</strong></td> -<td>A list of names (one per file) to describe each file in -i. These names will be printed in the header line.</td> -</tr> -<tr class="row-even"><td><strong>-empty</strong></td> -<td>Report empty regions (i.e., start/end intervals w/o values in all files). <em>Requires the ‘-g FILE’ parameter (see below)</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-g</strong></td> -<td>The genome file to be used to calculate empty regions.</td> -</tr> -<tr class="row-even"><td><strong>-filler TEXT</strong></td> -<td>Use TEXT when representing intervals having no value. Default is ‘0’, but you can use ‘N/A’ or any other text.</td> -</tr> -<tr class="row-odd"><td><strong>-examples</strong></td> -<td>Show detailed usage examples.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.23.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>cat 1.bg -chr1 1000 1500 10 -chr1 2000 2100 20 - -cat 2.bg -chr1 900 1600 60 -chr1 1700 2050 50 - -cat 3.bg -chr1 1980 2070 80 -chr1 2090 2100 20 - -cat sizes.txt -chr1 5000 - -unionBedGraphs -i 1.bg 2.bg 3.bg -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20</pre> -</div> -</div> -<div class="section" id="add-a-header-line-to-the-output"> -<h2>5.23.3 Add a header line to the output<a class="headerlink" href="#add-a-header-line-to-the-output" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>unionBedGraphs -i 1.bg 2.bg 3.bg -header -chrom start end 1 2 3 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20</pre> -</div> -</div> -<div class="section" id="add-a-header-line-with-custom-file-names-to-the-output"> -<h2>5.23.4 Add a header line with custom file names to the output<a class="headerlink" href="#add-a-header-line-with-custom-file-names-to-the-output" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>unionBedGraphs -i 1.bg 2.bg 3.bg -header -names WT-1 WT-2 KO-1 -chrom start end WT-1 WT-2 KO-1 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20</pre> -</div> -</div> -<div class="section" id="include-regions-that-have-zero-coverage-in-all-bedgraph-files"> -<h2>5.23.5 Include regions that have zero coverage in all BEDGRAPH files.<a class="headerlink" href="#include-regions-that-have-zero-coverage-in-all-bedgraph-files" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header -chrom start end WT-1 WT-2 KO-1 -chrom start end 1 2 3 -chr1 0 900 0 0 0 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1600 1700 0 0 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -chr1 2100 5000 0 0 0</pre> -</div> -</div> -<div class="section" id="use-a-custom-value-for-missing-values"> -<h2>5.23.6 Use a custom value for missing values.<a class="headerlink" href="#use-a-custom-value-for-missing-values" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header -filler N/A -chrom start end WT-1 WT-2 KO-1 -chrom start end 1 2 3 -chr1 0 900 N/A N/A N/A -chr1 900 1000 N/A 60 N/A -chr1 1000 1500 10 60 N/A -chr1 1500 1600 N/A 60 N/A -chr1 1600 1700 N/A N/A N/A -chr1 1700 1980 N/A 50 N/A -chr1 1980 2000 N/A 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 N/A 80 -chr1 2070 2090 20 N/A N/A -chr1 2090 2100 20 N/A 20 -chr1 2100 5000 N/A N/A N/A</pre> -</div> -</div> -<div class="section" id="use-bedgraph-files-with-non-numeric-values"> -<h2>5.23.7 Use BEDGRAPH files with non-numeric values.<a class="headerlink" href="#use-bedgraph-files-with-non-numeric-values" title="Permalink to this headline">¶</a></h2> -<p>Figure:</p> -<div class="highlight-python"><pre>cat 1.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -cat 2.snp.bg -chr1 0 1 C/C -chr1 7 8 T/T - -cat 3.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -unionBedGraphs -i 1.snp.bg 2.snp.bg 3.snp.bg -filler -/- -chr1 0 1 A/G C/C A/G -chr1 5 6 C/T -/- C/T -chr1 7 8 -/- T/T -/-</pre> -</div> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.23 unionBedGraphs</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.23.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.23.2 Default behavior</a></li> -<li><a class="reference internal" href="#add-a-header-line-to-the-output">5.23.3 Add a header line to the output</a></li> -<li><a class="reference internal" href="#add-a-header-line-with-custom-file-names-to-the-output">5.23.4 Add a header line with custom file names to the output</a></li> -<li><a class="reference internal" href="#include-regions-that-have-zero-coverage-in-all-bedgraph-files">5.23.5 Include regions that have zero coverage in all BEDGRAPH files.</a></li> -<li><a class="reference internal" href="#use-a-custom-value-for-missing-values">5.23.6 Use a custom value for missing values.</a></li> -<li><a class="reference internal" href="#use-bedgraph-files-with-non-numeric-values">5.23.7 Use BEDGRAPH files with non-numeric values.</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="groupBy.html" - title="previous chapter">5.22 groupBy</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="annotateBed.html" - title="next chapter">5.24 annotateBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/unionBedGraphs.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="annotateBed.html" title="5.24 annotateBed" - >next</a> |</li> - <li class="right" > - <a href="groupBy.html" title="5.22 groupBy" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/content/windowBed.html b/docs/_build/html/content/windowBed.html deleted file mode 100644 index eb1abe0b..00000000 --- a/docs/_build/html/content/windowBed.html +++ /dev/null @@ -1,297 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>5.5 windowBed</title> - - <link rel="stylesheet" href="../_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '../', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="../_static/jquery.js"></script> - <script type="text/javascript" src="../_static/underscore.js"></script> - <script type="text/javascript" src="../_static/doctools.js"></script> - <link rel="shortcut icon" href="../_static/bedtools.png"/> - <link rel="top" title="None" href="../index.html" /> - <link rel="up" title="The BEDTools suite" href="bedtools-suite.html" /> - <link rel="next" title="5.6 closestBed" href="closestBed.html" /> - <link rel="prev" title="5.4 bamToBed" href="bamToBed.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="closestBed.html" title="5.6 closestBed" - accesskey="N">next</a> |</li> - <li class="right" > - <a href="bamToBed.html" title="5.4 bamToBed" - accesskey="P">previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" accesskey="U">The BEDTools suite</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="windowbed"> -<h1>5.5 windowBed<a class="headerlink" href="#windowbed" title="Permalink to this headline">¶</a></h1> -<p>Similar to <strong>intersectBed</strong>, <strong>windowBed</strong> searches for overlapping features in A and B. However, -<strong>windowBed</strong> adds a specified number (1000, by default) of base pairs upstream and downstream of -each feature in A. In effect, this allows features in B that are “near” features in A to be detected.</p> -<div class="section" id="usage-and-option-summary"> -<h2>5.5.1 Usage and option summary<a class="headerlink" href="#usage-and-option-summary" title="Permalink to this headline">¶</a></h2> -<p><strong>Usage:</strong></p> -<div class="highlight-python"><pre>windowBed [OPTIONS] -a <BED/GFF/VCF> -b <BED/GFF/VCF></pre> -</div> -<table border="1" class="docutils"> -<colgroup> -<col width="11%" /> -<col width="89%" /> -</colgroup> -<thead valign="bottom"> -<tr class="row-odd"><th class="head">Option</th> -<th class="head">Description</th> -</tr> -</thead> -<tbody valign="top"> -<tr class="row-even"><td><strong>-abam</strong></td> -<td>BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use “stdin” if passing A with a UNIX pipe: For example: samtools view -b <BAM> | windowBed -abam stdin -b genes.bed</td> -</tr> -<tr class="row-odd"><td><strong>-ubam</strong></td> -<td>Write uncompressed BAM output. The default is write compressed BAM output.</td> -</tr> -<tr class="row-even"><td><strong>-bed</strong></td> -<td>When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: windowBed -abam reads.bam -b genes.bed -bed</td> -</tr> -<tr class="row-odd"><td><strong>-w</strong></td> -<td>Base pairs added upstream and downstream of each entry in A when searching for overlaps in B. <em>Default is 1000 bp</em>.</td> -</tr> -<tr class="row-even"><td><strong>-l</strong></td> -<td>Base pairs added upstream (left of) of each entry in A when searching for overlaps in B. <em>Allows one to create assymetrical “windows”. Default is 1000bp</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-r</strong></td> -<td>Base pairs added downstream (right of) of each entry in A when searching for overlaps in B. <em>Allows one to create assymetrical “windows”. Default is 1000bp</em>.</td> -</tr> -<tr class="row-even"><td><strong>-sw</strong></td> -<td>Define -l and -r based on strand. For example if used, -l 500 for a negative-stranded feature will add 500 bp downstream. <em>By default, this is disabled</em>.</td> -</tr> -<tr class="row-odd"><td><strong>-sm</strong></td> -<td>Only report hits in B that overlap A on the same strand. <em>By default, overlaps are reported without respect to strand</em>.</td> -</tr> -<tr class="row-even"><td><strong>-u</strong></td> -<td>Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B.</td> -</tr> -<tr class="row-odd"><td><strong>-c</strong></td> -<td>For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B.</td> -</tr> -</tbody> -</table> -</div> -<div class="section" id="default-behavior"> -<h2>5.5.2 Default behavior<a class="headerlink" href="#default-behavior" title="Permalink to this headline">¶</a></h2> -<p>By default, <strong>windowBed</strong> adds 1000 bp upstream and downstream of each A feature and searches for -features in B that overlap this “window”. If an overlap is found in B, both the <em>original</em> A feature and the -<em>original</em> B feature are reported. For example, in the figure below, feature B1 would be found, but B2 -would not.</p> -<div class="highlight-python"><pre>Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - "window" = 10 -BED File A <----------*************----------> - -BED File B ^^^^^^^^ ^^^^^^ - -Result ========</pre> -</div> -<p>For example:</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed -a A.bed -b B.bed -chr1 100 200 chr1 500 1000</pre> -</div> -</div> -<div class="section" id="w-defining-a-custom-window-size"> -<h2>5.5.3 (-w)Defining a custom window size<a class="headerlink" href="#w-defining-a-custom-window-size" title="Permalink to this headline">¶</a></h2> -<p>Instead of using the default window size of 1000bp, one can define a custom, <em>symmetric</em> window around -each feature in A using the <strong>-w</strong> option. One should specify the window size in base pairs. For example, -a window of 5kb should be defined as <strong>-w 5000</strong>.</p> -<p>For example (note that in contrast to the default behavior, the second B entry is reported):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed -a A.bed -b B.bed -w 5000 -chr1 100 200 chr1 500 1000 -chr1 100 200 chr1 1300 2000</pre> -</div> -</div> -<div class="section" id="l-and-r-defining-assymteric-windows"> -<h2>5.5.4 (-l and -r)Defining assymteric windows<a class="headerlink" href="#l-and-r-defining-assymteric-windows" title="Permalink to this headline">¶</a></h2> -<p>One can also define asymmetric windows where a differing number of bases are added upstream and -downstream of each feature using the <strong>-l (upstream)</strong> and <strong>-r (downstream)</strong> options.</p> -<p>For example (note the difference between -l 200 and -l 300):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 1000 2000 - -cat B.bed -chr1 500 800 -chr1 10000 20000 - -windowBed -a A.bed -b B.bed -l 200 -r 20000 -chr1 100 200 chr1 10000 20000 - -windowBed -a A.bed -b B.bed -l 300 -r 20000 -chr1 100 200 chr1 500 800 -chr1 100 200 chr1 10000 20000</pre> -</div> -</div> -<div class="section" id="sw-defining-assymteric-windows-based-on-strand"> -<h2>5.5.5 (-sw)Defining assymteric windows based on strand<a class="headerlink" href="#sw-defining-assymteric-windows-based-on-strand" title="Permalink to this headline">¶</a></h2> -<p>Especially when dealing with gene annotations or RNA-seq experiments, you may want to define -asymmetric windows based on “strand”. For example, you may want to screen for overlaps that occur -within 5000 bp upstream of a gene (e.g. a promoter region) while screening only 1000 bp downstream of -the gene. By enabling the <strong>-sw</strong> (“stranded” windows) option, the windows are added upstream or -downstream according to strand. For example, imagine one specifies <strong>-l 5000 -r 1000</strong> as well as the <strong>- -sw</strong> option. In this case, forward stranded (“+”) features will screen 5000 bp to the <em>left</em> (that is, <em>lower</em> -genomic coordinates) and 1000 bp to the <em>right</em> (that is, <em>higher</em> genomic coordinates). By contrast, -reverse stranded (“-”) features will screen 5000 bp to the <em>right</em> (that is, <em>higher</em> genomic coordinates) and -1000 bp to the <em>left</em> (that is, <em>lower</em> genomic coordinates).</p> -<p>For example (note the difference between -l 200 and -l 300):</p> -<div class="highlight-python"><pre>cat A.bed -chr1 10000 20000 A.forward 1 + -chr1 10000 20000 A.reverse 1 - - -cat B.bed -chr1 1000 8000 B1 -chr1 24000 32000 B2 - -windowBed -a A.bed -b B.bed -l 5000 -r 1000 -sw -chr1 10000 20000 A.forward 1 + chr1 1000 8000 B1 -chr1 10000 20000 A.reverse 1 - chr1 24000 32000 B2</pre> -</div> -</div> -<div class="section" id="sm-enforcing-strandedness"> -<h2>5.5.6 (-sm)Enforcing “strandedness”<a class="headerlink" href="#sm-enforcing-strandedness" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as the -s option for intersectBed while scanning for overlaps within the -“window” surrounding A. See the discussion in the intersectBed section for details.</p> -</div> -<div class="section" id="u-reporting-the-presence-of-at-least-one-overlapping-feature"> -<h2>5.5.7 (-u)Reporting the presence of at least one overlapping feature<a class="headerlink" href="#u-reporting-the-presence-of-at-least-one-overlapping-feature" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as for intersectBed while scanning for overlaps within the “window” -surrounding A. See the discussion in the intersectBed section for details.</p> -</div> -<div class="section" id="c-reporting-the-number-of-overlapping-features"> -<h2>5.5.8 (-c)Reporting the number of overlapping features<a class="headerlink" href="#c-reporting-the-number-of-overlapping-features" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as for intersectBed while scanning for overlaps within the “window” -surrounding A. See the discussion in the intersectBed section for details.</p> -</div> -<div class="section" id="v-reporting-the-absence-of-any-overlapping-features"> -<h2>5.5.9 (-v)Reporting the absence of any overlapping features<a class="headerlink" href="#v-reporting-the-absence-of-any-overlapping-features" title="Permalink to this headline">¶</a></h2> -<p>This option behaves the same as for intersectBed while scanning for overlaps within the “window” -surrounding A. See the discussion in the intersectBed section for details.</p> -</div> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="../index.html"> - <img class="logo" src="../_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="../index.html">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#">5.5 windowBed</a><ul> -<li><a class="reference internal" href="#usage-and-option-summary">5.5.1 Usage and option summary</a></li> -<li><a class="reference internal" href="#default-behavior">5.5.2 Default behavior</a></li> -<li><a class="reference internal" href="#w-defining-a-custom-window-size">5.5.3 (-w)Defining a custom window size</a></li> -<li><a class="reference internal" href="#l-and-r-defining-assymteric-windows">5.5.4 (-l and -r)Defining assymteric windows</a></li> -<li><a class="reference internal" href="#sw-defining-assymteric-windows-based-on-strand">5.5.5 (-sw)Defining assymteric windows based on strand</a></li> -<li><a class="reference internal" href="#sm-enforcing-strandedness">5.5.6 (-sm)Enforcing “strandedness”</a></li> -<li><a class="reference internal" href="#u-reporting-the-presence-of-at-least-one-overlapping-feature">5.5.7 (-u)Reporting the presence of at least one overlapping feature</a></li> -<li><a class="reference internal" href="#c-reporting-the-number-of-overlapping-features">5.5.8 (-c)Reporting the number of overlapping features</a></li> -<li><a class="reference internal" href="#v-reporting-the-absence-of-any-overlapping-features">5.5.9 (-v)Reporting the absence of any overlapping features</a></li> -</ul> -</li> -</ul> - - <h4>Previous topic</h4> - <p class="topless"><a href="bamToBed.html" - title="previous chapter">5.4 bamToBed</a></p> - <h4>Next topic</h4> - <p class="topless"><a href="closestBed.html" - title="next chapter">5.6 closestBed</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="../_sources/content/windowBed.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="../search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="../genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="closestBed.html" title="5.6 closestBed" - >next</a> |</li> - <li class="right" > - <a href="bamToBed.html" title="5.4 bamToBed" - >previous</a> |</li> - <li><a href="../index.html">bedtools v2.16.2</a> »</li> - <li><a href="bedtools-suite.html" >The BEDTools suite</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/genindex.html b/docs/_build/html/genindex.html deleted file mode 100644 index bec593ed..00000000 --- a/docs/_build/html/genindex.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Index</title> - - <link rel="stylesheet" href="_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="_static/jquery.js"></script> - <script type="text/javascript" src="_static/underscore.js"></script> - <script type="text/javascript" src="_static/doctools.js"></script> - <link rel="shortcut icon" href="_static/bedtools.png"/> - <link rel="top" title="None" href="index.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="#" title="General Index" - accesskey="I">index</a></li> - <li><a href="index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - -<h1 id="index">Index</h1> - -<div class="genindex-jumpbox"> - -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="index.html"> - <img class="logo" src="_static/bedtools.png" alt="Logo"/> - </a></p> - - - -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="#" title="General Index" - >index</a></li> - <li><a href="index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/index.html b/docs/_build/html/index.html deleted file mode 100644 index 74fd20c1..00000000 --- a/docs/_build/html/index.html +++ /dev/null @@ -1,139 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>bedtools: a powerful toolset for genome arithmetic</title> - - <link rel="stylesheet" href="_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="_static/jquery.js"></script> - <script type="text/javascript" src="_static/underscore.js"></script> - <script type="text/javascript" src="_static/doctools.js"></script> - <link rel="shortcut icon" href="_static/bedtools.png"/> - <link rel="top" title="None" href="#" /> - <link rel="next" title="Overview" href="content/overview.html" /> - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="genindex.html" title="General Index" - accesskey="I">index</a></li> - <li class="right" > - <a href="content/overview.html" title="Overview" - accesskey="N">next</a> |</li> - <li><a href="#">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <div class="section" id="bedtools-a-powerful-toolset-for-genome-arithmetic"> -<h1><strong>bedtools</strong>: <em>a powerful toolset for genome arithmetic</em><a class="headerlink" href="#bedtools-a-powerful-toolset-for-genome-arithmetic" title="Permalink to this headline">¶</a></h1> -</div> -<div class="section" id="overview"> -<h1>Overview<a class="headerlink" href="#overview" title="Permalink to this headline">¶</a></h1> -<p>Brief paragraph of the software.</p> -</div> -<div class="section" id="table-of-contents"> -<h1>Table of contents<a class="headerlink" href="#table-of-contents" title="Permalink to this headline">¶</a></h1> -<div class="toctree-wrapper compound"> -<ul> -<li class="toctree-l1"><a class="reference internal" href="content/overview.html">Overview</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/installation.html">Installation</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/quick-start.html">Quick start</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/general-usage.html">General usage</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/bedtools-suite.html">The BEDTools suite</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/example-usage.html">Example usage</a></li> -<li class="toctree-l1"><a class="reference internal" href="content/advanced-usage.html">Advanced usage</a></li> -</ul> -</div> -</div> -<div class="section" id="mailing-list"> -<h1>Mailing list<a class="headerlink" href="#mailing-list" title="Permalink to this headline">¶</a></h1> -<p>Refer to the mailing list.</p> -</div> - - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="#"> - <img class="logo" src="_static/bedtools.png" alt="Logo"/> - </a></p> - <h3><a href="#">Table Of Contents</a></h3> - <ul> -<li><a class="reference internal" href="#"><strong>bedtools</strong>: <em>a powerful toolset for genome arithmetic</em></a></li> -<li><a class="reference internal" href="#overview">Overview</a></li> -<li><a class="reference internal" href="#table-of-contents">Table of contents</a><ul> -</ul> -</li> -<li><a class="reference internal" href="#mailing-list">Mailing list</a></li> -</ul> - - <h4>Next topic</h4> - <p class="topless"><a href="content/overview.html" - title="next chapter">Overview</a></p> - <h3>This Page</h3> - <ul class="this-page-menu"> - <li><a href="_sources/index.txt" - rel="nofollow">Show Source</a></li> - </ul> -<div id="searchbox" style="display: none"> - <h3>Quick search</h3> - <form class="search" action="search.html" method="get"> - <input type="text" name="q" /> - <input type="submit" value="Go" /> - <input type="hidden" name="check_keywords" value="yes" /> - <input type="hidden" name="area" value="default" /> - </form> - <p class="searchtip" style="font-size: 90%"> - Enter search terms or a module, class or function name. - </p> -</div> -<script type="text/javascript">$('#searchbox').show(0);</script> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="genindex.html" title="General Index" - >index</a></li> - <li class="right" > - <a href="content/overview.html" title="Overview" - >next</a> |</li> - <li><a href="#">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/objects.inv b/docs/_build/html/objects.inv deleted file mode 100644 index f31ecc12cc0f481582c27d23b772de7f01fe64c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 207 zcmY#Z2rkIT%&Sny%qvUHE6FdaR47X=D$dN$Q!wIERtPA{&q_@$u~JA%O)1IG&nX6q zg+b)46pZu?&GbO3LNZbnic)hEGxJhXixl$H6iPBOixtu`b5a$6baH-fK~ZXPacYV} zX>n#=x<XY>W|AIP#jVq4{ZF3p_FNmFq35~rl&6o^*}w~?AsQ>LoNe`bkviqcGY#z@ z&z4VlwnVF<sb$Bd;LjT}nmV0I9j1saR})iBU!c{};W(AmS%gJp+43SrhWpP9B?0uH BQJw$* diff --git a/docs/_build/html/search.html b/docs/_build/html/search.html deleted file mode 100644 index b84b7926..00000000 --- a/docs/_build/html/search.html +++ /dev/null @@ -1,104 +0,0 @@ - - -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> - - -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> - - <title>Search</title> - - <link rel="stylesheet" href="_static/rtd.css" type="text/css" /> - <link rel="stylesheet" href="_static/pygments.css" type="text/css" /> - - <script type="text/javascript"> - var DOCUMENTATION_OPTIONS = { - URL_ROOT: '', - VERSION: '2.16.2', - COLLAPSE_INDEX: false, - FILE_SUFFIX: '.html', - HAS_SOURCE: true - }; - </script> - <script type="text/javascript" src="_static/jquery.js"></script> - <script type="text/javascript" src="_static/underscore.js"></script> - <script type="text/javascript" src="_static/doctools.js"></script> - <script type="text/javascript" src="_static/searchtools.js"></script> - <link rel="shortcut icon" href="_static/bedtools.png"/> - <link rel="top" title="None" href="index.html" /> - <script type="text/javascript"> - jQuery(function() { Search.loadIndex("searchindex.js"); }); - </script> - - - </head> - <body> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="genindex.html" title="General Index" - accesskey="I">index</a></li> - <li><a href="index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - - <div class="document"> - <div class="documentwrapper"> - <div class="bodywrapper"> - <div class="body"> - - <h1 id="search-documentation">Search</h1> - <div id="fallback" class="admonition warning"> - <script type="text/javascript">$('#fallback').hide();</script> - <p> - Please activate JavaScript to enable the search - functionality. - </p> - </div> - <p> - From here you can search these documents. Enter your search - words into the box below and click "search". Note that the search - function will automatically search for all of the words. Pages - containing fewer words won't appear in the result list. - </p> - <form action="" method="get"> - <input type="text" name="q" value="" /> - <input type="submit" value="search" /> - <span id="search-progress" style="padding-left: 10px"></span> - </form> - - <div id="search-results"> - - </div> - - </div> - </div> - </div> - <div class="sphinxsidebar"> - <div class="sphinxsidebarwrapper"> - <p class="logo"><a href="index.html"> - <img class="logo" src="_static/bedtools.png" alt="Logo"/> - </a></p> - </div> - </div> - <div class="clearer"></div> - </div> - <div class="related"> - <h3>Navigation</h3> - <ul> - <li class="right" style="margin-right: 10px"> - <a href="genindex.html" title="General Index" - >index</a></li> - <li><a href="index.html">bedtools v2.16.2</a> »</li> - </ul> - </div> - <div class="footer"> - © Copyright 2012. - Last updated on Jul 23, 2012. - <a href="http://www.gnu.org/licenses/gpl-3.0.txt"><p>GPL3 licensed</p></a> - </div> - </body> -</html> \ No newline at end of file diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js deleted file mode 100644 index cd8ee18a..00000000 --- a/docs/_build/html/searchindex.js +++ /dev/null @@ -1 +0,0 @@ -Search.setIndex({objects:{},terms:{genome_gap:8,represent:[27,23],all:[18,7,8,21,24,30,10,11,2,9,3,23,1,15,25,26,27,5,17,19],code:[27,24,1,11],breadth:[9,11],illustr:[23,24,31],scratch:11,signific:[26,10],unblock:23,per:[29,9,7,19,11],edu:[27,30,7,11],follow:[30,7,12,1,11,29,9,14,24,4,27,19],alu:[2,21,8],alr:[23,5],ctttgggagggctttgtagcctatctggaaaaaggaaatatcttcccatg:24,compact:23,content:[6,20,11],privat:2,tagcg:12,depend:11,gff:[18,30,31,0,24,12,10,11,29,26,9,23,3,15,25,4,27,16,28],iii:27,intron:[9,7,24,8],slopb:[0,2,20,27,11],greather:7,descript:[0,24,29,3,4,5,7,9,10,11,12,13,14,15,16,17,18,19,22,23,25,26,27,30,31],tail:[13,7],concret:20,fastafromb:[20,12,11],under:11,sens:11,spec:27,introduc:11,"case":[18,20,30,3,5,9,13,14,24,31,23,16,11],sourc:[27,24,1,11],aaaaaaaaccccccccccccgctactgggggggggggggggggg:3,string:[21,11,23,31,27,17],downstream:[2,16,8,11],without:[18,24,11,29,9,22,31,16],far:24,faq:[27,11],account:27,mous:[27,30,11],faqformat:27,novel:[2,11],mechan:[24,31],upstream:[16,8],join:11,assaf:[7,11],exact:22,relev:[27,15],strand:[18,2,7,8,0,31,12,10,11,29,9,22,24,15,25,26,27,16,17],tri:26,cons1:29,cons2:29,cons3:29,administr:1,complic:11,list:[6,19,21,5,29,9,14,25,26,27,11],"21t14g13":31,previou:11,adjust:11,larg:[30,23,11],sine:[21,8],aaaaannnnnccccccccccgctactgggggggggggggggggg:3,quick:[6,21],bed6:[27,13,17,11],path:15,refer:[2,6,1,11],bedgraph:[8,7,19,11],pleas:[7,11],prevent:[26,27,8],impli:27,work:[27,5,24,11],snapshotdirectori:15,othersampl:2,ten:11,speci:[27,11],rs645678:11,"0x2":[2,17],"500bp":2,among:[26,9,22,11],direct:0,maintain:11,known2:29,zero:[19,11,9,27,17,7],design:11,bed12:[7,24,11,9,13,23,27,17],pass:[7,24,11,9,22,31,27,16],download:[1,11],further:[2,22,11],append:[24,17],slop:[0,15],even:[31,24,11],index:[23,11],what:[29,31,5,24,11],xor:31,appear:2,compar:[19,24,11,29,9,22,31,27,16],filler:19,neg:[0,16,14,11],section:[18,20,7,21,10,11,9,24,25,27,16],brief:6,unsort:24,current:[27,10,11],delet:[2,27,17],version:[27,21,15,1,11],indel:[27,11],intersect:[20,24,11],"new":[27,12,25,11],net:27,method:[14,17,31],contrast:[16,24,11],redirect:11,full:[15,11],led:11,chose:[27,11],variat:[27,22,11],gener:[26,6,27,17,11],error:26,genet:[27,5,11],decid:11,here:[10,11],disclaim:4,explicitli:[27,5],let:[14,5],splice:[7,24,11,9,23,17],address:27,genea:[29,10],coincid:29,genec:29,modifi:27,sinc:31,interpret:[27,11],unionbedgraph:[20,19,11],either:[8,0,1,11,22,31,27,17],convert:[8,3,11,13,23,24,31,17],produc:26,convers:3,conceiv:27,technolog:11,"6a6t3":24,prior:15,amount:[14,11],behav:[18,25,10,31,26,16],"_all_":9,dcecfeeza:31,typic:[7,21,24,11,9,1,27],gene:[2,8,21,30,10,11,29,9,13,23,24,31,16],commonli:1,promot:16,intern:11,via:[27,11],notbothssr:8,"489m":23,extra:[27,25,10,11],curat:11,appli:[7,15,5],dcdabdfw:24,opcol:5,filenam:15,unix:[7,1,11,9,22,24,31,4,27,16,17],api:11,subtractb:[18,20,8,11],instal:[6,30,21,1,11],total:[7,17,31],establish:27,blockend:[9,7],"1000genom":27,notispan:[2,31],fee:31,from:[0,24,2,3,5,7,8,9,10,11,12,14,15,17,18,21,22,23,25,26,27,29,30,31],describ:[7,21,24,11,29,9,27,19],would:[24,11,13,10,15,31,27,16,28],memori:[4,11],distinct:[24,9,7,17,11],doubl:27,visit:[7,11],two:[31,21,24,11,22,10,25,27,17],coverag:[2,7,8,11,29,9,27,19],next:11,websit:[27,11],few:[27,11],chr:[29,24,15],doubt:1,call:[2,27,11],usr:[21,1],criteria:[4,24,31],taken:[27,15],pctcov:8,repres:[19,24,11,27,17,7],type:[2,8,11,29,22,15,31,27],exampl:[0,24,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,21,22,23,25,26,27,28,20,30,31],more:[20,8,24,11,9,10,25,4,27],sort:[7,5,15,31,4,11,17],aaaaaaaacccccccccccccgctactgggggggggggggggggg:[12,3],sudo:[21,1],itemrgb:27,comparison:[27,11],detail:[18,7,10,9,15,25,27,16,19],claus:5,e_valu:27,toolkit:11,multibamcov:11,flag:17,exce:0,accept:11,particular:27,known:[26,24],excl:[26,8],given:[31,7,17,5],effort:[20,11],must:[3,5,12,14,15,25,27,11],none:24,word:[16,24,11],notin2:8,monolith:11,local:[30,21,1,11],ubam:[16,31,23,24,11],bedtoigv:[20,15,11],annot:[24,3,5,29,30,23,10,27,16,11,28],cumbersom:11,cat:[18,7,0,24,12,10,11,29,26,9,3,25,4,16,5,28,19],other:[31,19,24,10,5,29,22,14,1,25,4,27,16,11,17],remain:18,minimum:[18,22,24,17,31],nine:27,can:[30,19,24,12,3,5,2,9,10,25,26,27,16,11,17],tabul:9,meet:[18,24,31],purpos:[20,23,17],root:[1,11],scatter:11,problemat:26,control:[7,31,24,11,10,25,27],tab:[27,9,5,12,11],tar:[21,1],scan:[18,16,10,25],predict:27,dcgggggfbgfgdgggggggfdfgggcggggfcggcggggggagfgbggc:31,loci:[26,15,11],share:[24,11],backslash:27,indic:[27,23,24,11],tag:[27,31,17,11],want:[7,30,10,5,24,9,14,1,31,26,27,16,11],dbsnp:2,faqtrack:11,concept:11,gcc:1,shuffleb:[26,20,8,11],multipl:[19,24,11,29,31,27,17],newlin:27,manipul:11,quot:27,cse:11,anoth:[21,24,5,25,26,11],six:[27,13],length:[9,11],chrx:[27,31,24,17,11],write:[24,11,23,31,27,16,17],how:[31,24,11,10,25,27],need:[27,11],mapq:23,reject:11,answer:11,instead:[27,12,16,24],chrm:[27,11],simpl:[7,8],chri:[27,11],collaps:[15,5],map:[23,24,17,31],resourc:27,bedpe_example2:27,bedpe_example1:27,max:[7,5],after:[29,26,9,24],variant:[2,8,5,29,27,11],cbedp:31,lump:7,reflect:12,befor:18,orient:12,snp:[19,8,24,11,2,10,27],mai:[24,11,3,31,26,16,17],end:[2,19,8,0,31,10,11,29,12,22,14,24,25,27,17],comma:[27,5],data:[8,3,5,2,13,15,27,11],chr7:17,chr6:24,chr5:[27,24,11],chr4:[26,24,31],chr3:[29,26],chr2:[29,26,9,7],chr1:[18,7,8,0,24,12,10,11,29,26,9,14,3,25,4,27,16,28,19],read:[7,8,21,24,11,2,9,15,31,16,17],confus:11,stdin:[7,8,21,24,5,2,9,13,14,31,22,27,16,11,17],correspond:[27,11],chr9:[27,24],exclud:[2,26],caus:[15,11],inform:[24,12,22,31,27,17],segmentaldup:8,combin:[7,31,24,11,2,25,19],frequent:[24,5],allow:[7,8,31,10,11,29,9,24,25,26,27,16,5,17],ensembl:[27,11],exclus:[26,11],region:[7,3,2,15,26,16,19],element:[8,21,11],order:[5,14,25,4,27,11],thickend:27,oper:[7,1,5,9,24,11,17],alignedread:11,help:[7,1,11],file2:[29,19],over:11,thickstart:27,becaus:[27,11],galaxi:[27,11],report:[18,31,7,8,21,12,10,11,29,9,22,14,24,25,27,16,5,17,19],chr11:17,chr10:[24,31],through:[27,30,11],same:[18,8,0,31,10,11,29,9,22,14,24,25,26,16,5,17],chr19:24,flexibl:[27,11],mainli:11,paramet:[20,19,11],style:27,occur:[16,14,10,25],group:[31,5,17,11],thank:11,gtf:11,concis:[27,11],chosen:26,fix:0,jim:11,window:[2,9,8,16,11],flank:[15,11],opposit:[24,10],creat:[30,8,12,3,11,2,9,13,23,24,15,31,27,16,17],mail:[6,11],main:11,assymetr:16,split:[7,24,11,9,13,27,17],non:[27,9,19,10],lastli:17,junction:11,greater:[27,17,11],var3:29,var2:29,handl:[10,11],auto:11,gaatg:5,ggfcgcggffcgggc:31,initi:11,number:[7,8,0,21,1,11,29,9,14,24,15,25,26,27,16,5],segdup:8,tile:9,rs1234:10,exon:[7,8,24,11,2,9,13,27,17],facilit:11,verifi:27,complement:[2,12],studi:[27,5],now:[24,5,14,26,27,11],discuss:[18,20,10,11,25,16],"68n58m2666n109m2885n158m":23,term:[20,22,10],"3677m":23,name:[19,31,24,5,29,12,15,25,27,11,17],edit:[27,31,17,1,8],rmsk:[23,15],revers:[2,12,16],notboth:[31,8],separ:[24,5,2,13,25,27],easili:[17,11],alreadi:15,mode:5,compris:[31,24,17,8],genom:[6,7,8,0,24,30,10,11,2,9,22,23,3,26,27,16,28,19],found:[18,24,11,10,31,16],doku:27,complet:[29,9],mean:[27,23,15,5],compil:1,mwcerec:31,nossr:8,mm9:30,first_bas:11,individu:11,hard:3,idea:11,antimod:5,each:[0,24,2,5,7,8,9,11,12,13,15,16,17,19,20,21,22,26,27,29,30,31],rs446788:11,year:11,our:11,happen:11,extract:[12,7,17,31],event:[10,11],special:11,out:[12,3],merg:[25,8,21,11],ftp:11,shown:24,closest:[18,8,21,10,11],vcf:[18,30,31,0,24,12,10,11,29,26,9,23,3,15,25,4,27,16,28],space:11,start2:[27,14,31],open:[30,15,11],newli:[3,25],start1:[27,14,31],research:11,profil:11,bamtool:11,mate:[24,17,31],kent:11,print:[19,8,0,5,29,27],size:[7,0,11,26,9,4,27,16,17,19],correct:[31,17,11],statist:5,cigar:[7,24,11,9,23,31,17],"goto":15,exon3:27,advanc:[2,6,11],spot:26,million:11,differ:[3,5,9,10,1,26,27,16],free:27,standard:[24,5,31,27,11,17],asc:4,cut:8,reason:11,base:[31,7,8,0,21,24,30,10,11,2,9,14,3,15,25,26,27,16,5,17],variantstorepeat:5,lab:11,ospan:31,ibam:7,ask:[29,5,24,11],org:[27,30,15,11],dna:[27,11],featur:[0,24,2,3,4,7,8,9,10,11,12,13,14,15,16,17,18,21,22,23,25,26,27,28,29,30,31],basi:26,diagram:24,your:[27,15,3,1,11],launch:15,frequenc:5,could:[0,26,22,27],omit:5,keep:[26,5],thing:[22,5],perhap:24,enforc:[18,25,24,10,31,16],place:[26,8,11],unabl:11,retain:8,"30bp":11,onto:27,broadinstitut:15,assymter:16,first:[8,10,11,2,15,26,27,17],origin:[18,8,24,11,25,16],softwar:[6,27,11],rang:[27,5,11],directli:[2,19],feel:11,onc:[16,24,15],refin:27,qualiti:[24,23,17,15,31],denorm:5,system:[1,5],restrict:[0,24,29,10,31,16],nucleotid:11,smaller:11,done:0,"long":[21,24,31],mask:[2,3,11],wasn:11,oppos:31,miss:19,primari:15,suffic:7,vcf4:27,avail:[20,24,17,11],freqasc:5,annotateb:[29,20,11],breviti:11,convent:11,script:[15,11],unknown:27,top:[23,11],sometim:[31,24,11],least:[18,7,8,10,5,9,24,31,16,11],binari:1,just:[16,24,10,5],too:11,similarli:[24,11],toolset:6,dj102g20:27,conveni:[4,13],store:[27,23,11],unalign:11,chrii:[27,11],adher:26,assign:27,option:[0,24,2,3,4,5,7,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31],especi:[27,9,16],maskfastafromb:[2,20,3,11],tool:[20,1,5,13,28,27,11,17],copi:[30,1],lower:[16,17,3],specifi:[16,14,17,5],probecompl:2,part:[27,17,11],conserv:29,attempt:26,exactli:[31,24,12,3,10,26],than:[27,7,17,11],png:[24,15],serv:[24,31],wide:[27,11],"738n64m146n100m1647n120m6478n162m1485n51m6777n60m9274n54m880n54m1229n54m2377n54m112":23,unmap:17,third:24,whenev:11,provid:[20,7,8,11,31,26],remov:[18,8,11],eleg:11,biolog:[24,31],bed:[0,24,2,3,4,5,7,8,9,10,11,12,13,14,15,16,17,18,21,22,23,25,26,27,28,29,30,31],charact:27,project:27,coverageb:[20,8,11,2,9,27],becom:27,were:[25,9,5,11],posit:[7,10,11,26,9,14,15,4,27],knowngen:[13,23],toward:9,reposit:26,randomli:[26,8,11],uc002yiq:[30,23],sai:[14,24],fashion:17,comput:[7,8,5,2,9,14,27,11,17],uc002yiu:30,sam:[27,23],uc002yiw:[30,13],uc002yix:[30,13],argument:5,inout:27,"return":[8,28,21,11],packag:11,bertha:24,seed:26,manner:[4,11],have:[7,10,5,9,24,15,31,27,16,11,17,19],tabl:[6,20,11],disjoint:[27,11],fasta:[12,3,11],chr8:24,windows10kb:8,tupac_0001:17,henceforth:11,bed12tobed6:[20,13,11],imagin:[16,5,10,11],built:30,equival:[27,11],min:5,"0t0c33a5t4t3":31,moreov:[24,11],agacgttaactttacacacctctgccaaggtcctcatccttgtattgaag:24,note:[7,8,24,10,11,29,26,9,3,1,15,31,4,27,16,5,17],also:[7,8,24,5,26,9,31,4,16,11,17],chromosom:[18,7,8,0,31,12,10,11,24,26,9,22,3,25,4,27,16,28,17],"2666n109m2885n158m":23,derek:11,take:[2,15,11],which:[24,5,14,10,15,25,26,27,11],neither:[2,31,22,8],environ:1,known_var:29,tracks1:11,singl:[7,8,21,5,29,25,11,19],said:11,therefor:[26,27,24,11],pipelin:11,unless:17,distribut:[27,8,11],notospan:31,normal:27,track:[23,11],who:11,compress:[16,31,23,24,11],discov:[8,11],most:[27,24,11],regular:11,awk:[0,8],portion:[18,7,24,11,9,17],pair:[31,7,8,0,21,10,11,2,9,22,14,24,15,25,26,27,16,17],alpha:[23,5],segment:8,why:11,l1pa3:[23,5],don:[24,11],correctli:[27,11],url:27,closestb:[20,8,21,10,11],gggfgd:24,stranded:[18,31,12,10,29,9,22,24,25,16],request:[0,12,15,11],tagbam:11,doe:[18,24,11,10,31,27,17],pipe:[7,24,5,9,13,14,31,22,16,11,17],pct2:29,ext:15,snapshot:[15,11],clean:[21,1],aligned_read:11,windowb:[20,8,11,14,27,16],effect:[16,5],latest:[2,27,1],scaffold:[27,11],dot:24,ungap:17,think:27,set:[7,30,24,11,12,23,25,17],rs233454:11,show:19,text:[27,5,19,11],ttatcgaatgcaatcgaatggaattatcgaatgcaatcgaatagaatcat:31,random:26,pct3:29,syntax:27,mychrom:27,sequenc:[7,8,9,3,11,12,24,27,17],session:15,identifi:27,uc002yi:30,fine:[24,11],find:[18,8,21,10,5,2,26],involv:1,depth:[9,7,11],onli:[18,2,7,8,31,24,11,29,9,22,25,26,27,16,5,17],slow:11,locat:[26,22,11],thei:[27,9,5,21,11],illumina:11,menu:11,discord:22,releas:11,figur:[18,20,19,10,5,29,13,15,25,16,11,28],should:[18,8,30,10,11,24,26,9,13,1,15,25,4,27,16,5],experiment:27,templat:11,occupi:12,mergeb:[20,25,8,21,11],analys:11,hope:11,count:[29,9,5,11],move:26,hit:[24,5,29,22,31,16],contribut:[7,11],get:2,pairtob:[20,8,24,11,2,31,27],nasti:29,stop:26,ssr:8,theori:11,cannot:26,mention:10,fearur:26,increas:0,grep:[2,21,7,24,8],chrom:[19,8,11,12,26,27],symmetr:16,requir:[18,7,8,1,5,2,22,24,31,26,27,11,17,19],target:[2,27,3],igv:[15,11],characterist:11,enabl:[16,24,17,11],organ:[27,30,11],homag:24,bloat:11,median:5,"public":[27,30,11],sum:5,stl:11,twelv:27,common:[24,11],contain:[10,11],privileg:1,bam:[7,8,24,11,2,9,22,23,15,31,27,16,17],where:[8,10,11,2,30,22,24,31,26,27,16,17],seamlessli:11,summari:[0,24,29,3,4,5,7,9,10,11,12,13,14,15,16,17,18,19,22,23,25,26,28,30,31],wiki:27,end2:[27,14,31],highest:10,cnt1:29,seq:[9,16,7,24,11],frame:27,"_0001":24,assumpt:15,displai:[27,23,8],see:[18,7,10,5,30,15,25,27,16,17,19],result:[18,31,10,11,29,9,22,14,24,25,26,27,16,28,17],fail:[17,31],close:25,institut:27,notalusinref:2,awar:11,detect:[27,9,5,16,11],kilobas:[9,8],give:11,chrthenscorea:4,matter:[15,11],databas:[27,5,11],boundari:0,sortb:[4,20,11],hist:9,written:[24,31,15,3,11],score:[8,24,5,29,14,31,4,27,17],between:[8,21,10,11,22,14,24,25,31,16],drawn:27,awai:25,experi:[26,9,16,3,11],approach:[22,31],across:[9,19],attribut:[27,11],accord:[0,16],predefin:11,extend:11,amen:11,numer:[19,17,5],screen:[7,24,2,9,22,15,27,16],sole:[29,26,11],disallow:17,extens:11,entir:[7,8,24,11,9,27,17],"_bbbbbbbbbbbbbbbb":31,stdev:5,genomecoverageb:[27,20,7,11],outer:31,come:[7,24,5,9,31,27,11,17],blockcount:[27,9,7],"31e":27,addit:[7,21,24,11,10,31,27,28],both:[8,10,11,29,9,22,24,31,26,16],blastx:27,img:15,hgdownload:11,someth:[0,30,5,11],howev:[7,8,0,31,10,11,24,25,26,27,16,17],alon:24,groupbi:[20,5,11],against:[26,9,7,24],nearbi:[21,8],etc:[27,31,24,15,11],instanc:30,context:11,chrthensizea:4,browser:[27,30,8,11],com:[21,1,11],col:[14,5],incred:5,load:[15,11],uc002yip:[30,23],onward:27,simpli:[27,24,15,11],publicli:11,stream:[5,11],point:[30,1],color:17,had:9,format:[7,8,24,5,12,23,31,27,11,17],"50m":[24,31],uc002yir:30,"46m":11,header:[29,12,19,3,11],permut:[26,11],bamtob:[20,8,11,2,27,17],suppli:26,"3000n":11,uc002yit:30,sanger:27,throughout:11,assum:[31,5,23,17,11],gcdgg:31,duplic:8,quit:11,sess:15,strong:6,uc002yiv:[30,13],second:[27,16,24,11],addition:11,receiv:27,"1000bp":16,fro:3,add:[19,0,2,25,27,16],been:[9,15,11],insuffici:27,valu:[23,14,19,27,5],interest:[24,5,9,31,27,11],modif:11,gd_mrna:27,immedi:15,quickli:[4,27,7,15],probe:2,rather:11,nuclb:11,uc010gkv:30,imag:[23,15],shuffl:26,search:[18,24,9,22,10,31,16],cnt3:29,ani:[19,8,21,24,5,25,27,16,11],bulk:11,coordin:[0,5,12,14,31,26,16,11,17],repeatmask:[21,8],togeth:[21,17,11],turn:26,gwa:10,repetit:[21,8],"1mb":24,present:[22,24,31],delimit:[27,9,5,12,11],known1:29,ugli:29,known3:29,ident:[26,5],look:[2,26,7,10,11],gnu:11,clp:15,align:[7,8,3,11,2,9,22,23,24,15,31,27,16,17],cov:8,sourceforg:27,aim:27,defin:[18,8,0,3,11,12,26,27,16],calcul:[9,7,19,11],bertha_0001:24,invers:27,abov:[27,7],cgcta:12,wild:[7,11],exist:[27,15,11],cneecfccf:31,chrom1:[27,31],observ:[29,17,5],chrom2:[27,31],program:[27,11],advantag:[9,11],almost:11,"2124m":23,site:[7,11],equal:7,pairedread:31,archiv:1,motiv:11,clip:0,myseq:12,var1:29,mani:[27,11],sever:[31,8,5,15,11],"null":[26,24],develop:11,welcom:11,minim:[18,24,11],perform:[24,27,9,7,3],suggest:[22,11],make:[27,25,21,1,11],interstiti:[9,7,24],hgtabl:11,"while":[18,0,10,11,26,24,25,4,16],cgfgccgggfc:31,complex:11,descend:[4,5],enrich:27,document:11,infer:[9,7],file3:[29,19],higher:[16,15,11],"1bp":[18,22,24,31],finish:11,http:[7,21,1,11,30,15,27],structur:[2,27,22,8,11],bedtool:[6,8,21,1,5,2,14,24,20,27,11,17],denot:17,interrog:11,blue:24,upon:11,hwieas_0001:27,decompress:11,read1:11,nix:1,read2:11,user:[0,27,31,24,11],pdf:24,pairtopair:[20,8,11,2,22,27],end1:[27,14,31],php:27,aka:11,recent:[2,11],gordon:[7,11],appropri:[26,30,23,5],linksb:[20,30,11],"38a11":31,entri:[31,7,8,0,21,12,24,11,9,23,25,26,27,16,17],thu:[31,9,8,24,11],touchingexon:8,well:[30,9,5,16,11],spent:11,inherit:11,thickli:27,contact:1,command:[7,21,1,11,29,9,24,17],thi:[0,24,29,3,5,7,10,11,9,14,15,16,17,18,21,22,23,1,25,26,27,28,20,30,31],choos:[10,8],gzip:11,salient:11,model:27,self:11,left:[16,15,31],distanc:[8,31,10,14,25,27,17],gffeaaddddggggggedgcgeggdegggggffcgggggggegdfggfgf:24,background:11,execut:26,less:4,paragraph:6,abam:[8,24,11,9,31,16],bed4:27,distant:25,cnt2:29,human:[27,30,8,23,11],variant1:5,regardless:11,variant3:5,variant2:5,yet:[24,5,31,27,11,17],cabam:31,"46bp":11,web:[30,11],versu:11,rapid:11,aaacc:12,bedtobam:[20,23,11],field:[7,24,11,9,23,15,31,27,17],complementb:[20,8,11,2,27,28],mutat:27,makefil:1,except:[2,26,11],bgetdg_kgcg:24,format1:27,rgb:27,discret:[13,11],inner:[2,31],overview:[6,11],samtool:[7,24,2,9,23,31,27,16,17],subsequ:[15,11],explanatori:11,match:[12,22,17,3],build:[27,30,11],bin:[21,7,1,11],applic:[31,11],complaint:11,around:16,recreat:26,last:[27,8,10,11],preserv:26,big:29,rna:[9,16,7,24,11],goldenpath:[7,11],choic:10,intrachromosom:31,five:11,know:[27,25,8,24,11],burden:11,chr20:17,blockstart:[27,9,7],apart:11,lexicograph:17,associ:26,scientist:11,licens:11,desc:4,linux:1,insert:[2,17],resid:11,like:[8,0,21,24,11,30,14,15,25,27],specif:[27,7,17,11],deprec:11,seek:11,arbitrari:9,manual:[27,30,21,11],html:[27,30,7,11],integ:[0,26],collect:15,benefit:11,sample1:2,sizea:4,chr21:[30,13,23,15,5],view:[7,24,2,9,23,31,16,17],output:[7,27,31,9,3,5,12,14,24,25,23,16,11,17,19],resiz:0,inter:[27,11],soft:3,page:[30,11],underli:27,www:[27,15,11],right:[16,15,31],often:[10,11],convei:20,captur:[2,3],spring:11,interv:[30,7,8,9,3,11,12,24,28,17,19],"1st":11,some:[27,20,1,11],begin:[15,11],ffec_jw:31,certain:26,chrthenscor:4,sampl:[2,22,19,15,8],flatten:27,"395m":23,respect:[24,29,9,22,31,16,17],proper:2,seq1:27,process:11,gwdfgfgff:24,librari:11,cnv:8,elegan:[27,11],txt:[19,11],"function":[20,11],avoid:26,deploy:11,definit:[27,11],aaatggaatcgaatggaatcaacatcaaatggaatcaaatggaatcattg:31,overlap:[18,2,31,7,8,21,10,11,29,9,22,14,24,20,25,27,16,5],summar:[9,5,11],filen:[29,19],ucsc:[7,8,11,30,23,27],evolv:11,readgroup:15,coding_exon:27,"1kb":24,l1p1:5,necessari:27,three:[5,11],straightforward:11,"25s6m1i11m7":24,blocksiz:27,cgi:11,core:11,encourag:11,object:27,run:[26,15,1],mrna:11,flankb:11,uncompress:[16,31,23,24,11],inspect:30,usag:[0,24,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,25,26,27,28,29,30,31],paper:11,broken:10,step:2,obei:27,repositori:[1,11],contig1112:27,geneb:[29,10],hba_human:27,post:1,subtract:[0,18,11],inclus:27,bga:7,about:5,central:11,greatli:11,pre:[27,5],column:[7,31,12,3,5,24,9,14,10,15,25,27,11,17],simrep:[24,31],commun:11,slightli:11,briefli:11,surround:16,degre:29,jobu_0001:31,hg18:[7,8,2,30,13,23,15],hg19:11,disabl:[18,10,9,25,16,17],my_featur:27,zxvf:[21,1],ispan:31,subset:[24,31],file1:[29,19],own:[3,11],effici:[23,15],antisens:12,acedb:27,basenam:30,within:[8,21,11,15,25,27,16],automat:26,dataset:[27,11],down:[2,27],empti:19,lieu:12,contributor:11,chang:5,batch:[15,11],mere:[4,27],annotaion:23,wao:24,freqdesc:5,accordingli:[0,5,1,11],git:11,span:[7,8,31,24,11,2,9,25,27,17],deal:[9,16,7,24],wai:[5,29,22,14,27,11],uc001aaa:27,"3288m":23,support:[27,11],question:[24,11],limit:11,fast:11,custom:[19,3,11,14,26,27,16],book:25,start:[6,19,0,21,10,11,29,12,14,15,4,27,17],fascin:11,appl:1,arithmet:6,includ:[29,27,31,19,11],fraction:[18,7,8,10,29,9,22,24,31],replac:26,forward:[2,12,16],interchromosom:17,machin:1,strand2:27,strand1:27,treat:[9,7,24,11],analysi:27,reduc:11,head:[7,8,24,30,13,23,15,31,17],basepair:[27,11],namesr:29,form:27,offer:9,forc:[18,31,12,10,29,9,22,24,25],ascend:[4,5],"3076bp":11,basic:[8,11],histogram:[9,7,11],link:[27,30,11],seqnam:27,might:[26,25,24,10,11],line:[19,8,21,1,5,29,9,14,24,26,27,11],uni:30,bug:11,info:11,notat:27,hire:24,made:11,wise:11,input:[7,31,3,5,24,12,13,14,10,27,26,23,16,11,19],consist:[27,9,19],possibl:11,whether:[24,8],aza:27,directori:[27,8,1,11],googlecod:[21,1,11],maximum:[7,25],record:27,below:[19,8,21,10,11,9,24,31,26,27,16,17],those:[2,8,24,21,11],absenc:[16,24],fundament:11,otherwis:22,"298m1784n71m1411n93m3963n80m1927n106m3608n81m1769n62m11856n89m98n82m816n61m6910n65m":23,similar:[27,16,10,5],reliabl:11,"30m":11,block:[7,24,11,9,13,23,27,17],rname:[24,17,31],reciproc:[24,8],constant:26,semicolon:[27,25],cover:[18,2,8,11,29,9,20],"abstract":20,mirror:30,"1000_genom":27,doesn:31,nascent:11,barnett:11,implement:11,intersectb:[18,8,21,10,5,2,9,24,25,27,16,11],file:[0,1,2,3,4,5,7,8,9,10,11,12,13,14,15,16,17,18,19,21,22,23,24,25,26,27,28,29,30,31],behavior:[0,24,29,3,4,5,7,9,10,11,12,13,14,15,16,18,19,22,23,25,26,28,20,30,31],chrthensiz:4,curl:[21,1],improv:11,filo:11,intra:31,chrominfo:11,ggeggg_gggggggggddgdggvg:24,freeli:11,"76bp":11,grp:5,todo:11,"1a2t45":24,when:[30,7,12,3,5,24,9,13,22,10,31,27,16,11,17,19],pct1:29,"738n64m146n100m1647n120m6478n162m1485n51m6777n60m10208n54m1229n54m2377n54m11268n58m":23,power:[6,27],"default":[0,24,29,3,4,5,7,8,9,10,11,12,13,14,15,16,17,18,19,22,23,25,26,28,20,30,31],valid:[26,5,15,11],futur:11,bed5:27,presenc:[16,24],test:[26,12,3],tie:[10,8],you:[19,1,5,2,14,24,15,31,26,27,16,11],thousand:11,asymmetr:[0,16],gaatcgactggaatcatcatcggatggaaatgaatggaataatcatcgaa:31,matur:11,repeat:[8,5,28,11],intend:1,polymorph:[10,11],symbol:11,"7a22c9c2t6":31,"1kg":2,in2:8,googl:11,properli:[2,17,11],chr22:11,"30kb":11,occasion:25,formal:11,gap:[26,8,11],stai:[5,11],genotyp:19,bed3:27,bedg:8,algorithm:11,scientif:27,util:[4,11],svg:15,suit:[6,20,11],pseudo:26,visual:23,rule:[26,11],them:[8,11],mimic:5,bedp:[8,11,2,22,31,27,17],ignor:[7,12,24,11,9,31,26,27],fact:[27,16,24,11],potenti:[26,27],time:[5,11],plu:24,escap:27,"5kb":16},objtypes:{},titles:["5.14 slopBed","Installation","Advanced usage","5.12 maskFastaFromBed","5.15 sortBed","5.22 groupBy","<strong>bedtools</strong>: <em>a powerful toolset for genome arithmetic</em>","5.10 genomeCoverageBed","Example usage","5.9 coverageBed","5.6 closestBed","Overview","5.11 fastaFromBed","5.21 bed12ToBed6","5.19 overlap","5.20 bedToIgv","5.5 windowBed","5.4 bamToBed","5.7 subtractBed","5.23 unionBedGraphs","The BEDTools suite","Quick start","5.3 pairToPair","5.18 bedToBam","5.1 intersect","5.8 mergeBed","5.13 shuffleBed","General usage","5.17 complementBed","5.24 annotateBed","5.16 linksBed","5.2 pairToBed"],objnames:{},filenames:["content/slopBed","content/installation","content/advanced-usage","content/maskfastafromBed","content/sortBed","content/groupBy","index","content/genomecoverageBed","content/example-usage","content/coverageBed","content/closestBed","content/overview","content/fastafromBed","content/bed12ToBed6","content/overlap","content/bedToIgv","content/windowBed","content/bamToBed","content/subtractBed","content/unionBedGraphs","content/bedtools-suite","content/quick-start","content/pairToPair","content/bedToBam","content/intersectBed","content/mergeBed","content/shuffleBed","content/general-usage","content/complementBed","content/annotateBed","content/linksBed","content/pairToBed"]}) \ No newline at end of file diff --git a/docs/_build/latex/Makefile b/docs/_build/latex/Makefile deleted file mode 100644 index 76e7c3e2..00000000 --- a/docs/_build/latex/Makefile +++ /dev/null @@ -1,66 +0,0 @@ -# Makefile for Sphinx LaTeX output - -ALLDOCS = $(basename $(wildcard *.tex)) -ALLPDF = $(addsuffix .pdf,$(ALLDOCS)) -ALLDVI = $(addsuffix .dvi,$(ALLDOCS)) - -# Prefix for archive names -ARCHIVEPRREFIX = -# Additional LaTeX options -LATEXOPTS = - -all: $(ALLPDF) -all-pdf: $(ALLPDF) -all-dvi: $(ALLDVI) -all-ps: all-dvi - for f in *.dvi; do dvips $$f; done - -all-pdf-ja: - for f in *.pdf *.png *.gif *.jpg *.jpeg; do ebb $$f; done - for f in *.tex; do platex -kanji=utf8 $(LATEXOPTS) $$f; done - for f in *.tex; do platex -kanji=utf8 $(LATEXOPTS) $$f; done - for f in *.tex; do platex -kanji=utf8 $(LATEXOPTS) $$f; done - for f in *.idx; do mendex -U -f -d "`basename $$f .idx`.dic" -s python.ist $$f; done - for f in *.tex; do platex -kanji=utf8 $(LATEXOPTS) $$f; done - for f in *.tex; do platex -kanji=utf8 $(LATEXOPTS) $$f; done - for f in *.dvi; do dvipdfmx $$f; done - -zip: all-$(FMT) - mkdir $(ARCHIVEPREFIX)docs-$(FMT) - cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT) - zip -q -r -9 $(ARCHIVEPREFIX)docs-$(FMT).zip $(ARCHIVEPREFIX)docs-$(FMT) - rm -r $(ARCHIVEPREFIX)docs-$(FMT) - -tar: all-$(FMT) - mkdir $(ARCHIVEPREFIX)docs-$(FMT) - cp $(ALLPDF) $(ARCHIVEPREFIX)docs-$(FMT) - tar cf $(ARCHIVEPREFIX)docs-$(FMT).tar $(ARCHIVEPREFIX)docs-$(FMT) - rm -r $(ARCHIVEPREFIX)docs-$(FMT) - -bz2: tar - bzip2 -9 -k $(ARCHIVEPREFIX)docs-$(FMT).tar - -# The number of LaTeX runs is quite conservative, but I don't expect it -# to get run often, so the little extra time won't hurt. -%.dvi: %.tex - latex $(LATEXOPTS) '$<' - latex $(LATEXOPTS) '$<' - latex $(LATEXOPTS) '$<' - -makeindex -s python.ist '$(basename $<).idx' - latex $(LATEXOPTS) '$<' - latex $(LATEXOPTS) '$<' - -%.pdf: %.tex - pdflatex $(LATEXOPTS) '$<' - pdflatex $(LATEXOPTS) '$<' - pdflatex $(LATEXOPTS) '$<' - -makeindex -s python.ist '$(basename $<).idx' - pdflatex $(LATEXOPTS) '$<' - pdflatex $(LATEXOPTS) '$<' - -clean: - rm -f *.dvi *.log *.ind *.aux *.toc *.syn *.idx *.out *.ilg *.pla - -.PHONY: all all-pdf all-dvi all-ps clean -.PHONY: all-pdf-ja - diff --git a/docs/_build/latex/bedtools.aux b/docs/_build/latex/bedtools.aux deleted file mode 100644 index fb18bc9e..00000000 --- a/docs/_build/latex/bedtools.aux +++ /dev/null @@ -1,463 +0,0 @@ -\relax -\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument} -\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined -\global\let\oldcontentsline\contentsline -\gdef\contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global\let\oldnewlabel\newlabel -\gdef\newlabel#1#2{\newlabelxx{#1}#2} -\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\ifx\hyper@anchor\@undefined -\let\contentsline\oldcontentsline -\let\newlabel\oldnewlabel -\fi} -\fi} -\global\let\hyper@last\relax -\gdef\HyperFirstAtBeginDocument#1{#1} -\providecommand\HyField@AuxAddToFields[1]{} -\select@language{english} -\@writefile{toc}{\select@language{english}} -\@writefile{lof}{\select@language{english}} -\@writefile{lot}{\select@language{english}} -\newlabel{index::doc}{{}{1}{\relax }{section*.2}{}} -\@writefile{toc}{\contentsline {chapter}{\numberline {1}Overview}{1}{chapter.1}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\newlabel{index:bedtools-a-powerful-toolset-for-genome-arithmetic}{{1}{1}{Overview\relax }{chapter.1}{}} -\newlabel{index:overview}{{1}{1}{Overview\relax }{chapter.1}{}} -\@writefile{toc}{\contentsline {chapter}{\numberline {2}Table of contents}{3}{chapter.2}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\newlabel{index:table-of-contents}{{2}{3}{Table of contents\relax }{chapter.2}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.1}Overview}{3}{section.2.1}} -\newlabel{content/overview:overview}{{2.1}{3}{Overview\relax }{section.2.1}{}} -\newlabel{content/overview::doc}{{2.1}{3}{Overview\relax }{section.2.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.1}1.1 Background}{3}{subsection.2.1.1}} -\newlabel{content/overview:background}{{2.1.1}{3}{1.1 Background\relax }{subsection.2.1.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.2}1.2 Summary of available tools.}{3}{subsection.2.1.2}} -\newlabel{content/overview:summary-of-available-tools}{{2.1.2}{3}{1.2 Summary of available tools}{subsection.2.1.2}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.3}1.3 Fundamental concepts.}{4}{subsection.2.1.3}} -\newlabel{content/overview:fundamental-concepts}{{2.1.3}{4}{1.3 Fundamental concepts}{subsection.2.1.3}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.1 What are genome features and how are they represented?}{4}{subsubsection*.3}} -\newlabel{content/overview:what-are-genome-features-and-how-are-they-represented}{{2.1.3}{4}{1.3.1 What are genome features and how are they represented?\relax }{subsubsection*.3}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.2 Overlapping / intersecting features.}{5}{subsubsection*.4}} -\newlabel{content/overview:overlapping-intersecting-features}{{2.1.3}{5}{1.3.2 Overlapping / intersecting features}{subsubsection*.4}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.3 Comparing features in file \IeC {\textquotedblleft }A\IeC {\textquotedblright } and file \IeC {\textquotedblleft }B\IeC {\textquotedblright }.}{5}{subsubsection*.5}} -\newlabel{content/overview:comparing-features-in-file-a-and-file-b}{{2.1.3}{5}{1.3.3 Comparing features in file “A†and file “Bâ€}{subsubsection*.5}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.4 BED starts are zero-based and BED ends are one-based.}{5}{subsubsection*.6}} -\newlabel{content/overview:bed-starts-are-zero-based-and-bed-ends-are-one-based}{{2.1.3}{5}{1.3.4 BED starts are zero-based and BED ends are one-based}{subsubsection*.6}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.5 GFF starts and ends are one-based.}{5}{subsubsection*.7}} -\newlabel{content/overview:gff-starts-and-ends-are-one-based}{{2.1.3}{5}{1.3.5 GFF starts and ends are one-based}{subsubsection*.7}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.6 VCF coordinates are one-based.}{6}{subsubsection*.8}} -\newlabel{content/overview:vcf-coordinates-are-one-based}{{2.1.3}{6}{1.3.6 VCF coordinates are one-based}{subsubsection*.8}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.7 File B is loaded into memory (most of the time).}{6}{subsubsection*.9}} -\newlabel{content/overview:file-b-is-loaded-into-memory-most-of-the-time}{{2.1.3}{6}{1.3.7 File B is loaded into memory (most of the time)}{subsubsection*.9}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.8 Feature files \emph {must} be tab-delimited.}{6}{subsubsection*.10}} -\newlabel{content/overview:feature-files-must-be-tab-delimited}{{2.1.3}{6}{1.3.8 Feature files \emph {must} be tab-delimited}{subsubsection*.10}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.9 All BEDTools allow features to be \IeC {\textquotedblleft }piped\IeC {\textquotedblright } via standard input.}{6}{subsubsection*.11}} -\newlabel{content/overview:all-bedtools-allow-features-to-be-piped-via-standard-input}{{2.1.3}{6}{1.3.9 All BEDTools allow features to be “piped†via standard input}{subsubsection*.11}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.10 Most BEDTools write their results to standard output.}{6}{subsubsection*.12}} -\newlabel{content/overview:most-bedtools-write-their-results-to-standard-output}{{2.1.3}{6}{1.3.10 Most BEDTools write their results to standard output}{subsubsection*.12}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.11 What is a \IeC {\textquotedblleft }genome\IeC {\textquotedblright } file?}{7}{subsubsection*.13}} -\newlabel{content/overview:what-is-a-genome-file}{{2.1.3}{7}{1.3.11 What is a “genome†file?\relax }{subsubsection*.13}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.12 Paired-end BED files (BEDPE files).}{7}{subsubsection*.14}} -\newlabel{content/overview:paired-end-bed-files-bedpe-files}{{2.1.3}{7}{1.3.12 Paired-end BED files (BEDPE files)}{subsubsection*.14}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.13 Use \IeC {\textquotedblleft }-h\IeC {\textquotedblright } for help with any BEDTool.}{7}{subsubsection*.15}} -\newlabel{content/overview:use-h-for-help-with-any-bedtool}{{2.1.3}{7}{1.3.13 Use “-h†for help with any BEDTool}{subsubsection*.15}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.14 BED features must not contain negative positions.}{7}{subsubsection*.16}} -\newlabel{content/overview:bed-features-must-not-contain-negative-positions}{{2.1.3}{7}{1.3.14 BED features must not contain negative positions}{subsubsection*.16}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.15 The start position must be \textless {}= to the end position.}{7}{subsubsection*.17}} -\newlabel{content/overview:the-start-position-must-be-to-the-end-position}{{2.1.3}{7}{1.3.15 The start position must be \textless {}= to the end position}{subsubsection*.17}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.16 Headers are allowed in GFF and BED files}{7}{subsubsection*.18}} -\newlabel{content/overview:headers-are-allowed-in-gff-and-bed-files}{{2.1.3}{7}{1.3.16 Headers are allowed in GFF and BED files\relax }{subsubsection*.18}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be \IeC {\textquotedblleft }gzipped\IeC {\textquotedblright }}{8}{subsubsection*.19}} -\newlabel{content/overview:gzip-support-bed-gff-vcf-and-bedpe-file-can-be-gzipped}{{2.1.3}{8}{1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzippedâ€\relax }{subsubsection*.19}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.18 Support for \IeC {\textquotedblleft }split\IeC {\textquotedblright } or \IeC {\textquotedblleft }spliced\IeC {\textquotedblright } BAM alignments and \IeC {\textquotedblleft }blocked\IeC {\textquotedblright } BED features}{8}{subsubsection*.20}} -\newlabel{content/overview:support-for-split-or-spliced-bam-alignments-and-blocked-bed-features}{{2.1.3}{8}{1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features\relax }{subsubsection*.20}{}} -\@writefile{toc}{\contentsline {subsubsection}{1.3.19 Writing uncompressed BAM output.}{8}{subsubsection*.21}} -\newlabel{content/overview:writing-uncompressed-bam-output}{{2.1.3}{8}{1.3.19 Writing uncompressed BAM output}{subsubsection*.21}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.4}1.4 Implementation and algorithmic notes.}{8}{subsection.2.1.4}} -\newlabel{content/overview:implementation-and-algorithmic-notes}{{2.1.4}{8}{1.4 Implementation and algorithmic notes}{subsection.2.1.4}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.5}1.5 License and availability.}{9}{subsection.2.1.5}} -\newlabel{content/overview:license-and-availability}{{2.1.5}{9}{1.5 License and availability}{subsection.2.1.5}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.6}1.6 Mailing list.}{9}{subsection.2.1.6}} -\newlabel{content/overview:mailing-list}{{2.1.6}{9}{1.6 Mailing list}{subsection.2.1.6}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.1.7}1.7 Contributors.}{9}{subsection.2.1.7}} -\newlabel{content/overview:contributors}{{2.1.7}{9}{1.7 Contributors}{subsection.2.1.7}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.2}Installation}{9}{section.2.2}} -\newlabel{content/installation:installation}{{2.2}{9}{Installation\relax }{section.2.2}{}} -\newlabel{content/installation::doc}{{2.2}{9}{Installation\relax }{section.2.2}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.3}Quick start}{9}{section.2.3}} -\newlabel{content/quick-start:quick-start}{{2.3}{9}{Quick start\relax }{section.2.3}{}} -\newlabel{content/quick-start::doc}{{2.3}{9}{Quick start\relax }{section.2.3}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.3.1}Install BEDTools}{9}{subsection.2.3.1}} -\newlabel{content/quick-start:install-bedtools}{{2.3.1}{9}{Install BEDTools\relax }{subsection.2.3.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.3.2}Use BEDTools}{10}{subsection.2.3.2}} -\newlabel{content/quick-start:use-bedtools}{{2.3.2}{10}{Use BEDTools\relax }{subsection.2.3.2}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.4}General usage}{10}{section.2.4}} -\newlabel{content/general-usage::doc}{{2.4}{10}{General usage\relax }{section.2.4}{}} -\newlabel{content/general-usage:general-usage}{{2.4}{10}{General usage\relax }{section.2.4}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.4.1}4.1 Supported file formats}{10}{subsection.2.4.1}} -\newlabel{content/general-usage:supported-file-formats}{{2.4.1}{10}{4.1 Supported file formats\relax }{subsection.2.4.1}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.1 BED format}{10}{subsubsection*.22}} -\newlabel{content/general-usage:bed-format}{{2.4.1}{10}{4.1.1 BED format\relax }{subsubsection*.22}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.2 BEDPE format}{12}{subsubsection*.23}} -\newlabel{content/general-usage:bedpe-format}{{2.4.1}{12}{4.1.2 BEDPE format\relax }{subsubsection*.23}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.3 GFF format}{13}{subsubsection*.24}} -\newlabel{content/general-usage:gff-format}{{2.4.1}{13}{4.1.3 GFF format\relax }{subsubsection*.24}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.3 GFF format}{14}{subsubsection*.25}} -\newlabel{content/general-usage:id1}{{2.4.1}{14}{4.1.3 GFF format\relax }{subsubsection*.25}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.5 SAM/BAM format}{15}{subsubsection*.26}} -\newlabel{content/general-usage:sam-bam-format}{{2.4.1}{15}{4.1.5 SAM/BAM format\relax }{subsubsection*.26}{}} -\@writefile{toc}{\contentsline {subsubsection}{4.1.6 VCF format}{15}{subsubsection*.27}} -\newlabel{content/general-usage:vcf-format}{{2.4.1}{15}{4.1.6 VCF format\relax }{subsubsection*.27}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.5}The BEDTools suite}{15}{section.2.5}} -\newlabel{content/bedtools-suite:the-bedtools-suite}{{2.5}{15}{The BEDTools suite\relax }{section.2.5}{}} -\newlabel{content/bedtools-suite::doc}{{2.5}{15}{The BEDTools suite\relax }{section.2.5}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.5.1}Table of contents}{15}{subsection.2.5.1}} -\newlabel{content/bedtools-suite:table-of-contents}{{2.5.1}{15}{Table of contents\relax }{subsection.2.5.1}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.1 intersectBed}{15}{subsubsection*.28}} -\newlabel{content/intersectBed:intersectbed}{{2.5.1}{15}{5.1 intersectBed\relax }{subsubsection*.28}{}} -\newlabel{content/intersectBed::doc}{{2.5.1}{15}{5.1 intersectBed\relax }{subsubsection*.28}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.1 Usage and option summary}{15}{paragraph*.29}} -\newlabel{content/intersectBed:usage-and-option-summary}{{2.5.1}{15}{5.1.1 Usage and option summary\relax }{paragraph*.29}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.2 Default behavior}{16}{paragraph*.30}} -\newlabel{content/intersectBed:default-behavior}{{2.5.1}{16}{5.1.2 Default behavior\relax }{paragraph*.30}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.3 (-wa)Reporting the original A feature}{17}{paragraph*.31}} -\newlabel{content/intersectBed:wa-reporting-the-original-a-feature}{{2.5.1}{17}{5.1.3 (-wa)Reporting the original A feature\relax }{paragraph*.31}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.4 (-wb)Reporting the original B feature}{17}{paragraph*.32}} -\newlabel{content/intersectBed:wb-reporting-the-original-b-feature}{{2.5.1}{17}{5.1.4 (-wb)Reporting the original B feature\relax }{paragraph*.32}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.5 (-u)Reporting the presence of \emph {at least one} overlapping feature}{18}{paragraph*.33}} -\newlabel{content/intersectBed:u-reporting-the-presence-of-at-least-one-overlapping-feature}{{2.5.1}{18}{5.1.5 (-u)Reporting the presence of \emph {at least one} overlapping feature\relax }{paragraph*.33}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.6 (-c)Reporting the number of overlapping features}{18}{paragraph*.34}} -\newlabel{content/intersectBed:c-reporting-the-number-of-overlapping-features}{{2.5.1}{18}{5.1.6 (-c)Reporting the number of overlapping features\relax }{paragraph*.34}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.6 (-c)Reporting the number of overlapping features}{18}{paragraph*.35}} -\newlabel{content/intersectBed:id1}{{2.5.1}{18}{5.1.6 (-c)Reporting the number of overlapping features\relax }{paragraph*.35}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.7 (-v)Reporting the absence of any overlapping features}{19}{paragraph*.36}} -\newlabel{content/intersectBed:v-reporting-the-absence-of-any-overlapping-features}{{2.5.1}{19}{5.1.7 (-v)Reporting the absence of any overlapping features\relax }{paragraph*.36}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.8 (-f)Requiring a minimal overlap fraction}{19}{paragraph*.37}} -\newlabel{content/intersectBed:f-requiring-a-minimal-overlap-fraction}{{2.5.1}{19}{5.1.8 (-f)Requiring a minimal overlap fraction\relax }{paragraph*.37}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction}{19}{paragraph*.38}} -\newlabel{content/intersectBed:r-combined-with-f-requiring-reciprocal-minimal-overlap-fraction}{{2.5.1}{19}{5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction\relax }{paragraph*.38}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.10 (-s)Enforcing ``strandedness''}{20}{paragraph*.39}} -\newlabel{content/intersectBed:s-enforcing-strandedness}{{2.5.1}{20}{5.1.10 (-s)Enforcing ``strandedness''\relax }{paragraph*.39}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.11 (-abam)Default behavior when using BAM input}{20}{paragraph*.40}} -\newlabel{content/intersectBed:abam-default-behavior-when-using-bam-input}{{2.5.1}{20}{5.1.11 (-abam)Default behavior when using BAM input\relax }{paragraph*.40}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.12 (-bed)Output BED format when using BAM input}{20}{paragraph*.41}} -\newlabel{content/intersectBed:bed-output-bed-format-when-using-bam-input}{{2.5.1}{20}{5.1.12 (-bed)Output BED format when using BAM input\relax }{paragraph*.41}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features}{21}{paragraph*.42}} -\newlabel{content/intersectBed:split-reporting-overlaps-with-spliced-alignments-or-blocked-bed-features}{{2.5.1}{21}{5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features\relax }{paragraph*.42}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.2 pairToBed}{22}{subsubsection*.43}} -\newlabel{content/pairToBed::doc}{{2.5.1}{22}{5.2 pairToBed\relax }{subsubsection*.43}{}} -\newlabel{content/pairToBed:pairtobed}{{2.5.1}{22}{5.2 pairToBed\relax }{subsubsection*.43}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.1 Usage and option summary}{22}{paragraph*.44}} -\newlabel{content/pairToBed:usage-and-option-summary}{{2.5.1}{22}{5.2.1 Usage and option summary\relax }{paragraph*.44}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.2 Default behavior}{24}{paragraph*.45}} -\newlabel{content/pairToBed:default-behavior}{{2.5.1}{24}{5.2.2 Default behavior\relax }{paragraph*.45}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.3 (-type)Optional overlap requirements}{24}{paragraph*.46}} -\newlabel{content/pairToBed:type-optional-overlap-requirements}{{2.5.1}{24}{5.2.3 (-type)Optional overlap requirements\relax }{paragraph*.46}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.4 (-f)Requiring a minimum overlap fraction}{27}{paragraph*.47}} -\newlabel{content/pairToBed:f-requiring-a-minimum-overlap-fraction}{{2.5.1}{27}{5.2.4 (-f)Requiring a minimum overlap fraction\relax }{paragraph*.47}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.5 (-s)Enforcing ``strandedness''}{27}{paragraph*.48}} -\newlabel{content/pairToBed:s-enforcing-strandedness}{{2.5.1}{27}{5.2.5 (-s)Enforcing ``strandedness''\relax }{paragraph*.48}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.6 (-abam)Default is to write BAM output when using BAM input}{28}{paragraph*.49}} -\newlabel{content/pairToBed:abam-default-is-to-write-bam-output-when-using-bam-input}{{2.5.1}{28}{5.2.6 (-abam)Default is to write BAM output when using BAM input\relax }{paragraph*.49}{}} -\@writefile{toc}{\contentsline {paragraph}{5.2.7 (-bedpe)Output BEDPE format when using BAM input}{28}{paragraph*.50}} -\newlabel{content/pairToBed:bedpe-output-bedpe-format-when-using-bam-input}{{2.5.1}{28}{5.2.7 (-bedpe)Output BEDPE format when using BAM input\relax }{paragraph*.50}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.3 pairToPair}{29}{subsubsection*.51}} -\newlabel{content/pairToPair:pairtopair}{{2.5.1}{29}{5.3 pairToPair\relax }{subsubsection*.51}{}} -\newlabel{content/pairToPair::doc}{{2.5.1}{29}{5.3 pairToPair\relax }{subsubsection*.51}{}} -\@writefile{toc}{\contentsline {paragraph}{5.3.1 Usage and option summary}{29}{paragraph*.52}} -\newlabel{content/pairToPair:usage-and-option-summary}{{2.5.1}{29}{5.3.1 Usage and option summary\relax }{paragraph*.52}{}} -\@writefile{toc}{\contentsline {paragraph}{5.3.2 Default behavior}{29}{paragraph*.53}} -\newlabel{content/pairToPair:default-behavior}{{2.5.1}{29}{5.3.2 Default behavior\relax }{paragraph*.53}{}} -\@writefile{toc}{\contentsline {paragraph}{5.3.3 (-type neither)Optional overlap requirements}{30}{paragraph*.54}} -\newlabel{content/pairToPair:type-neither-optional-overlap-requirements}{{2.5.1}{30}{5.3.3 (-type neither)Optional overlap requirements\relax }{paragraph*.54}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.4 bamToBed}{30}{subsubsection*.55}} -\newlabel{content/bamToBed:bamtobed}{{2.5.1}{30}{5.4 bamToBed\relax }{subsubsection*.55}{}} -\newlabel{content/bamToBed::doc}{{2.5.1}{30}{5.4 bamToBed\relax }{subsubsection*.55}{}} -\@writefile{toc}{\contentsline {paragraph}{5.4.1 Usage and option summary}{30}{paragraph*.56}} -\newlabel{content/bamToBed:usage-and-option-summary}{{2.5.1}{30}{5.4.1 Usage and option summary\relax }{paragraph*.56}{}} -\@writefile{toc}{\contentsline {paragraph}{5.4.2 (-split)Creating BED12 features from ``spliced'' BAM entries.}{32}{paragraph*.57}} -\newlabel{content/bamToBed:split-creating-bed12-features-from-spliced-bam-entries}{{2.5.1}{32}{5.4.2 (-split)Creating BED12 features from ``spliced'' BAM entries}{paragraph*.57}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.5 windowBed}{32}{subsubsection*.58}} -\newlabel{content/windowBed:windowbed}{{2.5.1}{32}{5.5 windowBed\relax }{subsubsection*.58}{}} -\newlabel{content/windowBed::doc}{{2.5.1}{32}{5.5 windowBed\relax }{subsubsection*.58}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.1 Usage and option summary}{32}{paragraph*.59}} -\newlabel{content/windowBed:usage-and-option-summary}{{2.5.1}{32}{5.5.1 Usage and option summary\relax }{paragraph*.59}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.2 Default behavior}{33}{paragraph*.60}} -\newlabel{content/windowBed:default-behavior}{{2.5.1}{33}{5.5.2 Default behavior\relax }{paragraph*.60}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.3 (-w)Defining a custom window size}{33}{paragraph*.61}} -\newlabel{content/windowBed:w-defining-a-custom-window-size}{{2.5.1}{33}{5.5.3 (-w)Defining a custom window size\relax }{paragraph*.61}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.4 (-l and -r)Defining assymteric windows}{34}{paragraph*.62}} -\newlabel{content/windowBed:l-and-r-defining-assymteric-windows}{{2.5.1}{34}{5.5.4 (-l and -r)Defining assymteric windows\relax }{paragraph*.62}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.5 (-sw)Defining assymteric windows based on strand}{34}{paragraph*.63}} -\newlabel{content/windowBed:sw-defining-assymteric-windows-based-on-strand}{{2.5.1}{34}{5.5.5 (-sw)Defining assymteric windows based on strand\relax }{paragraph*.63}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.6 (-sm)Enforcing ``strandedness''}{35}{paragraph*.64}} -\newlabel{content/windowBed:sm-enforcing-strandedness}{{2.5.1}{35}{5.5.6 (-sm)Enforcing ``strandedness''\relax }{paragraph*.64}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.7 (-u)Reporting the presence of at least one overlapping feature}{35}{paragraph*.65}} -\newlabel{content/windowBed:u-reporting-the-presence-of-at-least-one-overlapping-feature}{{2.5.1}{35}{5.5.7 (-u)Reporting the presence of at least one overlapping feature\relax }{paragraph*.65}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.8 (-c)Reporting the number of overlapping features}{35}{paragraph*.66}} -\newlabel{content/windowBed:c-reporting-the-number-of-overlapping-features}{{2.5.1}{35}{5.5.8 (-c)Reporting the number of overlapping features\relax }{paragraph*.66}{}} -\@writefile{toc}{\contentsline {paragraph}{5.5.9 (-v)Reporting the absence of any overlapping features}{35}{paragraph*.67}} -\newlabel{content/windowBed:v-reporting-the-absence-of-any-overlapping-features}{{2.5.1}{35}{5.5.9 (-v)Reporting the absence of any overlapping features\relax }{paragraph*.67}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.6 closestBed}{35}{subsubsection*.68}} -\newlabel{content/closestBed:closestbed}{{2.5.1}{35}{5.6 closestBed\relax }{subsubsection*.68}{}} -\newlabel{content/closestBed::doc}{{2.5.1}{35}{5.6 closestBed\relax }{subsubsection*.68}{}} -\@writefile{toc}{\contentsline {paragraph}{5.6.1 Usage and option summary}{35}{paragraph*.69}} -\newlabel{content/closestBed:usage-and-option-summary}{{2.5.1}{35}{5.6.1 Usage and option summary\relax }{paragraph*.69}{}} -\@writefile{toc}{\contentsline {paragraph}{5.6.2 Default behavior}{36}{paragraph*.70}} -\newlabel{content/closestBed:default-behavior}{{2.5.1}{36}{5.6.2 Default behavior\relax }{paragraph*.70}{}} -\@writefile{toc}{\contentsline {paragraph}{5.6.3 (-s)Enforcing ``strandedness''}{36}{paragraph*.71}} -\newlabel{content/closestBed:s-enforcing-strandedness}{{2.5.1}{36}{5.6.3 (-s)Enforcing ``strandedness''\relax }{paragraph*.71}{}} -\@writefile{toc}{\contentsline {paragraph}{5.6.4 (-t)Controlling how ties for ``closest'' are broken}{37}{paragraph*.72}} -\newlabel{content/closestBed:t-controlling-how-ties-for-closest-are-broken}{{2.5.1}{37}{5.6.4 (-t)Controlling how ties for ``closest'' are broken\relax }{paragraph*.72}{}} -\@writefile{toc}{\contentsline {paragraph}{5.6.5 (-d)Reporting the distance to the closest feature in base pairs}{37}{paragraph*.73}} -\newlabel{content/closestBed:d-reporting-the-distance-to-the-closest-feature-in-base-pairs}{{2.5.1}{37}{5.6.5 (-d)Reporting the distance to the closest feature in base pairs\relax }{paragraph*.73}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.7 subtractBed}{37}{subsubsection*.74}} -\newlabel{content/subtractBed:subtractbed}{{2.5.1}{37}{5.7 subtractBed\relax }{subsubsection*.74}{}} -\newlabel{content/subtractBed::doc}{{2.5.1}{37}{5.7 subtractBed\relax }{subsubsection*.74}{}} -\@writefile{toc}{\contentsline {paragraph}{5.7.1 Usage and option summary}{38}{paragraph*.75}} -\newlabel{content/subtractBed:usage-and-option-summary}{{2.5.1}{38}{5.7.1 Usage and option summary\relax }{paragraph*.75}{}} -\@writefile{toc}{\contentsline {paragraph}{5.7.2 Default behavior}{38}{paragraph*.76}} -\newlabel{content/subtractBed:default-behavior}{{2.5.1}{38}{5.7.2 Default behavior\relax }{paragraph*.76}{}} -\@writefile{toc}{\contentsline {paragraph}{5.7.3 (-f)Requiring a minimal overlap fraction before subtracting}{38}{paragraph*.77}} -\newlabel{content/subtractBed:f-requiring-a-minimal-overlap-fraction-before-subtracting}{{2.5.1}{38}{5.7.3 (-f)Requiring a minimal overlap fraction before subtracting\relax }{paragraph*.77}{}} -\@writefile{toc}{\contentsline {paragraph}{5.7.4 (-s)Enforcing ``strandedness''}{39}{paragraph*.78}} -\newlabel{content/subtractBed:s-enforcing-strandedness}{{2.5.1}{39}{5.7.4 (-s)Enforcing ``strandedness''\relax }{paragraph*.78}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.8 mergeBed}{39}{subsubsection*.79}} -\newlabel{content/mergeBed:mergebed}{{2.5.1}{39}{5.8 mergeBed\relax }{subsubsection*.79}{}} -\newlabel{content/mergeBed::doc}{{2.5.1}{39}{5.8 mergeBed\relax }{subsubsection*.79}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.1 Usage and option summary}{39}{paragraph*.80}} -\newlabel{content/mergeBed:usage-and-option-summary}{{2.5.1}{39}{5.8.1 Usage and option summary\relax }{paragraph*.80}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.2 Default behavior}{39}{paragraph*.81}} -\newlabel{content/mergeBed:default-behavior}{{2.5.1}{39}{5.8.2 Default behavior\relax }{paragraph*.81}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.3 (-s)Enforcing ``strandedness''}{39}{paragraph*.82}} -\newlabel{content/mergeBed:s-enforcing-strandedness}{{2.5.1}{39}{5.8.3 (-s)Enforcing ``strandedness''\relax }{paragraph*.82}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.4 (-n)Reporting the number of features that were merged}{40}{paragraph*.83}} -\newlabel{content/mergeBed:n-reporting-the-number-of-features-that-were-merged}{{2.5.1}{40}{5.8.4 (-n)Reporting the number of features that were merged\relax }{paragraph*.83}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.5 (-d)Controlling how close two features must be in order to merge}{40}{paragraph*.84}} -\newlabel{content/mergeBed:d-controlling-how-close-two-features-must-be-in-order-to-merge}{{2.5.1}{40}{5.8.5 (-d)Controlling how close two features must be in order to merge\relax }{paragraph*.84}{}} -\@writefile{toc}{\contentsline {paragraph}{5.8.6 (-nms)Reporting the names of the features that were merged}{40}{paragraph*.85}} -\newlabel{content/mergeBed:nms-reporting-the-names-of-the-features-that-were-merged}{{2.5.1}{40}{5.8.6 (-nms)Reporting the names of the features that were merged\relax }{paragraph*.85}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.9 coverageBed}{41}{subsubsection*.86}} -\newlabel{content/coverageBed:coveragebed}{{2.5.1}{41}{5.9 coverageBed\relax }{subsubsection*.86}{}} -\newlabel{content/coverageBed::doc}{{2.5.1}{41}{5.9 coverageBed\relax }{subsubsection*.86}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.1 Usage and option summary}{41}{paragraph*.87}} -\newlabel{content/coverageBed:usage-and-option-summary}{{2.5.1}{41}{5.9.1 Usage and option summary\relax }{paragraph*.87}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.2 Default behavior}{41}{paragraph*.88}} -\newlabel{content/coverageBed:default-behavior}{{2.5.1}{41}{5.9.2 Default behavior\relax }{paragraph*.88}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.4 (-s)Calculating coverage by strand}{42}{paragraph*.89}} -\newlabel{content/coverageBed:s-calculating-coverage-by-strand}{{2.5.1}{42}{5.9.4 (-s)Calculating coverage by strand\relax }{paragraph*.89}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file}{43}{paragraph*.90}} -\newlabel{content/coverageBed:hist-creating-a-histogram-of-coverage-for-each-feature-in-the-b-file}{{2.5.1}{43}{5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file\relax }{paragraph*.90}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file}{43}{paragraph*.91}} -\newlabel{content/coverageBed:hist-reporting-the-per-base-of-coverage-for-each-feature-in-the-b-file}{{2.5.1}{43}{5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file\relax }{paragraph*.91}{}} -\@writefile{toc}{\contentsline {paragraph}{5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features}{44}{paragraph*.92}} -\newlabel{content/coverageBed:split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features}{{2.5.1}{44}{5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features\relax }{paragraph*.92}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.10 genomeCoverageBed}{44}{subsubsection*.93}} -\newlabel{content/genomecoverageBed:genomecoveragebed}{{2.5.1}{44}{5.10 genomeCoverageBed\relax }{subsubsection*.93}{}} -\newlabel{content/genomecoverageBed::doc}{{2.5.1}{44}{5.10 genomeCoverageBed\relax }{subsubsection*.93}{}} -\@writefile{toc}{\contentsline {paragraph}{5.10.1 Usage and option summary}{44}{paragraph*.94}} -\newlabel{content/genomecoverageBed:usage-and-option-summary}{{2.5.1}{44}{5.10.1 Usage and option summary\relax }{paragraph*.94}{}} -\@writefile{toc}{\contentsline {paragraph}{5.10.2 Default behavior}{45}{paragraph*.95}} -\newlabel{content/genomecoverageBed:default-behavior}{{2.5.1}{45}{5.10.2 Default behavior\relax }{paragraph*.95}{}} -\@writefile{toc}{\contentsline {paragraph}{5.10.3 (-max)Controlling the histogram's maximum depth}{46}{paragraph*.96}} -\newlabel{content/genomecoverageBed:max-controlling-the-histogram-s-maximum-depth}{{2.5.1}{46}{5.10.3 (-max)Controlling the histogram's maximum depth\relax }{paragraph*.96}{}} -\@writefile{toc}{\contentsline {paragraph}{5.10.4 (-d)Reporting ``per-base'' genome coverage}{46}{paragraph*.97}} -\newlabel{content/genomecoverageBed:d-reporting-per-base-genome-coverage}{{2.5.1}{46}{5.10.4 (-d)Reporting ``per-base'' genome coverage\relax }{paragraph*.97}{}} -\@writefile{toc}{\contentsline {paragraph}{5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features}{46}{paragraph*.98}} -\newlabel{content/genomecoverageBed:split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features}{{2.5.1}{46}{5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features\relax }{paragraph*.98}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.11 fastaFromBed}{46}{subsubsection*.99}} -\newlabel{content/fastafromBed:fastafrombed}{{2.5.1}{46}{5.11 fastaFromBed\relax }{subsubsection*.99}{}} -\newlabel{content/fastafromBed::doc}{{2.5.1}{46}{5.11 fastaFromBed\relax }{subsubsection*.99}{}} -\@writefile{toc}{\contentsline {paragraph}{5.11.1 Usage and option summary}{47}{paragraph*.100}} -\newlabel{content/fastafromBed:usage-and-option-summary}{{2.5.1}{47}{5.11.1 Usage and option summary\relax }{paragraph*.100}{}} -\@writefile{toc}{\contentsline {paragraph}{5.11.2 Default behavior}{47}{paragraph*.101}} -\newlabel{content/fastafromBed:default-behavior}{{2.5.1}{47}{5.11.2 Default behavior\relax }{paragraph*.101}{}} -\@writefile{toc}{\contentsline {paragraph}{5.11.3 Using the BED ``name'' column as a FASTA header.}{47}{paragraph*.102}} -\newlabel{content/fastafromBed:using-the-bed-name-column-as-a-fasta-header}{{2.5.1}{47}{5.11.3 Using the BED ``name'' column as a FASTA header}{paragraph*.102}{}} -\@writefile{toc}{\contentsline {paragraph}{5.11.4 Creating a tab-delimited output file in lieu of FASTA output.}{48}{paragraph*.103}} -\newlabel{content/fastafromBed:creating-a-tab-delimited-output-file-in-lieu-of-fasta-output}{{2.5.1}{48}{5.11.4 Creating a tab-delimited output file in lieu of FASTA output}{paragraph*.103}{}} -\@writefile{toc}{\contentsline {paragraph}{5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand}{48}{paragraph*.104}} -\newlabel{content/fastafromBed:s-forcing-the-extracted-sequence-to-reflect-the-requested-strand}{{2.5.1}{48}{5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand\relax }{paragraph*.104}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.12 maskFastaFromBed}{48}{subsubsection*.105}} -\newlabel{content/maskfastafromBed:maskfastafrombed}{{2.5.1}{48}{5.12 maskFastaFromBed\relax }{subsubsection*.105}{}} -\newlabel{content/maskfastafromBed::doc}{{2.5.1}{48}{5.12 maskFastaFromBed\relax }{subsubsection*.105}{}} -\@writefile{toc}{\contentsline {paragraph}{5.12.1 Usage and option summary}{48}{paragraph*.106}} -\newlabel{content/maskfastafromBed:usage-and-option-summary}{{2.5.1}{48}{5.12.1 Usage and option summary\relax }{paragraph*.106}{}} -\@writefile{toc}{\contentsline {paragraph}{5.12.2 Default behavior}{49}{paragraph*.107}} -\newlabel{content/maskfastafromBed:default-behavior}{{2.5.1}{49}{5.12.2 Default behavior\relax }{paragraph*.107}{}} -\@writefile{toc}{\contentsline {paragraph}{5.12.3 Soft-masking the FASTA file.}{49}{paragraph*.108}} -\newlabel{content/maskfastafromBed:soft-masking-the-fasta-file}{{2.5.1}{49}{5.12.3 Soft-masking the FASTA file}{paragraph*.108}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.13 shuffleBed}{49}{subsubsection*.109}} -\newlabel{content/shuffleBed:shufflebed}{{2.5.1}{49}{5.13 shuffleBed\relax }{subsubsection*.109}{}} -\newlabel{content/shuffleBed::doc}{{2.5.1}{49}{5.13 shuffleBed\relax }{subsubsection*.109}{}} -\@writefile{toc}{\contentsline {paragraph}{5.13.1 Usage and option summary}{49}{paragraph*.110}} -\newlabel{content/shuffleBed:usage-and-option-summary}{{2.5.1}{49}{5.13.1 Usage and option summary\relax }{paragraph*.110}{}} -\@writefile{toc}{\contentsline {paragraph}{5.13.2 Default behavior}{50}{paragraph*.111}} -\newlabel{content/shuffleBed:default-behavior}{{2.5.1}{50}{5.13.2 Default behavior\relax }{paragraph*.111}{}} -\@writefile{toc}{\contentsline {paragraph}{5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome}{50}{paragraph*.112}} -\newlabel{content/shuffleBed:chrom-requiring-that-features-be-shuffled-on-the-same-chromosome}{{2.5.1}{50}{5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome\relax }{paragraph*.112}{}} -\@writefile{toc}{\contentsline {paragraph}{5.13.4 Excluding certain genome regions from shuffleBed}{51}{paragraph*.113}} -\newlabel{content/shuffleBed:excluding-certain-genome-regions-from-shufflebed}{{2.5.1}{51}{5.13.4 Excluding certain genome regions from shuffleBed\relax }{paragraph*.113}{}} -\@writefile{toc}{\contentsline {paragraph}{5.13.5 Defining a ``seed'' for the random replacement.}{51}{paragraph*.114}} -\newlabel{content/shuffleBed:defining-a-seed-for-the-random-replacement}{{2.5.1}{51}{5.13.5 Defining a ``seed'' for the random replacement}{paragraph*.114}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.14 slopBed}{52}{subsubsection*.115}} -\newlabel{content/slopBed:slopbed}{{2.5.1}{52}{5.14 slopBed\relax }{subsubsection*.115}{}} -\newlabel{content/slopBed::doc}{{2.5.1}{52}{5.14 slopBed\relax }{subsubsection*.115}{}} -\@writefile{toc}{\contentsline {paragraph}{5.14.1 Usage and option summary}{52}{paragraph*.116}} -\newlabel{content/slopBed:usage-and-option-summary}{{2.5.1}{52}{5.14.1 Usage and option summary\relax }{paragraph*.116}{}} -\@writefile{toc}{\contentsline {paragraph}{5.14.2 Default behavior}{52}{paragraph*.117}} -\newlabel{content/slopBed:default-behavior}{{2.5.1}{52}{5.14.2 Default behavior\relax }{paragraph*.117}{}} -\@writefile{toc}{\contentsline {paragraph}{5.14.3 Resizing features according to strand}{53}{paragraph*.118}} -\newlabel{content/slopBed:resizing-features-according-to-strand}{{2.5.1}{53}{5.14.3 Resizing features according to strand\relax }{paragraph*.118}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.15 sortBed}{53}{subsubsection*.119}} -\newlabel{content/sortBed::doc}{{2.5.1}{53}{5.15 sortBed\relax }{subsubsection*.119}{}} -\newlabel{content/sortBed:sortbed}{{2.5.1}{53}{5.15 sortBed\relax }{subsubsection*.119}{}} -\@writefile{toc}{\contentsline {paragraph}{5.15.1 Usage and option summary}{53}{paragraph*.120}} -\newlabel{content/sortBed:usage-and-option-summary}{{2.5.1}{53}{5.15.1 Usage and option summary\relax }{paragraph*.120}{}} -\@writefile{toc}{\contentsline {paragraph}{5.15.2 Default behavior}{54}{paragraph*.121}} -\newlabel{content/sortBed:default-behavior}{{2.5.1}{54}{5.15.2 Default behavior\relax }{paragraph*.121}{}} -\@writefile{toc}{\contentsline {paragraph}{5.15.3 Optional sorting behavior}{54}{paragraph*.122}} -\newlabel{content/sortBed:optional-sorting-behavior}{{2.5.1}{54}{5.15.3 Optional sorting behavior\relax }{paragraph*.122}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.16 linksBed}{54}{subsubsection*.123}} -\newlabel{content/linksBed:linksbed}{{2.5.1}{54}{5.16 linksBed\relax }{subsubsection*.123}{}} -\newlabel{content/linksBed::doc}{{2.5.1}{54}{5.16 linksBed\relax }{subsubsection*.123}{}} -\@writefile{toc}{\contentsline {paragraph}{5.16.1 Usage and option summary}{54}{paragraph*.124}} -\newlabel{content/linksBed:usage-and-option-summary}{{2.5.1}{54}{5.16.1 Usage and option summary\relax }{paragraph*.124}{}} -\@writefile{toc}{\contentsline {paragraph}{5.16.2 Default behavior}{55}{paragraph*.125}} -\newlabel{content/linksBed:default-behavior}{{2.5.1}{55}{5.16.2 Default behavior\relax }{paragraph*.125}{}} -\@writefile{toc}{\contentsline {paragraph}{5.16.3 Creating HTML links to a local UCSC Browser installation}{55}{paragraph*.126}} -\newlabel{content/linksBed:creating-html-links-to-a-local-ucsc-browser-installation}{{2.5.1}{55}{5.16.3 Creating HTML links to a local UCSC Browser installation\relax }{paragraph*.126}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.17 complementBed}{55}{subsubsection*.127}} -\newlabel{content/complementBed:complementbed}{{2.5.1}{55}{5.17 complementBed\relax }{subsubsection*.127}{}} -\newlabel{content/complementBed::doc}{{2.5.1}{55}{5.17 complementBed\relax }{subsubsection*.127}{}} -\@writefile{toc}{\contentsline {paragraph}{5.17.1 Usage and option summary}{56}{paragraph*.128}} -\newlabel{content/complementBed:usage-and-option-summary}{{2.5.1}{56}{5.17.1 Usage and option summary\relax }{paragraph*.128}{}} -\@writefile{toc}{\contentsline {paragraph}{5.17.2 Default behavior}{56}{paragraph*.129}} -\newlabel{content/complementBed:default-behavior}{{2.5.1}{56}{5.17.2 Default behavior\relax }{paragraph*.129}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.18 bedToBam}{56}{subsubsection*.130}} -\newlabel{content/bedToBam::doc}{{2.5.1}{56}{5.18 bedToBam\relax }{subsubsection*.130}{}} -\newlabel{content/bedToBam:bedtobam}{{2.5.1}{56}{5.18 bedToBam\relax }{subsubsection*.130}{}} -\@writefile{toc}{\contentsline {paragraph}{5.18.1 Usage and option summary}{56}{paragraph*.131}} -\newlabel{content/bedToBam:usage-and-option-summary}{{2.5.1}{56}{5.18.1 Usage and option summary\relax }{paragraph*.131}{}} -\@writefile{toc}{\contentsline {paragraph}{5.18.2 Default behavior}{57}{paragraph*.132}} -\newlabel{content/bedToBam:default-behavior}{{2.5.1}{57}{5.18.2 Default behavior\relax }{paragraph*.132}{}} -\@writefile{toc}{\contentsline {paragraph}{5.18.3 Creating ``spliced'' BAM entries from ``blocked'' BED features}{57}{paragraph*.133}} -\newlabel{content/bedToBam:creating-spliced-bam-entries-from-blocked-bed-features}{{2.5.1}{57}{5.18.3 Creating ``spliced'' BAM entries from ``blocked'' BED features\relax }{paragraph*.133}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.19 overlap}{57}{subsubsection*.134}} -\newlabel{content/overlap::doc}{{2.5.1}{57}{5.19 overlap\relax }{subsubsection*.134}{}} -\newlabel{content/overlap:overlap}{{2.5.1}{57}{5.19 overlap\relax }{subsubsection*.134}{}} -\@writefile{toc}{\contentsline {paragraph}{5.19.1 Usage and option summary}{57}{paragraph*.135}} -\newlabel{content/overlap:usage-and-option-summary}{{2.5.1}{57}{5.19.1 Usage and option summary\relax }{paragraph*.135}{}} -\@writefile{toc}{\contentsline {paragraph}{5.19.2 Default behavior}{58}{paragraph*.136}} -\newlabel{content/overlap:default-behavior}{{2.5.1}{58}{5.19.2 Default behavior\relax }{paragraph*.136}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.20 bedToIgv}{58}{subsubsection*.137}} -\newlabel{content/bedToIgv:bedtoigv}{{2.5.1}{58}{5.20 bedToIgv\relax }{subsubsection*.137}{}} -\newlabel{content/bedToIgv::doc}{{2.5.1}{58}{5.20 bedToIgv\relax }{subsubsection*.137}{}} -\@writefile{toc}{\contentsline {paragraph}{5.20.1 Usage and option summary}{58}{paragraph*.138}} -\newlabel{content/bedToIgv:usage-and-option-summary}{{2.5.1}{58}{5.20.1 Usage and option summary\relax }{paragraph*.138}{}} -\@writefile{toc}{\contentsline {paragraph}{5.20.2 Default behavior}{59}{paragraph*.139}} -\newlabel{content/bedToIgv:default-behavior}{{2.5.1}{59}{5.20.2 Default behavior\relax }{paragraph*.139}{}} -\@writefile{toc}{\contentsline {paragraph}{5.20.3 Using a bedToIgv batch script within IGV.}{59}{paragraph*.140}} -\newlabel{content/bedToIgv:using-a-bedtoigv-batch-script-within-igv}{{2.5.1}{59}{5.20.3 Using a bedToIgv batch script within IGV}{paragraph*.140}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.21 bed12ToBed6}{59}{subsubsection*.141}} -\newlabel{content/bed12ToBed6::doc}{{2.5.1}{59}{5.21 bed12ToBed6\relax }{subsubsection*.141}{}} -\newlabel{content/bed12ToBed6:bed12tobed6}{{2.5.1}{59}{5.21 bed12ToBed6\relax }{subsubsection*.141}{}} -\@writefile{toc}{\contentsline {paragraph}{5.21.1 Usage and option summary}{59}{paragraph*.142}} -\newlabel{content/bed12ToBed6:usage-and-option-summary}{{2.5.1}{59}{5.21.1 Usage and option summary\relax }{paragraph*.142}{}} -\@writefile{toc}{\contentsline {paragraph}{5.21.2 Default behavior}{59}{paragraph*.143}} -\newlabel{content/bed12ToBed6:default-behavior}{{2.5.1}{59}{5.21.2 Default behavior\relax }{paragraph*.143}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.22 groupBy}{60}{subsubsection*.144}} -\newlabel{content/groupBy::doc}{{2.5.1}{60}{5.22 groupBy\relax }{subsubsection*.144}{}} -\newlabel{content/groupBy:groupby}{{2.5.1}{60}{5.22 groupBy\relax }{subsubsection*.144}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.1 Usage and option summary}{60}{paragraph*.145}} -\newlabel{content/groupBy:usage-and-option-summary}{{2.5.1}{60}{5.22.1 Usage and option summary\relax }{paragraph*.145}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.2 Default behavior.}{61}{paragraph*.146}} -\newlabel{content/groupBy:default-behavior}{{2.5.1}{61}{5.22.2 Default behavior}{paragraph*.146}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.3 Computing the min and max.}{62}{paragraph*.147}} -\newlabel{content/groupBy:computing-the-min-and-max}{{2.5.1}{62}{5.22.3 Computing the min and max}{paragraph*.147}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.4 Computing the mean and median.}{62}{paragraph*.148}} -\newlabel{content/groupBy:computing-the-mean-and-median}{{2.5.1}{62}{5.22.4 Computing the mean and median}{paragraph*.148}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.5 Computing the mode and ``antimode''.}{63}{paragraph*.149}} -\newlabel{content/groupBy:computing-the-mode-and-antimode}{{2.5.1}{63}{5.22.5 Computing the mode and ``antimode''}{paragraph*.149}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.6 Computing the count of lines for a given group.}{63}{paragraph*.150}} -\newlabel{content/groupBy:computing-the-count-of-lines-for-a-given-group}{{2.5.1}{63}{5.22.6 Computing the count of lines for a given group}{paragraph*.150}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.7 Collapsing: listing all of the values in the opCol for a given group.}{63}{paragraph*.151}} -\newlabel{content/groupBy:collapsing-listing-all-of-the-values-in-the-opcol-for-a-given-group}{{2.5.1}{63}{5.22.7 Collapsing: listing all of the values in the opCol for a given group}{paragraph*.151}{}} -\@writefile{toc}{\contentsline {paragraph}{5.22.8 Computing frequencies: freqasc and freqdesc.}{63}{paragraph*.152}} -\newlabel{content/groupBy:computing-frequencies-freqasc-and-freqdesc}{{2.5.1}{63}{5.22.8 Computing frequencies: freqasc and freqdesc}{paragraph*.152}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.23 unionBedGraphs}{64}{subsubsection*.153}} -\newlabel{content/unionBedGraphs:unionbedgraphs}{{2.5.1}{64}{5.23 unionBedGraphs\relax }{subsubsection*.153}{}} -\newlabel{content/unionBedGraphs::doc}{{2.5.1}{64}{5.23 unionBedGraphs\relax }{subsubsection*.153}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.1 Usage and option summary}{64}{paragraph*.154}} -\newlabel{content/unionBedGraphs:usage-and-option-summary}{{2.5.1}{64}{5.23.1 Usage and option summary\relax }{paragraph*.154}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.2 Default behavior}{64}{paragraph*.155}} -\newlabel{content/unionBedGraphs:default-behavior}{{2.5.1}{64}{5.23.2 Default behavior\relax }{paragraph*.155}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.3 Add a header line to the output}{65}{paragraph*.156}} -\newlabel{content/unionBedGraphs:add-a-header-line-to-the-output}{{2.5.1}{65}{5.23.3 Add a header line to the output\relax }{paragraph*.156}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.4 Add a header line with custom file names to the output}{65}{paragraph*.157}} -\newlabel{content/unionBedGraphs:add-a-header-line-with-custom-file-names-to-the-output}{{2.5.1}{65}{5.23.4 Add a header line with custom file names to the output\relax }{paragraph*.157}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.5 Include regions that have zero coverage in all BEDGRAPH files.}{65}{paragraph*.158}} -\newlabel{content/unionBedGraphs:include-regions-that-have-zero-coverage-in-all-bedgraph-files}{{2.5.1}{65}{5.23.5 Include regions that have zero coverage in all BEDGRAPH files}{paragraph*.158}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.6 Use a custom value for missing values.}{65}{paragraph*.159}} -\newlabel{content/unionBedGraphs:use-a-custom-value-for-missing-values}{{2.5.1}{65}{5.23.6 Use a custom value for missing values}{paragraph*.159}{}} -\@writefile{toc}{\contentsline {paragraph}{5.23.7 Use BEDGRAPH files with non-numeric values.}{66}{paragraph*.160}} -\newlabel{content/unionBedGraphs:use-bedgraph-files-with-non-numeric-values}{{2.5.1}{66}{5.23.7 Use BEDGRAPH files with non-numeric values}{paragraph*.160}{}} -\@writefile{toc}{\contentsline {subsubsection}{5.24 annotateBed}{66}{subsubsection*.161}} -\newlabel{content/annotateBed::doc}{{2.5.1}{66}{5.24 annotateBed\relax }{subsubsection*.161}{}} -\newlabel{content/annotateBed:annotatebed}{{2.5.1}{66}{5.24 annotateBed\relax }{subsubsection*.161}{}} -\@writefile{toc}{\contentsline {paragraph}{5.24.1 Usage and option summary}{66}{paragraph*.162}} -\newlabel{content/annotateBed:usage-and-option-summary}{{2.5.1}{66}{5.24.1 Usage and option summary\relax }{paragraph*.162}{}} -\@writefile{toc}{\contentsline {paragraph}{5.24.2 Default behavior - annotate one file with coverage from others.}{67}{paragraph*.163}} -\newlabel{content/annotateBed:default-behavior-annotate-one-file-with-coverage-from-others}{{2.5.1}{67}{5.24.2 Default behavior - annotate one file with coverage from others}{paragraph*.163}{}} -\@writefile{toc}{\contentsline {paragraph}{5.24.3 Report the count of hits from the annotation files}{67}{paragraph*.164}} -\newlabel{content/annotateBed:report-the-count-of-hits-from-the-annotation-files}{{2.5.1}{67}{5.24.3 Report the count of hits from the annotation files\relax }{paragraph*.164}{}} -\@writefile{toc}{\contentsline {paragraph}{5.24.4 Report both the count of hits and the fraction covered from the annotation files}{67}{paragraph*.165}} -\newlabel{content/annotateBed:report-both-the-count-of-hits-and-the-fraction-covered-from-the-annotation-files}{{2.5.1}{67}{5.24.4 Report both the count of hits and the fraction covered from the annotation files\relax }{paragraph*.165}{}} -\@writefile{toc}{\contentsline {paragraph}{5.24.5 Restrict the reporting to overlaps on the same strand.}{68}{paragraph*.166}} -\newlabel{content/annotateBed:restrict-the-reporting-to-overlaps-on-the-same-strand}{{2.5.1}{68}{5.24.5 Restrict the reporting to overlaps on the same strand}{paragraph*.166}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.6}Example usage}{68}{section.2.6}} -\newlabel{content/example-usage:example-usage}{{2.6}{68}{Example usage\relax }{section.2.6}{}} -\newlabel{content/example-usage::doc}{{2.6}{68}{Example usage\relax }{section.2.6}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.1}6.1 intersectBed}{68}{subsection.2.6.1}} -\newlabel{content/example-usage:intersectbed}{{2.6.1}{68}{6.1 intersectBed\relax }{subsection.2.6.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.2}6.2 pairToBed}{69}{subsection.2.6.2}} -\newlabel{content/example-usage:pairtobed}{{2.6.2}{69}{6.2 pairToBed\relax }{subsection.2.6.2}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.3}6.3 pairToPair}{69}{subsection.2.6.3}} -\newlabel{content/example-usage:pairtopair}{{2.6.3}{69}{6.3 pairToPair\relax }{subsection.2.6.3}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.4}6.4 bamToBed}{69}{subsection.2.6.4}} -\newlabel{content/example-usage:bamtobed}{{2.6.4}{69}{6.4 bamToBed\relax }{subsection.2.6.4}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.5}6.5 windowBed}{70}{subsection.2.6.5}} -\newlabel{content/example-usage:windowbed}{{2.6.5}{70}{6.5 windowBed\relax }{subsection.2.6.5}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.6}6.6 closestBed}{70}{subsection.2.6.6}} -\newlabel{content/example-usage:closestbed}{{2.6.6}{70}{6.6 closestBed\relax }{subsection.2.6.6}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.7}6.7 subtractBed}{70}{subsection.2.6.7}} -\newlabel{content/example-usage:subtractbed}{{2.6.7}{70}{6.7 subtractBed\relax }{subsection.2.6.7}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.8}6.8 mergeBed}{70}{subsection.2.6.8}} -\newlabel{content/example-usage:mergebed}{{2.6.8}{70}{6.8 mergeBed\relax }{subsection.2.6.8}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.9}6.9 coverageBed}{71}{subsection.2.6.9}} -\newlabel{content/example-usage:coveragebed}{{2.6.9}{71}{6.9 coverageBed\relax }{subsection.2.6.9}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.10}6.10 complementBed}{71}{subsection.2.6.10}} -\newlabel{content/example-usage:complementbed}{{2.6.10}{71}{6.10 complementBed\relax }{subsection.2.6.10}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.6.11}6.11 shuffleBed}{71}{subsection.2.6.11}} -\newlabel{content/example-usage:shufflebed}{{2.6.11}{71}{6.11 shuffleBed\relax }{subsection.2.6.11}{}} -\@writefile{toc}{\contentsline {section}{\numberline {2.7}Advanced usage}{71}{section.2.7}} -\newlabel{content/advanced-usage::doc}{{2.7}{71}{Advanced usage\relax }{section.2.7}{}} -\newlabel{content/advanced-usage:advanced-usage}{{2.7}{71}{Advanced usage\relax }{section.2.7}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.1}7.1 Mask all regions in a genome except for targeted capture regions.}{71}{subsection.2.7.1}} -\newlabel{content/advanced-usage:mask-all-regions-in-a-genome-except-for-targeted-capture-regions}{{2.7.1}{71}{7.1 Mask all regions in a genome except for targeted capture regions}{subsection.2.7.1}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.2}7.2 Screening for novel SNPs.}{72}{subsection.2.7.2}} -\newlabel{content/advanced-usage:screening-for-novel-snps}{{2.7.2}{72}{7.2 Screening for novel SNPs}{subsection.2.7.2}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.3}7.4 Computing the coverage of BAM alignments on exons.}{72}{subsection.2.7.3}} -\newlabel{content/advanced-usage:computing-the-coverage-of-bam-alignments-on-exons}{{2.7.3}{72}{7.4 Computing the coverage of BAM alignments on exons}{subsection.2.7.3}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.4}7.5 Computing coverage separately for each strand.}{72}{subsection.2.7.4}} -\newlabel{content/advanced-usage:computing-coverage-separately-for-each-strand}{{2.7.4}{72}{7.5 Computing coverage separately for each strand}{subsection.2.7.4}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.5}7.6 Find structural variant calls that are private to one sample.}{72}{subsection.2.7.5}} -\newlabel{content/advanced-usage:find-structural-variant-calls-that-are-private-to-one-sample}{{2.7.5}{72}{7.6 Find structural variant calls that are private to one sample}{subsection.2.7.5}{}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.7.6}7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome.}{73}{subsection.2.7.6}} -\newlabel{content/advanced-usage:exclude-sv-deletions-that-appear-to-be-alu-insertions-in-the-reference-genome}{{2.7.6}{73}{7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome}{subsection.2.7.6}{}} -\@writefile{toc}{\contentsline {chapter}{\numberline {3}Mailing list}{75}{chapter.3}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\newlabel{index:mailing-list}{{3}{75}{Mailing list\relax }{chapter.3}{}} diff --git a/docs/_build/latex/bedtools.idx b/docs/_build/latex/bedtools.idx deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/_build/latex/bedtools.ilg b/docs/_build/latex/bedtools.ilg deleted file mode 100644 index 37d9dd58..00000000 --- a/docs/_build/latex/bedtools.ilg +++ /dev/null @@ -1,5 +0,0 @@ -This is makeindex, version 2.15 [TeX Live 2011] (kpathsea + Thai support). -Scanning style file ./python.ist......done (6 attributes redefined, 0 ignored). -Scanning input file bedtools.idx...done (0 entries accepted, 0 rejected). -Nothing written in bedtools.ind. -Transcript written in bedtools.ilg. diff --git a/docs/_build/latex/bedtools.ind b/docs/_build/latex/bedtools.ind deleted file mode 100644 index e69de29b..00000000 diff --git a/docs/_build/latex/bedtools.log b/docs/_build/latex/bedtools.log deleted file mode 100644 index ea7d0c75..00000000 --- a/docs/_build/latex/bedtools.log +++ /dev/null @@ -1,1131 +0,0 @@ -This is pdfTeX, Version 3.1415926-2.3-1.40.12 (TeX Live 2011) (format=pdflatex 2011.7.3) 21 JUL 2012 11:01 -entering extended mode - restricted \write18 enabled. - %&-line parsing enabled. -**bedtools.tex -(./bedtools.tex -LaTeX2e <2009/09/24> -Babel <v3.8l> and hyphenation patterns for english, dumylang, nohyphenation, ge -rman-x-2009-06-19, ngerman-x-2009-06-19, afrikaans, ancientgreek, ibycus, arabi -c, armenian, basque, bulgarian, catalan, pinyin, coptic, croatian, czech, danis -h, dutch, ukenglish, usenglishmax, esperanto, estonian, ethiopic, farsi, finnis -h, french, galician, german, ngerman, swissgerman, monogreek, greek, hungarian, - icelandic, assamese, bengali, gujarati, hindi, kannada, malayalam, marathi, or -iya, panjabi, tamil, telugu, indonesian, interlingua, irish, italian, kurmanji, - lao, latin, latvian, lithuanian, mongolian, mongolianlmc, bokmal, nynorsk, pol -ish, portuguese, romanian, russian, sanskrit, serbian, serbianc, slovak, sloven -ian, spanish, swedish, turkish, turkmen, ukrainian, uppersorbian, welsh, loaded -. -(./sphinxmanual.cls -Document Class: sphinxmanual 2009/06/02 Document class (Sphinx manual) -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/report.cls -Document Class: report 2007/10/19 v1.4h Standard LaTeX document class -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/size10.clo -File: size10.clo 2007/10/19 v1.4h Standard LaTeX file (size option) -) -\c@part=\count79 -\c@chapter=\count80 -\c@section=\count81 -\c@subsection=\count82 -\c@subsubsection=\count83 -\c@paragraph=\count84 -\c@subparagraph=\count85 -\c@figure=\count86 -\c@table=\count87 -\abovecaptionskip=\skip41 -\belowcaptionskip=\skip42 -\bibindent=\dimen102 -)) -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/inputenc.sty -Package: inputenc 2008/03/30 v1.1d Input encoding file -\inpenc@prehook=\toks14 -\inpenc@posthook=\toks15 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/utf8.def -File: utf8.def 2008/04/05 v1.1m UTF-8 support for inputenc -Now handling font encoding OML ... -... no UTF-8 mapping file for font encoding OML -Now handling font encoding T1 ... -... processing UTF-8 mapping file for font encoding T1 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/t1enc.dfu -File: t1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc - defining Unicode char U+00A1 (decimal 161) - defining Unicode char U+00A3 (decimal 163) - defining Unicode char U+00AB (decimal 171) - defining Unicode char U+00BB (decimal 187) - defining Unicode char U+00BF (decimal 191) - defining Unicode char U+00C0 (decimal 192) - defining Unicode char U+00C1 (decimal 193) - defining Unicode char U+00C2 (decimal 194) - defining Unicode char U+00C3 (decimal 195) - defining Unicode char U+00C4 (decimal 196) - defining Unicode char U+00C5 (decimal 197) - defining Unicode char U+00C6 (decimal 198) - defining Unicode char U+00C7 (decimal 199) - defining Unicode char U+00C8 (decimal 200) - defining Unicode char U+00C9 (decimal 201) - defining Unicode char U+00CA (decimal 202) - defining Unicode char U+00CB (decimal 203) - defining Unicode char U+00CC (decimal 204) - defining Unicode char U+00CD (decimal 205) - defining Unicode char U+00CE (decimal 206) - defining Unicode char U+00CF (decimal 207) - defining Unicode char U+00D0 (decimal 208) - defining Unicode char U+00D1 (decimal 209) - defining Unicode char U+00D2 (decimal 210) - defining Unicode char U+00D3 (decimal 211) - defining Unicode char U+00D4 (decimal 212) - defining Unicode char U+00D5 (decimal 213) - defining Unicode char U+00D6 (decimal 214) - defining Unicode char U+00D8 (decimal 216) - defining Unicode char U+00D9 (decimal 217) - defining Unicode char U+00DA (decimal 218) - defining Unicode char U+00DB (decimal 219) - defining Unicode char U+00DC (decimal 220) - defining Unicode char U+00DD (decimal 221) - defining Unicode char U+00DE (decimal 222) - defining Unicode char U+00DF (decimal 223) - defining Unicode char U+00E0 (decimal 224) - defining Unicode char U+00E1 (decimal 225) - defining Unicode char U+00E2 (decimal 226) - defining Unicode char U+00E3 (decimal 227) - defining Unicode char U+00E4 (decimal 228) - defining Unicode char U+00E5 (decimal 229) - defining Unicode char U+00E6 (decimal 230) - defining Unicode char U+00E7 (decimal 231) - defining Unicode char U+00E8 (decimal 232) - defining Unicode char U+00E9 (decimal 233) - defining Unicode char U+00EA (decimal 234) - defining Unicode char U+00EB (decimal 235) - defining Unicode char U+00EC (decimal 236) - defining Unicode char U+00ED (decimal 237) - defining Unicode char U+00EE (decimal 238) - defining Unicode char U+00EF (decimal 239) - defining Unicode char U+00F0 (decimal 240) - defining Unicode char U+00F1 (decimal 241) - defining Unicode char U+00F2 (decimal 242) - defining Unicode char U+00F3 (decimal 243) - defining Unicode char U+00F4 (decimal 244) - defining Unicode char U+00F5 (decimal 245) - defining Unicode char U+00F6 (decimal 246) - defining Unicode char U+00F8 (decimal 248) - defining Unicode char U+00F9 (decimal 249) - defining Unicode char U+00FA (decimal 250) - defining Unicode char U+00FB (decimal 251) - defining Unicode char U+00FC (decimal 252) - defining Unicode char U+00FD (decimal 253) - defining Unicode char U+00FE (decimal 254) - defining Unicode char U+00FF (decimal 255) - defining Unicode char U+0102 (decimal 258) - defining Unicode char U+0103 (decimal 259) - defining Unicode char U+0104 (decimal 260) - defining Unicode char U+0105 (decimal 261) - defining Unicode char U+0106 (decimal 262) - defining Unicode char U+0107 (decimal 263) - defining Unicode char U+010C (decimal 268) - defining Unicode char U+010D (decimal 269) - defining Unicode char U+010E (decimal 270) - defining Unicode char U+010F (decimal 271) - defining Unicode char U+0110 (decimal 272) - defining Unicode char U+0111 (decimal 273) - defining Unicode char U+0118 (decimal 280) - defining Unicode char U+0119 (decimal 281) - defining Unicode char U+011A (decimal 282) - defining Unicode char U+011B (decimal 283) - defining Unicode char U+011E (decimal 286) - defining Unicode char U+011F (decimal 287) - defining Unicode char U+0130 (decimal 304) - defining Unicode char U+0131 (decimal 305) - defining Unicode char U+0132 (decimal 306) - defining Unicode char U+0133 (decimal 307) - defining Unicode char U+0139 (decimal 313) - defining Unicode char U+013A (decimal 314) - defining Unicode char U+013D (decimal 317) - defining Unicode char U+013E (decimal 318) - defining Unicode char U+0141 (decimal 321) - defining Unicode char U+0142 (decimal 322) - defining Unicode char U+0143 (decimal 323) - defining Unicode char U+0144 (decimal 324) - defining Unicode char U+0147 (decimal 327) - defining Unicode char U+0148 (decimal 328) - defining Unicode char U+014A (decimal 330) - defining Unicode char U+014B (decimal 331) - defining Unicode char U+0150 (decimal 336) - defining Unicode char U+0151 (decimal 337) - defining Unicode char U+0152 (decimal 338) - defining Unicode char U+0153 (decimal 339) - defining Unicode char U+0154 (decimal 340) - defining Unicode char U+0155 (decimal 341) - defining Unicode char U+0158 (decimal 344) - defining Unicode char U+0159 (decimal 345) - defining Unicode char U+015A (decimal 346) - defining Unicode char U+015B (decimal 347) - defining Unicode char U+015E (decimal 350) - defining Unicode char U+015F (decimal 351) - defining Unicode char U+0160 (decimal 352) - defining Unicode char U+0161 (decimal 353) - defining Unicode char U+0162 (decimal 354) - defining Unicode char U+0163 (decimal 355) - defining Unicode char U+0164 (decimal 356) - defining Unicode char U+0165 (decimal 357) - defining Unicode char U+016E (decimal 366) - defining Unicode char U+016F (decimal 367) - defining Unicode char U+0170 (decimal 368) - defining Unicode char U+0171 (decimal 369) - defining Unicode char U+0178 (decimal 376) - defining Unicode char U+0179 (decimal 377) - defining Unicode char U+017A (decimal 378) - defining Unicode char U+017B (decimal 379) - defining Unicode char U+017C (decimal 380) - defining Unicode char U+017D (decimal 381) - defining Unicode char U+017E (decimal 382) - defining Unicode char U+200C (decimal 8204) - defining Unicode char U+2013 (decimal 8211) - defining Unicode char U+2014 (decimal 8212) - defining Unicode char U+2018 (decimal 8216) - defining Unicode char U+2019 (decimal 8217) - defining Unicode char U+201A (decimal 8218) - defining Unicode char U+201C (decimal 8220) - defining Unicode char U+201D (decimal 8221) - defining Unicode char U+201E (decimal 8222) - defining Unicode char U+2030 (decimal 8240) - defining Unicode char U+2031 (decimal 8241) - defining Unicode char U+2039 (decimal 8249) - defining Unicode char U+203A (decimal 8250) - defining Unicode char U+2423 (decimal 9251) -) -Now handling font encoding OT1 ... -... processing UTF-8 mapping file for font encoding OT1 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/ot1enc.dfu -File: ot1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc - defining Unicode char U+00A1 (decimal 161) - defining Unicode char U+00A3 (decimal 163) - defining Unicode char U+00B8 (decimal 184) - defining Unicode char U+00BF (decimal 191) - defining Unicode char U+00C5 (decimal 197) - defining Unicode char U+00C6 (decimal 198) - defining Unicode char U+00D8 (decimal 216) - defining Unicode char U+00DF (decimal 223) - defining Unicode char U+00E6 (decimal 230) - defining Unicode char U+00EC (decimal 236) - defining Unicode char U+00ED (decimal 237) - defining Unicode char U+00EE (decimal 238) - defining Unicode char U+00EF (decimal 239) - defining Unicode char U+00F8 (decimal 248) - defining Unicode char U+0131 (decimal 305) - defining Unicode char U+0141 (decimal 321) - defining Unicode char U+0142 (decimal 322) - defining Unicode char U+0152 (decimal 338) - defining Unicode char U+0153 (decimal 339) - defining Unicode char U+2013 (decimal 8211) - defining Unicode char U+2014 (decimal 8212) - defining Unicode char U+2018 (decimal 8216) - defining Unicode char U+2019 (decimal 8217) - defining Unicode char U+201C (decimal 8220) - defining Unicode char U+201D (decimal 8221) -) -Now handling font encoding OMS ... -... processing UTF-8 mapping file for font encoding OMS - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/omsenc.dfu -File: omsenc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc - defining Unicode char U+00A7 (decimal 167) - defining Unicode char U+00B6 (decimal 182) - defining Unicode char U+00B7 (decimal 183) - defining Unicode char U+2020 (decimal 8224) - defining Unicode char U+2021 (decimal 8225) - defining Unicode char U+2022 (decimal 8226) -) -Now handling font encoding OMX ... -... no UTF-8 mapping file for font encoding OMX -Now handling font encoding U ... -... no UTF-8 mapping file for font encoding U - defining Unicode char U+00A9 (decimal 169) - defining Unicode char U+00AA (decimal 170) - defining Unicode char U+00AE (decimal 174) - defining Unicode char U+00BA (decimal 186) - defining Unicode char U+02C6 (decimal 710) - defining Unicode char U+02DC (decimal 732) - defining Unicode char U+200C (decimal 8204) - defining Unicode char U+2026 (decimal 8230) - defining Unicode char U+2122 (decimal 8482) - defining Unicode char U+2423 (decimal 9251) -)) - defining Unicode char U+00A0 (decimal 160) - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/fontenc.sty -Package: fontenc 2005/09/27 v1.99g Standard LaTeX package - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/t1enc.def -File: t1enc.def 2005/09/27 v1.99g Standard LaTeX file -LaTeX Font Info: Redeclaring font encoding T1 on input line 43. -)) -(/usr/local/texlive/2011/texmf-dist/tex/generic/babel/babel.sty -Package: babel 2008/07/06 v3.8l The Babel package - -(/usr/local/texlive/2011/texmf-dist/tex/generic/babel/english.ldf -Language: english 2005/03/30 v3.3o English support from the babel system - -(/usr/local/texlive/2011/texmf-dist/tex/generic/babel/babel.def -File: babel.def 2008/07/06 v3.8l Babel common definitions -\babel@savecnt=\count88 -\U@D=\dimen103 -) -\l@canadian = a dialect from \language\l@american -\l@australian = a dialect from \language\l@british -\l@newzealand = a dialect from \language\l@british -)) -(/usr/local/texlive/2011/texmf-dist/tex/latex/psnfss/times.sty -Package: times 2005/04/12 PSNFSS-v9.2a (SPQR) -) (./fncychap.sty -Package: fncychap 2007/07/30 v1.34 LaTeX package (Revised chapters) -\RW=\skip43 -\mylen=\skip44 -\myhi=\skip45 -\px=\skip46 -\py=\skip47 -\pyy=\skip48 -\pxx=\skip49 -\c@AlphaCnt=\count89 -\c@AlphaDecCnt=\count90 -) (/usr/local/texlive/2011/texmf-dist/tex/latex/tools/longtable.sty -Package: longtable 2004/02/01 v4.11 Multi-page Table package (DPC) -\LTleft=\skip50 -\LTright=\skip51 -\LTpre=\skip52 -\LTpost=\skip53 -\LTchunksize=\count91 -\LTcapwidth=\dimen104 -\LT@head=\box26 -\LT@firsthead=\box27 -\LT@foot=\box28 -\LT@lastfoot=\box29 -\LT@cols=\count92 -\LT@rows=\count93 -\c@LT@tables=\count94 -\c@LT@chunks=\count95 -\LT@p@ftn=\toks16 -) -(./sphinx.sty -Package: sphinx 2010/01/15 LaTeX package (Sphinx markup) - (/usr/local/texlive/2011/texmf-dist/tex/latex/base/textcomp.sty -Package: textcomp 2005/09/27 v1.99g Standard LaTeX package -Package textcomp Info: Sub-encoding information: -(textcomp) 5 = only ISO-Adobe without \textcurrency -(textcomp) 4 = 5 + \texteuro -(textcomp) 3 = 4 + \textohm -(textcomp) 2 = 3 + \textestimated + \textcurrency -(textcomp) 1 = TS1 - \textcircled - \t -(textcomp) 0 = TS1 (full) -(textcomp) Font families with sub-encoding setting implement -(textcomp) only a restricted character set as indicated. -(textcomp) Family '?' is the default used for unknown fonts. -(textcomp) See the documentation for details. -Package textcomp Info: Setting ? sub-encoding to TS1/1 on input line 71. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/ts1enc.def -File: ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file -Now handling font encoding TS1 ... -... processing UTF-8 mapping file for font encoding TS1 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/ts1enc.dfu -File: ts1enc.dfu 2008/04/05 v1.1m UTF-8 support for inputenc - defining Unicode char U+00A2 (decimal 162) - defining Unicode char U+00A3 (decimal 163) - defining Unicode char U+00A4 (decimal 164) - defining Unicode char U+00A5 (decimal 165) - defining Unicode char U+00A6 (decimal 166) - defining Unicode char U+00A7 (decimal 167) - defining Unicode char U+00A8 (decimal 168) - defining Unicode char U+00A9 (decimal 169) - defining Unicode char U+00AA (decimal 170) - defining Unicode char U+00AC (decimal 172) - defining Unicode char U+00AE (decimal 174) - defining Unicode char U+00AF (decimal 175) - defining Unicode char U+00B0 (decimal 176) - defining Unicode char U+00B1 (decimal 177) - defining Unicode char U+00B2 (decimal 178) - defining Unicode char U+00B3 (decimal 179) - defining Unicode char U+00B4 (decimal 180) - defining Unicode char U+00B5 (decimal 181) - defining Unicode char U+00B6 (decimal 182) - defining Unicode char U+00B7 (decimal 183) - defining Unicode char U+00B9 (decimal 185) - defining Unicode char U+00BA (decimal 186) - defining Unicode char U+00BC (decimal 188) - defining Unicode char U+00BD (decimal 189) - defining Unicode char U+00BE (decimal 190) - defining Unicode char U+00D7 (decimal 215) - defining Unicode char U+00F7 (decimal 247) - defining Unicode char U+0192 (decimal 402) - defining Unicode char U+02C7 (decimal 711) - defining Unicode char U+02D8 (decimal 728) - defining Unicode char U+02DD (decimal 733) - defining Unicode char U+0E3F (decimal 3647) - defining Unicode char U+2016 (decimal 8214) - defining Unicode char U+2020 (decimal 8224) - defining Unicode char U+2021 (decimal 8225) - defining Unicode char U+2022 (decimal 8226) - defining Unicode char U+2030 (decimal 8240) - defining Unicode char U+2031 (decimal 8241) - defining Unicode char U+203B (decimal 8251) - defining Unicode char U+203D (decimal 8253) - defining Unicode char U+2044 (decimal 8260) - defining Unicode char U+204E (decimal 8270) - defining Unicode char U+2052 (decimal 8274) - defining Unicode char U+20A1 (decimal 8353) - defining Unicode char U+20A4 (decimal 8356) - defining Unicode char U+20A6 (decimal 8358) - defining Unicode char U+20A9 (decimal 8361) - defining Unicode char U+20AB (decimal 8363) - defining Unicode char U+20AC (decimal 8364) - defining Unicode char U+20B1 (decimal 8369) - defining Unicode char U+2103 (decimal 8451) - defining Unicode char U+2116 (decimal 8470) - defining Unicode char U+2117 (decimal 8471) - defining Unicode char U+211E (decimal 8478) - defining Unicode char U+2120 (decimal 8480) - defining Unicode char U+2122 (decimal 8482) - defining Unicode char U+2126 (decimal 8486) - defining Unicode char U+2127 (decimal 8487) - defining Unicode char U+212E (decimal 8494) - defining Unicode char U+2190 (decimal 8592) - defining Unicode char U+2191 (decimal 8593) - defining Unicode char U+2192 (decimal 8594) - defining Unicode char U+2193 (decimal 8595) - defining Unicode char U+2329 (decimal 9001) - defining Unicode char U+232A (decimal 9002) - defining Unicode char U+2422 (decimal 9250) - defining Unicode char U+25E6 (decimal 9702) - defining Unicode char U+25EF (decimal 9711) - defining Unicode char U+266A (decimal 9834) -)) -LaTeX Info: Redefining \oldstylenums on input line 266. -Package textcomp Info: Setting cmr sub-encoding to TS1/0 on input line 281. -Package textcomp Info: Setting cmss sub-encoding to TS1/0 on input line 282. -Package textcomp Info: Setting cmtt sub-encoding to TS1/0 on input line 283. -Package textcomp Info: Setting cmvtt sub-encoding to TS1/0 on input line 284. -Package textcomp Info: Setting cmbr sub-encoding to TS1/0 on input line 285. -Package textcomp Info: Setting cmtl sub-encoding to TS1/0 on input line 286. -Package textcomp Info: Setting ccr sub-encoding to TS1/0 on input line 287. -Package textcomp Info: Setting ptm sub-encoding to TS1/4 on input line 288. -Package textcomp Info: Setting pcr sub-encoding to TS1/4 on input line 289. -Package textcomp Info: Setting phv sub-encoding to TS1/4 on input line 290. -Package textcomp Info: Setting ppl sub-encoding to TS1/3 on input line 291. -Package textcomp Info: Setting pag sub-encoding to TS1/4 on input line 292. -Package textcomp Info: Setting pbk sub-encoding to TS1/4 on input line 293. -Package textcomp Info: Setting pnc sub-encoding to TS1/4 on input line 294. -Package textcomp Info: Setting pzc sub-encoding to TS1/4 on input line 295. -Package textcomp Info: Setting bch sub-encoding to TS1/4 on input line 296. -Package textcomp Info: Setting put sub-encoding to TS1/5 on input line 297. -Package textcomp Info: Setting uag sub-encoding to TS1/5 on input line 298. -Package textcomp Info: Setting ugq sub-encoding to TS1/5 on input line 299. -Package textcomp Info: Setting ul8 sub-encoding to TS1/4 on input line 300. -Package textcomp Info: Setting ul9 sub-encoding to TS1/4 on input line 301. -Package textcomp Info: Setting augie sub-encoding to TS1/5 on input line 302. -Package textcomp Info: Setting dayrom sub-encoding to TS1/3 on input line 303. -Package textcomp Info: Setting dayroms sub-encoding to TS1/3 on input line 304. - -Package textcomp Info: Setting pxr sub-encoding to TS1/0 on input line 305. -Package textcomp Info: Setting pxss sub-encoding to TS1/0 on input line 306. -Package textcomp Info: Setting pxtt sub-encoding to TS1/0 on input line 307. -Package textcomp Info: Setting txr sub-encoding to TS1/0 on input line 308. -Package textcomp Info: Setting txss sub-encoding to TS1/0 on input line 309. -Package textcomp Info: Setting txtt sub-encoding to TS1/0 on input line 310. -Package textcomp Info: Setting futs sub-encoding to TS1/4 on input line 311. -Package textcomp Info: Setting futx sub-encoding to TS1/4 on input line 312. -Package textcomp Info: Setting futj sub-encoding to TS1/4 on input line 313. -Package textcomp Info: Setting hlh sub-encoding to TS1/3 on input line 314. -Package textcomp Info: Setting hls sub-encoding to TS1/3 on input line 315. -Package textcomp Info: Setting hlst sub-encoding to TS1/3 on input line 316. -Package textcomp Info: Setting hlct sub-encoding to TS1/5 on input line 317. -Package textcomp Info: Setting hlx sub-encoding to TS1/5 on input line 318. -Package textcomp Info: Setting hlce sub-encoding to TS1/5 on input line 319. -Package textcomp Info: Setting hlcn sub-encoding to TS1/5 on input line 320. -Package textcomp Info: Setting hlcw sub-encoding to TS1/5 on input line 321. -Package textcomp Info: Setting hlcf sub-encoding to TS1/5 on input line 322. -Package textcomp Info: Setting pplx sub-encoding to TS1/3 on input line 323. -Package textcomp Info: Setting pplj sub-encoding to TS1/3 on input line 324. -Package textcomp Info: Setting ptmx sub-encoding to TS1/4 on input line 325. -Package textcomp Info: Setting ptmj sub-encoding to TS1/4 on input line 326. -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty -\fancy@headwidth=\skip54 -\f@ncyO@elh=\skip55 -\f@ncyO@erh=\skip56 -\f@ncyO@olh=\skip57 -\f@ncyO@orh=\skip58 -\f@ncyO@elf=\skip59 -\f@ncyO@erf=\skip60 -\f@ncyO@olf=\skip61 -\f@ncyO@orf=\skip62 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/fancybox/fancybox.sty -Package: fancybox 2010/05/15 1.4 - -Style option: `fancybox' v1.4 <2010/05/15> (tvz) -\@fancybox=\box30 -\shadowsize=\dimen105 -\@Sbox=\box31 -\do@VerbBox=\toks17 -\the@fancyput=\toks18 -\this@fancyput=\toks19 -\EndVerbatimTokens=\toks20 -\Verbatim@Outfile=\write3 -\Verbatim@Infile=\read1 -) (/usr/local/texlive/2011/texmf-dist/tex/latex/titlesec/titlesec.sty -Package: titlesec 2007/08/12 v2.8 Sectioning titles -\ttl@box=\box32 -\beforetitleunit=\skip63 -\aftertitleunit=\skip64 -\ttl@plus=\dimen106 -\ttl@minus=\dimen107 -\ttl@toksa=\toks21 -\titlewidth=\dimen108 -\titlewidthlast=\dimen109 -\titlewidthfirst=\dimen110 -) -(./tabulary.sty -Package: tabulary 2007/10/02 v0.9 tabulary package (DPC) - (/usr/local/texlive/2011/texmf-dist/tex/latex/tools/array.sty -Package: array 2008/09/09 v2.4c Tabular extension package (FMi) -\col@sep=\dimen111 -\extrarowheight=\dimen112 -\NC@list=\toks22 -\extratabsurround=\skip65 -\backup@length=\skip66 -) -\TY@count=\count96 -\TY@linewidth=\dimen113 -\tymin=\dimen114 -\tymax=\dimen115 -\TY@tablewidth=\dimen116 -) (/usr/local/texlive/2011/texmf-dist/tex/latex/amsmath/amsmath.sty -Package: amsmath 2000/07/18 v2.13 AMS math features -\@mathmargin=\skip67 - -For additional information on amsmath, use the `?' option. -(/usr/local/texlive/2011/texmf-dist/tex/latex/amsmath/amstext.sty -Package: amstext 2000/06/29 v2.01 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/amsmath/amsgen.sty -File: amsgen.sty 1999/11/30 v2.0 -\@emptytoks=\toks23 -\ex@=\dimen117 -)) -(/usr/local/texlive/2011/texmf-dist/tex/latex/amsmath/amsbsy.sty -Package: amsbsy 1999/11/29 v1.2d -\pmbraise@=\dimen118 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/amsmath/amsopn.sty -Package: amsopn 1999/12/14 v2.01 operator names -) -\inf@bad=\count97 -LaTeX Info: Redefining \frac on input line 211. -\uproot@=\count98 -\leftroot@=\count99 -LaTeX Info: Redefining \overline on input line 307. -\classnum@=\count100 -\DOTSCASE@=\count101 -LaTeX Info: Redefining \ldots on input line 379. -LaTeX Info: Redefining \dots on input line 382. -LaTeX Info: Redefining \cdots on input line 467. -\Mathstrutbox@=\box33 -\strutbox@=\box34 -\big@size=\dimen119 -LaTeX Font Info: Redeclaring font encoding OML on input line 567. -LaTeX Font Info: Redeclaring font encoding OMS on input line 568. -\macc@depth=\count102 -\c@MaxMatrixCols=\count103 -\dotsspace@=\muskip10 -\c@parentequation=\count104 -\dspbrk@lvl=\count105 -\tag@help=\toks24 -\row@=\count106 -\column@=\count107 -\maxfields@=\count108 -\andhelp@=\toks25 -\eqnshift@=\dimen120 -\alignsep@=\dimen121 -\tagshift@=\dimen122 -\tagwidth@=\dimen123 -\totwidth@=\dimen124 -\lineht@=\dimen125 -\@envbody=\toks26 -\multlinegap=\skip68 -\multlinetaggap=\skip69 -\mathdisplay@stack=\toks27 -LaTeX Info: Redefining \[ on input line 2666. -LaTeX Info: Redefining \] on input line 2667. -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/makeidx.sty -Package: makeidx 2000/03/29 v1.0m Standard LaTeX package -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/framed/framed.sty -Package: framed 2007/10/04 v 0.95: framed or shaded text with page breaks -\fb@frw=\dimen126 -\fb@frh=\dimen127 -\FrameRule=\dimen128 -\FrameSep=\dimen129 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/base/ifthen.sty -Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC) -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/graphics/color.sty -Package: color 2005/11/14 v1.0j Standard LaTeX Color (DPC) - -(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/color.cfg -File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive -) -Package color Info: Driver file: pdftex.def on input line 130. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/pdftex-def/pdftex.def -File: pdftex.def 2011/05/27 v0.06d Graphics/color for pdfTeX - -(/usr/local/texlive/2011/texmf-dist/tex/generic/oberdiek/infwarerr.sty -Package: infwarerr 2010/04/08 v1.3 Providing info/warning/message (HO) -) -(/usr/local/texlive/2011/texmf-dist/tex/generic/oberdiek/ltxcmds.sty -Package: ltxcmds 2011/04/18 v1.20 LaTeX kernel commands for general use (HO) -) -\Gread@gobject=\count109 -)) -(/usr/local/texlive/2011/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty -Package: fancyvrb 2008/02/07 - -Style option: `fancyvrb' v2.7a, with DG/SPQR fixes, and firstline=lastline fix -<2008/02/07> (tvz) -(/usr/local/texlive/2011/texmf-dist/tex/latex/graphics/keyval.sty -Package: keyval 1999/03/16 v1.13 key=value parser (DPC) -\KV@toks@=\toks28 -) -\FV@CodeLineNo=\count110 -\FV@InFile=\read2 -\FV@TabBox=\box35 -\c@FancyVerbLine=\count111 -\FV@StepNumber=\count112 -\FV@OutFile=\write4 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/threeparttable/threeparttable.sty -Package: threeparttable 2003/06/13 v 3.0 -\@tempboxb=\box36 -) (/usr/local/texlive/2011/texmf-dist/tex/latex/mdwtools/footnote.sty -Package: footnote 1997/01/28 1.13 Save footnotes around boxes -\fn@notes=\box37 -\fn@width=\dimen130 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/wrapfig/wrapfig.sty -\wrapoverhang=\dimen131 -\WF@size=\dimen132 -\c@WF@wrappedlines=\count113 -\WF@box=\box38 -\WF@everypar=\toks29 -Package: wrapfig 2003/01/31 v 3.6 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/parskip/parskip.sty -Package: parskip 2001/04/09 non-zero parskip adjustments -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/graphics/graphicx.sty -Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR) - -(/usr/local/texlive/2011/texmf-dist/tex/latex/graphics/graphics.sty -Package: graphics 2009/02/05 v1.0o Standard LaTeX Graphics (DPC,SPQR) - -(/usr/local/texlive/2011/texmf-dist/tex/latex/graphics/trig.sty -Package: trig 1999/03/16 v1.09 sin cos tan (DPC) -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/graphics.cfg -File: graphics.cfg 2010/04/23 v1.9 graphics configuration of TeX Live -) -Package graphics Info: Driver file: pdftex.def on input line 91. -) -\Gin@req@height=\dimen133 -\Gin@req@width=\dimen134 -) -(/usr/local/texlive/2011/texmf-dist/tex/plain/misc/pdfcolor.tex) -\distancetoright=\skip70 -\py@argswidth=\skip71 -\py@noticelength=\skip72 -\lineblockindentation=\skip73 -\image@box=\box39 -\image@width=\dimen135 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/hyperref/hyperref.sty -Package: hyperref 2011/04/17 v6.82g Hypertext links for LaTeX - -(/usr/local/texlive/2011/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty -Package: hobsub-hyperref 2011/04/23 v1.4 Bundle oberdiek, subset hyperref (HO) - -(/usr/local/texlive/2011/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty -Package: hobsub-generic 2011/04/23 v1.4 Bundle oberdiek, subset generic (HO) -Package: hobsub 2011/04/23 v1.4 Subsetting bundle oberdiek (HO) -Package hobsub Info: Skipping package `infwarerr' (already loaded). -Package hobsub Info: Skipping package `ltxcmds' (already loaded). -Package: ifluatex 2010/03/01 v1.3 Provides the ifluatex switch (HO) -Package ifluatex Info: LuaTeX not detected. -Package: ifvtex 2010/03/01 v1.5 Switches for detecting VTeX and its modes (HO) -Package ifvtex Info: VTeX not detected. -Package: intcalc 2007/09/27 v1.1 Expandable integer calculations (HO) -Package: ifpdf 2011/01/30 v2.3 Provides the ifpdf switch (HO) -Package ifpdf Info: pdfTeX in PDF mode is detected. -Package: etexcmds 2011/02/16 v1.5 Prefix for e-TeX command names (HO) -Package etexcmds Info: Could not find \expanded. -(etexcmds) That can mean that you are not using pdfTeX 1.50 or -(etexcmds) that some package has redefined \expanded. -(etexcmds) In the latter case, load this package earlier. -Package: kvsetkeys 2011/04/07 v1.13 Key value parser (HO) -Package: kvdefinekeys 2011/04/07 v1.3 Defining keys (HO) -Package: pdftexcmds 2011/04/22 v0.16 Utilities of pdfTeX for LuaTeX (HO) -Package pdftexcmds Info: LuaTeX not detected. -Package pdftexcmds Info: \pdf@primitive is available. -Package pdftexcmds Info: \pdf@ifprimitive is available. -Package pdftexcmds Info: \pdfdraftmode found. -Package: pdfescape 2011/04/04 v1.12 Provides string conversions (HO) -Package: bigintcalc 2011/01/30 v1.2 Expandable big integer calculations (HO) -Package: bitset 2011/01/30 v1.1 Data type bit set (HO) -Package: uniquecounter 2011/01/30 v1.2 Provides unlimited unique counter (HO) -) -Package hobsub Info: Skipping package `hobsub' (already loaded). -Package: letltxmacro 2010/09/02 v1.4 Let assignment for LaTeX macros (HO) -Package: hopatch 2011/01/30 v1.0 Wrapper for package hooks (HO) -Package: xcolor-patch 2011/01/30 xcolor patch -Package: atveryend 2011/04/23 v1.7 Hooks at very end of document (HO) -Package atveryend Info: \enddocument detected (standard). -Package: atbegshi 2011/01/30 v1.15 At begin shipout hook (HO) -Package: refcount 2010/12/01 v3.2 Data extraction from references (HO) -Package: hycolor 2011/01/30 v1.7 Color options of hyperref/bookmark (HO) -) -(/usr/local/texlive/2011/texmf-dist/tex/generic/ifxetex/ifxetex.sty -Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/oberdiek/kvoptions.sty -Package: kvoptions 2010/12/23 v3.10 Keyval support for LaTeX options (HO) -) -\@linkdim=\dimen136 -\Hy@linkcounter=\count114 -\Hy@pagecounter=\count115 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2011/04/17 v6.82g Hyperref: PDFDocEncoding definition (HO) -Now handling font encoding PD1 ... -... no UTF-8 mapping file for font encoding PD1 -) -\Hy@SavedSpaceFactor=\count116 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/hyperref.cfg -File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive -) -Package hyperref Info: Option `colorlinks' set `true' on input line 3905. -Package hyperref Info: Option `breaklinks' set `true' on input line 3905. -Package hyperref Info: Hyper figures OFF on input line 4026. -Package hyperref Info: Link nesting OFF on input line 4031. -Package hyperref Info: Hyper index ON on input line 4034. -Package hyperref Info: Plain pages OFF on input line 4041. -Package hyperref Info: Backreferencing OFF on input line 4046. -Package hyperref Info: Implicit mode ON; LaTeX internals redefined. -Package hyperref Info: Bookmarks ON on input line 4264. -\c@Hy@tempcnt=\count117 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/url/url.sty -\Urlmuskip=\muskip11 -Package: url 2006/04/12 ver 3.3 Verb mode for urls, etc. -) -LaTeX Info: Redefining \url on input line 4617. -\Fld@menulength=\count118 -\Field@Width=\dimen137 -\Fld@charsize=\dimen138 -Package hyperref Info: Hyper figures OFF on input line 5701. -Package hyperref Info: Link nesting OFF on input line 5706. -Package hyperref Info: Hyper index ON on input line 5709. -Package hyperref Info: backreferencing OFF on input line 5716. -Package hyperref Info: Link coloring ON on input line 5719. -Package hyperref Info: Link coloring with OCG OFF on input line 5726. -Package hyperref Info: PDF/A mode OFF on input line 5731. -LaTeX Info: Redefining \ref on input line 5771. -LaTeX Info: Redefining \pageref on input line 5775. -\Hy@abspage=\count119 -\c@Item=\count120 -\c@Hfootnote=\count121 -) - -Package hyperref Message: Driver (autodetected): hpdftex. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/hyperref/hpdftex.def -File: hpdftex.def 2011/04/17 v6.82g Hyperref driver for pdfTeX -\Fld@listcount=\count122 -\c@bookmark@seq@number=\count123 - -(/usr/local/texlive/2011/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty -Package: rerunfilecheck 2011/04/15 v1.7 Rerun checks for auxiliary files (HO) -Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 -82. -) -\Hy@SectionHShift=\skip74 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/oberdiek/hypcap.sty -Package: hypcap 2011/02/16 v1.11 Adjusting anchors of captions (HO) -) -\DUlineblockindent=\skip75 -) -(/usr/local/texlive/2011/texmf-dist/tex/latex/multirow/multirow.sty -\bigstrutjot=\dimen139 -) -\@indexfile=\write5 -\openout5 = `bedtools.idx'. - - -Writing index file bedtools.idx -(./bedtools.aux) -\openout1 = `bedtools.aux'. - -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 110. -LaTeX Font Info: Try loading font information for TS1+cmr on input line 110. - - (/usr/local/texlive/2011/texmf-dist/tex/latex/base/ts1cmr.fd -File: ts1cmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions -) -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 110. -LaTeX Font Info: ... okay on input line 110. -LaTeX Font Info: Try loading font information for T1+ptm on input line 110. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/psnfss/t1ptm.fd -File: t1ptm.fd 2001/06/04 font definitions for T1/ptm. -) -(/usr/local/texlive/2011/texmf-dist/tex/context/base/supp-pdf.mkii -[Loading MPS to PDF converter (version 2006.09.02).] -\scratchcounter=\count124 -\scratchdimen=\dimen140 -\scratchbox=\box40 -\nofMPsegments=\count125 -\nofMParguments=\count126 -\everyMPshowfont=\toks30 -\MPscratchCnt=\count127 -\MPscratchDim=\dimen141 -\MPnumerator=\count128 -\makeMPintoPDFobject=\count129 -\everyMPtoPDFconversion=\toks31 -) (/usr/local/texlive/2011/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty -Package: epstopdf-base 2010/02/09 v2.5 Base part for package epstopdf - -(/usr/local/texlive/2011/texmf-dist/tex/latex/oberdiek/grfext.sty -Package: grfext 2010/08/19 v1.1 Managing graphics extensions (HO) -) -Package grfext Info: Graphics extension search list: -(grfext) [.png,.pdf,.jpg,.mps,.jpeg,.jbig2,.jb2,.PNG,.PDF,.JPG,.JPE -G,.JBIG2,.JB2,.eps] -(grfext) \AppendGraphicsExtensions on input line 452. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg -File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv -e -)) -\AtBeginShipoutBox=\box41 -Package hyperref Info: Link coloring ON on input line 110. - -(/usr/local/texlive/2011/texmf-dist/tex/latex/hyperref/nameref.sty -Package: nameref 2010/04/30 v2.40 Cross-referencing by name of section - -(/usr/local/texlive/2011/texmf-dist/tex/generic/oberdiek/gettitlestring.sty -Package: gettitlestring 2010/12/03 v1.4 Cleanup title references (HO) -) -\c@section@level=\count130 -) -LaTeX Info: Redefining \ref on input line 110. -LaTeX Info: Redefining \pageref on input line 110. -LaTeX Info: Redefining \nameref on input line 110. - -(./bedtools.out) (./bedtools.out) -\@outlinefile=\write6 -\openout6 = `bedtools.out'. - - -Underfull \hbox (badness 10000) in paragraph at lines 113--113 - - [] - -LaTeX Font Info: Try loading font information for T1+phv on input line 113. -(/usr/local/texlive/2011/texmf-dist/tex/latex/psnfss/t1phv.fd -File: t1phv.fd 2001/06/04 scalable font definitions for T1/phv. -) -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <24.88> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 113. -LaTeX Font Info: Font shape `T1/phv/m/it' in size <17.28> not available -(Font) Font shape `T1/phv/m/sl' tried instead on input line 113. -LaTeX Font Info: Font shape `T1/phv/bx/it' in size <17.28> not available -(Font) Font shape `T1/phv/b/it' tried instead on input line 113. -LaTeX Font Info: Font shape `T1/phv/b/it' in size <17.28> not available -(Font) Font shape `T1/phv/b/sl' tried instead on input line 113. -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <17.28> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 113. - [1 - -{/usr/local/texlive/2011/texmf-var/fonts/map/pdftex/updmap/pdftex.map}] [2 - -] (./bedtools.toc -LaTeX Font Info: Font shape `T1/ptm/bx/n' in size <10> not available -(Font) Font shape `T1/ptm/b/n' tried instead on input line 2. -) -\tf@toc=\write7 -\openout7 = `bedtools.toc'. - - -Adding blank page after the table of contents. -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <10> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 113. -pdfTeX warning (ext4): destination with the same identifier (name{page.i}) has -been already used, duplicate ignored -<to be read again> - \relax -l.113 \tableofcontents - [1 - -]pdfTeX warning (ext4): destination with the same identifier (name{page.ii}) ha -s been already used, duplicate ignored -<to be read again> - \relax -l.113 \tableofcontents - [2] -Chapter 1. -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <14.4> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 118. -[1 - - -] [2 - -] -Chapter 2. -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <12> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 129. - -Overfull \hbox (0.92122pt too wide) in paragraph at lines 306--306 -[]\T1/ptm/b/n/10 bed12ToBed6| - [] - - -Overfull \hbox (3.86118pt too wide) in paragraph at lines 306--306 -[]\T1/ptm/b/n/10 fastaFromBed| - [] - - -Overfull \hbox (6.3912pt too wide) in paragraph at lines 306--306 -\T1/ptm/b/n/10 FastaFromBed| - [] - -[3] [4] -LaTeX Font Info: Try loading font information for T1+pcr on input line 343. - (/usr/local/texlive/2011/texmf-dist/tex/latex/psnfss/t1pcr.fd -File: t1pcr.fd 2001/06/04 font definitions for T1/pcr. -) [5] -LaTeX Font Info: Font shape `T1/phv/bx/it' in size <10> not available -(Font) Font shape `T1/phv/b/it' tried instead on input line 393. -LaTeX Font Info: Font shape `T1/phv/b/it' in size <10> not available -(Font) Font shape `T1/phv/b/sl' tried instead on input line 393. - -[6] -Underfull \hbox (badness 6268) in paragraph at lines 471--475 -\T1/ptm/m/n/10 Browser web-site are ac-cept-able. For ex-am-ple, one can down-l -oad the hg19 chromInfo file here: - [] - -[7] [8] [9] -LaTeX Font Info: Try loading font information for TS1+ptm on input line 709. - - (/usr/local/texlive/2011/texmf-dist/tex/latex/psnfss/ts1ptm.fd -File: ts1ptm.fd 2001/06/04 font definitions for TS1/ptm. -) -[10] [11] -Underfull \hbox (badness 10000) in paragraph at lines 897--898 -[]\T1/ptm/m/n/10 The BEDPE for-mat is de-scribed be-low. The de-scrip-tion is m -od-i-fied from: - [] - -[12] -Overfull \hbox (13.9989pt too wide) in paragraph at lines 1084--1085 -\T1/ptm/m/n/10 The GFF for-mat is de-scribed on the Sanger In-sti-tute's web-si -te ([][]http://www.sanger.ac.uk/resources/software/gff/spec.html[][]). - [] - -[13] [14] -LaTeX Font Info: Font shape `T1/phv/bx/n' in size <9> not available -(Font) Font shape `T1/phv/b/n' tried instead on input line 1266. - -Overfull \hbox (1.8124pt too wide) in paragraph at lines 1361--1361 -\T1/ptm/b/n/10 abam| - [] - - -Overfull \hbox (2.37233pt too wide) in paragraph at lines 1361--1361 -\T1/ptm/b/n/10 ubam| - [] - -[15] [16] -LaTeX Font Info: Font shape `T1/phv/bx/it' in size <9> not available -(Font) Font shape `T1/phv/b/it' tried instead on input line 1460. -LaTeX Font Info: Font shape `T1/phv/b/it' in size <9> not available -(Font) Font shape `T1/phv/b/sl' tried instead on input line 1460. - [17] [18] [19] [20] [21] -Underfull \hbox (badness 10000) in paragraph at lines 1813--1814 -[]\T1/ptm/m/n/10 Note: If chrom1 <> - [] - - -Underfull \hbox (badness 10000) in paragraph at lines 1822--1823 -[]\T1/ptm/m/n/10 Note: If chrom1 <> - [] - - -Overfull \hbox (1.71796pt too wide) in paragraph at lines 1741--1835 -[][] - [] - -[22] -Overfull \vbox (32.96994pt too high) has occurred while \output is active [] - - -[23] [24] [25] [26] [27] [28] -Overfull \hbox (1.71796pt too wide) in paragraph at lines 2180--2229 -[][] - [] - -[29] -LaTeX Font Info: Font shape `T1/ptm/bx/it' in size <10> not available -(Font) Font shape `T1/ptm/b/it' tried instead on input line 2327. - -Overfull \hbox (2266.84943pt too wide) in paragraph at lines 2327--2329 -[] - [] - - -Overfull \hbox (1.71796pt too wide) in paragraph at lines 2316--2361 -[][] - [] - -[30] [31] -Overfull \hbox (1.8124pt too wide) in paragraph at lines 2497--2497 -\T1/ptm/b/n/10 abam| - [] - - -Overfull \hbox (2.37233pt too wide) in paragraph at lines 2497--2497 -\T1/ptm/b/n/10 ubam| - [] - -[32] [33] [34] -Overfull \hbox (1.71796pt too wide) in paragraph at lines 2649--2682 -[][] - [] - -[35] [36] [37] [38] [39] [40] -Overfull \hbox (1.71796pt too wide) in paragraph at lines 3033--3085 -[][] - [] - -[41] [42] [43] -Overfull \hbox (1.71796pt too wide) in paragraph at lines 3261--3310 -[][] - [] - -[44] [45] [46] [47] [48] [49] -Overfull \hbox (5.51234pt too wide) in paragraph at lines 3652--3652 -\T1/ptm/b/n/10 chrom| - [] - -[50] [51] -LaTeX Font Info: Font shape `T1/pcr/bx/n' in size <9> not available -(Font) Font shape `T1/pcr/b/n' tried instead on input line 3797. - [52] [53] [54] [55] -Overfull \hbox (2.37233pt too wide) in paragraph at lines 4176--4176 -\T1/ptm/b/n/10 mapq| - [] - - -Overfull \hbox (2.37233pt too wide) in paragraph at lines 4176--4176 -\T1/ptm/b/n/10 ubam| - [] - - -Overfull \hbox (3.48232pt too wide) in paragraph at lines 4176--4176 -\T1/ptm/b/n/10 bed12| - [] - -[56] [57] -Underfull \hbox (badness 10000) in paragraph at lines 4289--4293 -\T1/ptm/b/n/10 bedToIgv \T1/ptm/m/n/10 cre-ates an IGV ([][]http://www.broadins -titute.org/igv/[][]) batch script (see: [][]http://[][] - [] - - -Overfull \hbox (1.25233pt too wide) in paragraph at lines 4347--4347 -\T1/ptm/b/n/10 name| - [] - -[58] [59] -Overfull \hbox (1.71796pt too wide) in paragraph at lines 4462--4524 -[][] - [] - -[60] [61] [62] [63] [64] [65] -Overfull \hbox (6.12906pt too wide) in paragraph at lines 4915--4915 -\T1/ptm/b/n/10 namesr| - [] - - -Overfull \hbox (2.24905pt too wide) in paragraph at lines 4915--4915 -\T1/ptm/b/n/10 counts| - [] - -[66] [67] [68] [69] [70] [71] [72] [73] [74 - -] -Chapter 3. -(./bedtools.ind) -Package atveryend Info: Empty hook `BeforeClearDocument' on input line 5394. - [75] -Package atveryend Info: Empty hook `AfterLastShipout' on input line 5394. - (./bedtools.aux) -Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 5394. -Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 5394. - -Package rerunfilecheck Info: File `bedtools.out' has not changed. -(rerunfilecheck) Checksum: 5C046F6ADF8B6680025890F98DBD26AC;554. -Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 5394. - ) -Here is how much of TeX's memory you used: - 9283 strings out of 493633 - 136195 string characters out of 3143378 - 242702 words of memory out of 3000000 - 12072 multiletter control sequences out of 15000+200000 - 68623 words of font info for 72 fonts, out of 3000000 for 9000 - 832 hyphenation exceptions out of 8191 - 36i,12n,49p,1133b,403s stack positions out of 5000i,500n,10000p,200000b,50000s -{/usr/local/texlive/2011/texmf-dist/fonts/enc/dvips/base/8r.enc}</usr/local/t -exlive/2011/texmf-dist/fonts/type1/urw/courier/ucrb8a.pfb></usr/local/texlive/2 -011/texmf-dist/fonts/type1/urw/courier/ucrr8a.pfb></usr/local/texlive/2011/texm -f-dist/fonts/type1/urw/helvetic/uhvb8a.pfb></usr/local/texlive/2011/texmf-dist/ -fonts/type1/urw/helvetic/uhvbo8a.pfb></usr/local/texlive/2011/texmf-dist/fonts/ -type1/urw/times/utmb8a.pfb></usr/local/texlive/2011/texmf-dist/fonts/type1/urw/ -times/utmbi8a.pfb></usr/local/texlive/2011/texmf-dist/fonts/type1/urw/times/utm -r8a.pfb></usr/local/texlive/2011/texmf-dist/fonts/type1/urw/times/utmri8a.pfb> -Output written on bedtools.pdf (79 pages, 270556 bytes). -PDF statistics: - 756 PDF objects out of 1000 (max. 8388607) - 660 compressed objects within 7 object streams - 326 named destinations out of 1000 (max. 500000) - 81 words of extra memory for PDF output out of 10000 (max. 10000000) - diff --git a/docs/_build/latex/bedtools.out b/docs/_build/latex/bedtools.out deleted file mode 100644 index 383e9302..00000000 --- a/docs/_build/latex/bedtools.out +++ /dev/null @@ -1,10 +0,0 @@ -\BOOKMARK [0][-]{chapter.1}{Overview}{}% 1 -\BOOKMARK [0][-]{chapter.2}{Table of contents}{}% 2 -\BOOKMARK [1][-]{section.2.1}{Overview}{chapter.2}% 3 -\BOOKMARK [1][-]{section.2.2}{Installation}{chapter.2}% 4 -\BOOKMARK [1][-]{section.2.3}{Quick start}{chapter.2}% 5 -\BOOKMARK [1][-]{section.2.4}{General usage}{chapter.2}% 6 -\BOOKMARK [1][-]{section.2.5}{The BEDTools suite}{chapter.2}% 7 -\BOOKMARK [1][-]{section.2.6}{Example usage}{chapter.2}% 8 -\BOOKMARK [1][-]{section.2.7}{Advanced usage}{chapter.2}% 9 -\BOOKMARK [0][-]{chapter.3}{Mailing list}{}% 10 diff --git a/docs/_build/latex/bedtools.tex b/docs/_build/latex/bedtools.tex deleted file mode 100644 index 1fc68119..00000000 --- a/docs/_build/latex/bedtools.tex +++ /dev/null @@ -1,5394 +0,0 @@ -% Generated by Sphinx. -\def\sphinxdocclass{report} -\documentclass[letterpaper,10pt,english]{sphinxmanual} -\usepackage[utf8]{inputenc} -\DeclareUnicodeCharacter{00A0}{\nobreakspace} -\usepackage[T1]{fontenc} -\usepackage{babel} -\usepackage{times} -\usepackage[Bjarne]{fncychap} -\usepackage{longtable} -\usepackage{sphinx} -\usepackage{multirow} - - -\title{Bedtools Documentation} -\date{July 21, 2012} -\release{2.16.2} -\author{Quinlan lab @ UVa} -\newcommand{\sphinxlogo}{} -\renewcommand{\releasename}{Release} -\makeindex - -\makeatletter -\def\PYG@reset{\let\PYG@it=\relax \let\PYG@bf=\relax% - \let\PYG@ul=\relax \let\PYG@tc=\relax% - \let\PYG@bc=\relax \let\PYG@ff=\relax} -\def\PYG@tok#1{\csname PYG@tok@#1\endcsname} -\def\PYG@toks#1+{\ifx\relax#1\empty\else% - \PYG@tok{#1}\expandafter\PYG@toks\fi} -\def\PYG@do#1{\PYG@bc{\PYG@tc{\PYG@ul{% - \PYG@it{\PYG@bf{\PYG@ff{#1}}}}}}} -\def\PYG#1#2{\PYG@reset\PYG@toks#1+\relax+\PYG@do{#2}} - -\def\PYG@tok@gd{\def\PYG@tc##1{\textcolor[rgb]{0.63,0.00,0.00}{##1}}} -\def\PYG@tok@gu{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.50,0.00,0.50}{##1}}} -\def\PYG@tok@gt{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.25,0.82}{##1}}} -\def\PYG@tok@gs{\let\PYG@bf=\textbf} -\def\PYG@tok@gr{\def\PYG@tc##1{\textcolor[rgb]{1.00,0.00,0.00}{##1}}} -\def\PYG@tok@cm{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}} -\def\PYG@tok@vg{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}} -\def\PYG@tok@m{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@mh{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@cs{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}\def\PYG@bc##1{\colorbox[rgb]{1.00,0.94,0.94}{##1}}} -\def\PYG@tok@ge{\let\PYG@it=\textit} -\def\PYG@tok@vc{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}} -\def\PYG@tok@il{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@go{\def\PYG@tc##1{\textcolor[rgb]{0.19,0.19,0.19}{##1}}} -\def\PYG@tok@cp{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@gi{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.63,0.00}{##1}}} -\def\PYG@tok@gh{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.00,0.50}{##1}}} -\def\PYG@tok@ni{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.84,0.33,0.22}{##1}}} -\def\PYG@tok@nl{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.13,0.44}{##1}}} -\def\PYG@tok@nn{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.05,0.52,0.71}{##1}}} -\def\PYG@tok@no{\def\PYG@tc##1{\textcolor[rgb]{0.38,0.68,0.84}{##1}}} -\def\PYG@tok@na{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@nb{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@nc{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.05,0.52,0.71}{##1}}} -\def\PYG@tok@nd{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.33,0.33,0.33}{##1}}} -\def\PYG@tok@ne{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@nf{\def\PYG@tc##1{\textcolor[rgb]{0.02,0.16,0.49}{##1}}} -\def\PYG@tok@si{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.44,0.63,0.82}{##1}}} -\def\PYG@tok@s2{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@vi{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}} -\def\PYG@tok@nt{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.02,0.16,0.45}{##1}}} -\def\PYG@tok@nv{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.38,0.84}{##1}}} -\def\PYG@tok@s1{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@gp{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.78,0.36,0.04}{##1}}} -\def\PYG@tok@sh{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@ow{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@sx{\def\PYG@tc##1{\textcolor[rgb]{0.78,0.36,0.04}{##1}}} -\def\PYG@tok@bp{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@c1{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}} -\def\PYG@tok@kc{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@c{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.50,0.56}{##1}}} -\def\PYG@tok@mf{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@err{\def\PYG@bc##1{\fcolorbox[rgb]{1.00,0.00,0.00}{1,1,1}{##1}}} -\def\PYG@tok@kd{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@ss{\def\PYG@tc##1{\textcolor[rgb]{0.32,0.47,0.09}{##1}}} -\def\PYG@tok@sr{\def\PYG@tc##1{\textcolor[rgb]{0.14,0.33,0.53}{##1}}} -\def\PYG@tok@mo{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@mi{\def\PYG@tc##1{\textcolor[rgb]{0.13,0.50,0.31}{##1}}} -\def\PYG@tok@kn{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@o{\def\PYG@tc##1{\textcolor[rgb]{0.40,0.40,0.40}{##1}}} -\def\PYG@tok@kr{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@s{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@kp{\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@w{\def\PYG@tc##1{\textcolor[rgb]{0.73,0.73,0.73}{##1}}} -\def\PYG@tok@kt{\def\PYG@tc##1{\textcolor[rgb]{0.56,0.13,0.00}{##1}}} -\def\PYG@tok@sc{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@sb{\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@k{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.00,0.44,0.13}{##1}}} -\def\PYG@tok@se{\let\PYG@bf=\textbf\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} -\def\PYG@tok@sd{\let\PYG@it=\textit\def\PYG@tc##1{\textcolor[rgb]{0.25,0.44,0.63}{##1}}} - -\def\PYGZbs{\char`\\} -\def\PYGZus{\char`\_} -\def\PYGZob{\char`\{} -\def\PYGZcb{\char`\}} -\def\PYGZca{\char`\^} -\def\PYGZsh{\char`\#} -\def\PYGZpc{\char`\%} -\def\PYGZdl{\char`\$} -\def\PYGZti{\char`\~} -% for compatibility with earlier versions -\def\PYGZat{@} -\def\PYGZlb{[} -\def\PYGZrb{]} -\makeatother - -\begin{document} - -\maketitle -\tableofcontents -\phantomsection\label{index::doc} - - - -\chapter{Overview} -\label{index:bedtools-a-powerful-toolset-for-genome-arithmetic}\label{index:overview} -Brief paragraph of the software. - - -\chapter{Table of contents} -\label{index:table-of-contents} - -\section{Overview} -\label{content/overview:overview}\label{content/overview::doc} - -\subsection{1.1 Background} -\label{content/overview:background} -The development of BEDTools was motivated by a need for fast, flexible tools with which to compare large sets of genomic -features. Answering fundamental research questions with existing tools was either too slow or required modifications to the -way they reported or computed their results. We were aware of the utilities on the UCSC Genome Browser and Galaxy websites, as -well as the elegant tools available as part of Jim Kent’s monolithic suite of tools (“Kent sourceâ€). However, we found that -the web-based tools were too cumbersome when working with large datasets generated by current sequencing technologies. -Similarly, we found that the Kent source command line tools often required a local installation of the UCSC Genome Browser. -These limitations, combined with the fact that we often wanted an extra option here or there that wasn’t available with -existing tools, led us to develop our own from scratch. The initial version of BEDTools was publicly released in the spring of -2009. The current version has evolved from our research experiences and those of the scientists using the suite over the last -year. The BEDTools suite enables one to answer common questions of genomic data in a fast and reliable manner. The fact that -almost all the utilities accept input from “stdin†allows one to “stream / pipe†several commands together to facilitate more -complicated analyses. Also, the tools allow fine control over how output is reported. The initial version of BEDTools -supported solely 6-column \href{http://genome.ucsc.edu/FAQ/FAQformat\#format1}{BED} files. \emph{However, we have subsequently added support for sequence alignments in} \href{http://samtools.sourceforge.net/}{BAM} -\emph{format, as well as for features in} \href{http://genome.ucsc.edu/FAQ/FAQformat\#format3}{GFF} , \emph{“blocked†BED format, and} -\href{http://www.1000genomes.org/wiki/Analysis/Variant\%20Call\%20Format/vcf-variant-call-format-version-41}{VCF} \emph{format}. -The tools are quite fast and typically finish in a matter of a few seconds, even for large datasets. This manual seeks to describe the behavior and -available functionality for each BEDTool. Usage examples are scattered throughout the text, and formal examples are -provided in the last two sections, we hope that this document will give you a sense of the flexibility of -the toolkit and the types of analyses that are possible with BEDTools. If you have further questions, please join the BEDTools -discussion group, visit the Usage Examples on the Google Code site (usage, advanced usage), or take a look at the nascent -“Usage From the Wild†page. - - -\subsection{1.2 Summary of available tools.} -\label{content/overview:summary-of-available-tools} -BEDTools support a wide range of operations for interrogating and manipulating genomic features. The table below summarizes -the tools available in the suite. - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Utility -} & \textbf{ -Description -}\\\hline - -\textbf{intersectBed} - & -Returns overlaps between two BED/GFF/VCF files. -\\\hline - -\textbf{pairToBed} - & -Returns overlaps between a paired-end BED file and a regular BED/VCF/GFF file. -\\\hline - -\textbf{bamToBed} - & -Converts BAM alignments to BED6, BED12, or BEDPE format. -\\\hline - -\textbf{bedToBam} - & -Converts BED/GFF/VCF features to BAM format. -\\\hline - -\textbf{bed12ToBed6} - & -Converts ``blocked'' BED12 features to discrete BED6 features. -\\\hline - -\textbf{bedToIgv} - & -Creates IGV batch scripts for taking multiple snapshots from BED/GFF/VCF features. -\\\hline - -\textbf{coverageBed} - & -Summarizes the depth and breadth of coverage of features in one BED versus features (e.g, windows, exons, etc.) defined in another BED/GFF/VCF file. -\\\hline - -\textbf{multiBamCov} - & -Counts sequence coverage for multiple position-sorted bams at specific loci defined in a BED/GFF/VCF file -\\\hline - -\textbf{tagBam} - & -Annotates a BAM file with custom tag fields based on overlaps with BED/GFF/VCF files -\\\hline - -\textbf{nuclBed} - & -Profiles the nucleotide content of intervals in a fasta file -\\\hline - -\textbf{genomeCoverageBed} - & -Creates either a histogram, BEDGRAPH, or a ``per base'' report of genome coverage. -\\\hline - -\textbf{unionBedGraphs} - & -Combines multiple BedGraph? files into a single file, allowing coverage/other comparisons between them. -\\\hline - -\textbf{annotateBed} - & -Annotates one BED/VCF/GFF file with overlaps from many others. -\\\hline - -\textbf{groupBy} - & -Deprecated. Now in the filo package. -\\\hline - -\textbf{overlap} - & -Returns the number of bases pairs of overlap b/w two features on the same line. -\\\hline - -\textbf{pairToPair} - & -Returns overlaps between two paired-end BED files. -\\\hline - -\textbf{closestBed} - & -Returns the closest feature to each entry in a BED/GFF/VCF file. -\\\hline - -\textbf{subtractBed} - & -Removes the portion of an interval that is overlapped by another feature. -\\\hline - -\textbf{windowBed} - & -Returns overlaps between two BED/VCF/GFF files based on a user-defined window. -\\\hline - -\textbf{mergeBed} - & -Merges overlapping features into a single feature. -\\\hline - -\textbf{complementBed} - & -Returns all intervals not spanned by the features in a BED/GFF/VCF file. -\\\hline - -\textbf{fastaFromBed} - & -Creates FASTA sequences based on intervals in a BED/GFF/VCF file. -\\\hline - -\textbf{maskFastaFromBed} - & -Masks a FASTA file based on BED coordinates. -\\\hline - -\textbf{shuffleBed} - & -Randomly permutes the locations of a BED file among a genome. -\\\hline - -\textbf{slopBed} - & -Adjusts each BED entry by a requested number of base pairs. -\\\hline - -\textbf{flankBed} - & -Creates flanking intervals for each feature in a BED/GFF/VCF file. -\\\hline - -\textbf{sortBed} - & -Sorts a BED file by chrom, then start position. Other ways as well. -\\\hline - -\textbf{linksBed} - & -Creates an HTML file of links to the UCSC or a custom browser. -\\\hline -\end{tabulary} - - - -\subsection{1.3 Fundamental concepts.} -\label{content/overview:fundamental-concepts} - -\subsubsection{1.3.1 What are genome features and how are they represented?} -\label{content/overview:what-are-genome-features-and-how-are-they-represented} -Throughout this manual, we will discuss how to use BEDTools to manipulate, compare and ask questions of genome “featuresâ€. Genome features can be functional elements (e.g., genes), genetic polymorphisms (e.g. -SNPs, INDELs, or structural variants), or other annotations that have been discovered or curated by genome sequencing groups or genome browser groups. In addition, genome features can be custom annotations that -an individual lab or researcher defines (e.g., my novel gene or variant). - -The basic characteristics of a genome feature are the chromosome or scaffold on which the feature “residesâ€, the base pair on which the -feature starts (i.e. the “startâ€), the base pair on which feature ends (i.e. the “endâ€), the strand on which the feature exists (i.e. “+†or “-“), and the name of the feature if one is applicable. - -The two most widely used formats for representing genome features are the BED (Browser Extensible Data) and GFF (General Feature Format) formats. BEDTools was originally written to work exclusively with genome features -described using the BED format, but it has been recently extended to seamlessly work with BED, GFF and VCF files. - -Existing annotations for the genomes of many species can be easily downloaded in BED and GFF -format from the UCSC Genome Browser’s “Table Browser†(\href{http://genome.ucsc.edu/cgi-bin/hgTables?command=start}{http://genome.ucsc.edu/cgi-bin/hgTables?command=start}) or from the “Bulk Downloads†page (\href{http://hgdownload.cse.ucsc.edu/downloads.html}{http://hgdownload.cse.ucsc.edu/downloads.html}). In addition, the -Ensemble Genome Browser contains annotations in GFF/GTF format for many species (\href{http://www.ensembl.org/info/data/ftp/index.html}{http://www.ensembl.org/info/data/ftp/index.html}) - - -\subsubsection{1.3.2 Overlapping / intersecting features.} -\label{content/overview:overlapping-intersecting-features} -Two genome features (henceforth referred to as “featuresâ€) are said to overlap or intersect if they share at least one base in common. -In the figure below, Feature A intersects/overlaps Feature B, but it does not intersect/overlap Feature C. - -\textbf{TODO: place figure here} - - -\subsubsection{1.3.3 Comparing features in file “A†and file “Bâ€.} -\label{content/overview:comparing-features-in-file-a-and-file-b} -The previous section briefly introduced a fundamental naming convention used in BEDTools. Specifically, all BEDTools that compare features contained in two distinct files refer to one file as feature set “A†and the other file as feature set “Bâ€. This is mainly in the interest of brevity, but it also has its roots in set theory. -As an example, if one wanted to look for SNPs (file A) that overlap with exons (file B), one would use intersectBed in the following manner: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed –a snps.bed –b exons.bed -\end{Verbatim} - -There are two exceptions to this rule: 1) When the “A†file is in BAM format, the “-abam†option must bed used. For example: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed –abam alignedReads.bam –b exons.bed -\end{Verbatim} - -And 2) For tools where only one input feature file is needed, the “-i†option is used. For example: - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed –i repeats.bed -\end{Verbatim} - - -\subsubsection{1.3.4 BED starts are zero-based and BED ends are one-based.} -\label{content/overview:bed-starts-are-zero-based-and-bed-ends-are-one-based} -BEDTools users are sometimes confused by the way the start and end of BED features are represented. Specifically, BEDTools uses the UCSC Genome Browser’s internal database convention of making the start position 0-based and the end position 1-based: (\href{http://genome.ucsc.edu/FAQ/FAQtracks\#tracks1}{http://genome.ucsc.edu/FAQ/FAQtracks\#tracks1}) -In other words, BEDTools interprets the “start†column as being 1 basepair higher than what is represented in the file. For example, the following BED feature represents a single base on chromosome 1; namely, the 1st base: - -\begin{Verbatim}[commandchars=\\\{\}] -chr1 0 1 first\_base -\end{Verbatim} - -Why, you might ask? The advantage of storing features this way is that when computing the length of a feature, one must simply subtract the start from the end. Were the start position 1-based, -the calculation would be (slightly) more complex (i.e. (end-start)+1). Thus, storing BED features this way reduces the computational burden. - - -\subsubsection{1.3.5 GFF starts and ends are one-based.} -\label{content/overview:gff-starts-and-ends-are-one-based} -In contrast, the GFF format uses 1-based coordinates for both the start and the end positions. BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your GFF features for them to work correctly with BEDTools. - - -\subsubsection{1.3.6 VCF coordinates are one-based.} -\label{content/overview:vcf-coordinates-are-one-based} -The VCF format uses 1-based coordinates. As in GFF, BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your VCF features for them to work correctly with BEDTools. - - -\subsubsection{1.3.7 File B is loaded into memory (most of the time).} -\label{content/overview:file-b-is-loaded-into-memory-most-of-the-time} -Whenever a BEDTool compares two files of features, the “B†file is loaded into memory. By contrast, the “A†file is processed line by line and compared with the features from B. -Therefore to minimize memory usage, one should set the smaller of the two files as the B file. One salient example is the comparison of aligned sequence reads from a -current DNA sequencer to gene annotations. In this case, the aligned sequence file (in BED format) may have tens of millions of features (the sequence alignments), -while the gene annotation file will have tens of thousands of features. In this case, it is wise to sets the reads as file A and the genes as file B. - - -\subsubsection{1.3.8 Feature files \emph{must} be tab-delimited.} -\label{content/overview:feature-files-must-be-tab-delimited} -This is rather self-explanatory. While it is possible to allow BED files to be space-delimited, we have decided to require tab delimiters for three reasons: -\begin{enumerate} -\item {} -By requiring one delimiter type, the processing time is minimized. - -\item {} -Tab-delimited files are more amenable to other UNIX utilities. - -\item {} -GFF files can contain spaces within attribute columns. This complicates the use of space-delimited files as spaces must therefore be treated specially depending on the context. - -\end{enumerate} - - -\subsubsection{1.3.9 All BEDTools allow features to be “piped†via standard input.} -\label{content/overview:all-bedtools-allow-features-to-be-piped-via-standard-input} -In an effort to allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, all BEDTools allow features -to be passed to them via standard input. Only one feature file may be passed to a BEDTool via standard input. -The convention used by all BEDTools is to set either file A or file B to “stdin†or ``-''. For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat snps.bed \textbar{} intersectBed –a stdin –b exons.bed -cat snps.bed \textbar{} intersectBed –a - –b exons.bed -\end{Verbatim} - -In addition, all BEDTools that simply require one main input file (the -i file) will assume that input is -coming from standard input if the -i parameter is ignored. For example, the following are equivalent: - -\begin{Verbatim}[commandchars=\\\{\}] -cat snps.bed \textbar{} sortBed –i stdin -cat snps.bed \textbar{} sortBed -\end{Verbatim} - - -\subsubsection{1.3.10 Most BEDTools write their results to standard output.} -\label{content/overview:most-bedtools-write-their-results-to-standard-output} -To allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, -most BEDTools report their output to standard output, rather than to a named file. If one wants to write the output to a named file, one can use the UNIX “file redirection†symbol “\textgreater{}†to do so. -Writing to standard output (the default): - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed –a snps.bed –b exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678 -\end{Verbatim} - -Writing to a file: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed –a snps.bed –b exons.bed \textgreater{} snps.in.exons.bed - -cat snps.in.exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678 -\end{Verbatim} - - -\subsubsection{1.3.11 What is a “genome†file?} -\label{content/overview:what-is-a-genome-file} -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which species / genome build you are working. -The way you do this for BEDTools is to create a “genome†file, which simply lists the names of the -chromosomes (or scaffolds, etc.) and their size (in basepairs). -Genome files must be tab-delimited and are structured as follows (this is an example for C. elegans): - -\begin{Verbatim}[commandchars=\\\{\}] -chrI 15072421 -chrII 15279323 -... -chrX 17718854 -chrM 13794 -\end{Verbatim} - -BEDTools includes predefined genome files for human and mouse in the /genomes directory included -in the BEDTools distribution. Additionally, the “chromInfo†files/tables available from the UCSC -Genome Browser website are acceptable. For example, one can download the hg19 chromInfo file here: -\href{http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz}{http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz} - - -\subsubsection{1.3.12 Paired-end BED files (BEDPE files).} -\label{content/overview:paired-end-bed-files-bedpe-files} -We have defined a new file format (BEDPE) to concisely describe disjoint genome features, such as -structural variations or paired-end sequence alignments. We chose to define a new format because the -existing BED block format (i.e. BED12) does not allow inter-chromosomal feature definitions. Moreover, -the BED12 format feels rather bloated when one want to describe events with only two blocks. - - -\subsubsection{1.3.13 Use “-h†for help with any BEDTool.} -\label{content/overview:use-h-for-help-with-any-bedtool} -Rather straightforward. If you use the “-h†option with any BEDTool, a full menu of example usage -and available options (when applicable) will be reported. - - -\subsubsection{1.3.14 BED features must not contain negative positions.} -\label{content/overview:bed-features-must-not-contain-negative-positions} -BEDTools will typically reject BED features that contain negative positions. In special cases, however, -BEDPE positions may be set to -1 to indicate that one or more ends of a BEDPE feature is unaligned. - - -\subsubsection{1.3.15 The start position must be \textless{}= to the end position.} -\label{content/overview:the-start-position-must-be-to-the-end-position} -BEDTools will reject BED features where the start position is greater than the end position. - - -\subsubsection{1.3.16 Headers are allowed in GFF and BED files} -\label{content/overview:headers-are-allowed-in-gff-and-bed-files} -BEDTools will ignore headers at the beginning of BED and GFF files. Valid header lines begin with a -“\#†symbol, the work “trackâ€, or the word “browserâ€. For example, the following examples are valid -headers for BED or GFF files: - -\begin{Verbatim}[commandchars=\\\{\}] -track name=aligned\_read description="Illumina aligned reads†-chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 - - -\#This is a fascinating dataset -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 - - -browser position chr22:1-20000 -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 - -\end{Verbatim} - - -\subsubsection{1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzippedâ€} -\label{content/overview:gzip-support-bed-gff-vcf-and-bedpe-file-can-be-gzipped} -BEDTools will process gzipped BED, GFF, VCF and BEDPE files in the same manner as -uncompressed files. Gzipped files are auto-detected thanks to a helpful contribution from Gordon -Assaf. - - -\subsubsection{1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features} -\label{content/overview:support-for-split-or-spliced-bam-alignments-and-blocked-bed-features} -As of Version 2.8.0, five BEDTools (\code{intersectBed}, \code{coverageBed}, \code{genomeCoverageBed}, -\code{bamToBed}, and \code{bed12ToBed6}) can properly handle “splitâ€/â€spliced†BAM alignments (i.e., having an -“N†CIGAR operation) and/or “blocked†BED (aka BED12) features. - -\code{intersectBed}, \code{coverageBed}, and \code{genomeCoverageBed} will optionally handle “split†BAM and/or -“blocked†BED by using the \code{-split} option. This will cause intersects or coverage to be computed only -for the alignment or feature blocks. In contrast, without this option, the intersects/coverage would be -computed for the entire “span†of the alignment or feature, regardless of the size of the gaps between -each alignment or feature block. For example, imagine you have a RNA-seq read that originates from -the junction of two exons that were spliced together in a mRNA. In the genome, these two exons -happen to be 30Kb apart. Thus, when the read is aligned to the reference genome, one portion of the -read will align to the first exon, while another portion of the read will align ca. 30Kb downstream to the -other exon. The corresponding CIGAR string would be something like (assuming a 76bp read): -30M*3000N*46M. In the genome, this alignment “spans†3076 bp, yet the nucleotides in the sequencing -read only align “cover†76bp. Without the \code{-split} option, coverage or overlaps would be reported for the -entire 3076bp span of the alignment. However, with the \code{-split} option, coverage or overlaps will only -be reported for the portions of the read that overlap the exons (i.e. 30bp on one exon, and -46bp on the other). - -Using the -split option with bamToBed causes “spliced/split†alignments to be reported in BED12 -format. Using the -split option with bed12ToBed6 causes “blocked†BED12 features to be reported in -BED6 format. - - -\subsubsection{1.3.19 Writing uncompressed BAM output.} -\label{content/overview:writing-uncompressed-bam-output} -When working with a large BAM file using a complex set of tools in a pipe/stream, it is advantageous -to pass uncompressed BAM output to each downstream program. This minimizes the amount of time -spent compressing and decompressing output from one program to the next. All BEDTools that create -BAM output (e.g. \code{intersectBed}, \code{windowBed}) will now optionally create uncompressed BAM output -using the \code{-ubam} option. - - -\subsection{1.4 Implementation and algorithmic notes.} -\label{content/overview:implementation-and-algorithmic-notes} -BEDTools was implemented in C++ and makes extensive use of data structures and fundamental -algorithms from the Standard Template Library (STL). Many of the core algorithms are based upon the -genome binning algorithm described in the original UCSC Genome Browser paper (Kent et al, 2002). -The tools have been designed to inherit core data structures from central source files, thus allowing -rapid tool development and deployment of improvements and corrections. Support for BAM files is -made possible through Derek Barnett’s elegant C++ API called BamTools. - - -\subsection{1.5 License and availability.} -\label{content/overview:license-and-availability} -BEDTools is freely available under a GNU Public License (Version 2) at: -\href{http://bedtools.googlecode.com}{http://bedtools.googlecode.com} - - -\subsection{1.6 Mailing list.} -\label{content/overview:mailing-list} -A discussion group for reporting bugs, asking questions of the developer and of the user community, as -well as for requesting new features is available at: -\href{http://groups.google.com/group/bedtools-discuss}{http://groups.google.com/group/bedtools-discuss} - - -\subsection{1.7 Contributors.} -\label{content/overview:contributors} -As open-source software, BEDTools greatly benefits from contributions made by other developers and -users of the tools. We encourage and welcome suggestions, contributions and complaints. This is how -software matures, improves and stays on top of the needs of its user community. The Google Code -(GC) site maintains a list of individuals who have contributed either source code or useful ideas for -improving the tools. In the near future, we hope to maintain a source repository on the GC site in -order to facilitate further contributions. We are currently unable to do so because we use Git for -version control, which is not yet supported by GC. - - -\section{Installation} -\label{content/installation:installation}\label{content/installation::doc} -BEDTools is intended to run in a ``command line'' environment on UNIX, LINUX and Apple OS X -operating systems. Installing BEDTools involves downloading the latest source code archive followed by -compiling the source code into binaries on your local system. The following commands will install -BEDTools in a local directory on a NIX or OS X machine. Note that the \textbf{``\textless{}version\textgreater{}''} refers to the -latest posted version number on \href{http://bedtools.googlecode.com/}{http://bedtools.googlecode.com/}. - -Note: \emph{The BEDTools ``makefiles'' use the GCC compiler. One should edit the Makefiles accordingly if -one wants to use a different compiler.}: - -\begin{Verbatim}[commandchars=\\\{\}] -curl http://bedtools.googlecode.com/files/BEDTools.\textless{}version\textgreater{}.tar.gz \textgreater{} BEDTools.tar.gz -tar -zxvf BEDTools.tar.gz -cd BEDTools-\textless{}version\textgreater{} -make clean -make all -ls bin -\end{Verbatim} - -At this point, one should copy the binaries in BEDTools/bin/ to either usr/local/bin/ or some -other repository for commonly used UNIX tools in your environment. You will typically require -administrator (e.g. ``root'' or ``sudo'') privileges to copy to usr/local/bin/. If in doubt, contact you -system administrator for help. - - -\section{Quick start} -\label{content/quick-start:quick-start}\label{content/quick-start::doc} - -\subsection{Install BEDTools} -\label{content/quick-start:install-bedtools} -\begin{Verbatim}[commandchars=\\\{\}] -curl http://bedtools.googlecode.com/files/BEDTools.\textless{}version\textgreater{}.tar.gz \textgreater{} BEDTools.tar.gz -tar -zxvf BEDTools.tar.gz -cd BEDTools -make clean -make all -sudo cp bin/* /usr/local/bin/ -\end{Verbatim} - - -\subsection{Use BEDTools} -\label{content/quick-start:use-bedtools} -Below are examples of typical BEDTools usage. \textbf{Additional usage examples are described in -section 6 of this manual.} Using the ``-h'' option with any BEDTools will report a list of all command -line options. - -A. Report the base-pair overlap between the features in two BED files. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -\end{Verbatim} - -B. Report those entries in A that overlap NO entries in B. Like ``grep -v'' - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed ?Cv -\end{Verbatim} - -C. Read BED A from stdin. Useful for stringing together commands. For example, find genes that overlap LINEs -but not SINEs. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a genes.bed -b LINES.bed \textbar{} intersectBed -a stdin -b SINEs.bed ?Cv -\end{Verbatim} - -D. Find the closest ALU to each gene. - -\begin{Verbatim}[commandchars=\\\{\}] -closestBed -a genes.bed -b ALUs.bed -\end{Verbatim} - -E. Merge overlapping repetitive elements into a single entry, returning the number of entries merged. - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed -i repeatMasker.bed -n -\end{Verbatim} - -F. Merge nearby repetitive elements into a single entry, so long as they are within 1000 bp of one another. - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed -i repeatMasker.bed -d 1000 -\end{Verbatim} - - -\section{General usage} -\label{content/general-usage::doc}\label{content/general-usage:general-usage} - -\subsection{4.1 Supported file formats} -\label{content/general-usage:supported-file-formats} - -\subsubsection{4.1.1 BED format} -\label{content/general-usage:bed-format} -As described on the UCSC Genome Browser website (see link below), the BED format is a concise and -flexible way to represent genomic features and annotations. The BED format description supports up to -12 columns, but only the first 3 are required for the UCSC browser, the Galaxy browser and for -BEDTools. BEDTools allows one to use the ``BED12'' format (that is, all 12 fields listed below). -However, only intersectBed, coverageBed, genomeCoverageBed, and bamToBed will obey the BED12 -``blocks'' when computing overlaps, etc., via the \textbf{``-split''} option. For all other tools, the last six columns -are not used for any comparisons by the BEDTools. Instead, they will use the entire span (start to end) -of the BED12 entry to perform any relevant feature comparisons. The last six columns will be reported -in the output of all comparisons. - -The file description below is modified from: \href{http://genome.ucsc.edu/FAQ/FAQformat\#format1}{http://genome.ucsc.edu/FAQ/FAQformat\#format1}. -\begin{enumerate} -\item {} -\textbf{chrom} - The name of the chromosome on which the genome feature exists. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``chr1'', ``III'', ``myChrom'', ``contig1112.23''. - -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{1} -\item {} -\textbf{start} - The zero-based starting position of the feature in the chromosome. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The first base in a chromosome is numbered 0}. - -\item {} -\emph{The start position in each BED feature is therefore interpreted to be 1 greater than the start position listed in the feature. For example, start=9, end=20 is interpreted to span bases 10 through 20,inclusive}. - -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{2} -\item {} -\textbf{end} - The one-based ending position of the feature in the chromosome. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The end position in each BED feature is one-based. See example above}. - -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{3} -\item {} -\textbf{name} - Defines the name of the BED feature. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``LINE'', ``Exon3'', ``HWIEAS\_0001:3:1:0:266\#0/1'', or ``my\_Feature''. - -\item {} -\emph{This column is optional}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{4} -\item {} -\textbf{score} - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), ``up'', ``down'', etc. - -\item {} -\emph{This column is optional}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{5} -\item {} -\textbf{strand} - Defines the strand - either `+' or `-`. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is optional}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{6} -\item {} -\textbf{thickStart} - The starting position at which the feature is drawn thickly. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{7} -\item {} -\textbf{thickEnd} - The ending position at which the feature is drawn thickly. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{8} -\item {} -\textbf{itemRgb} - An RGB value of the form R,G,B (e.g. 255,0,0). - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{9} -\item {} -\textbf{blockCount} - The number of blocks (exons) in the BED line. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{10} -\item {} -\textbf{blockSizes} - A comma-separated list of the block sizes. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{11} -\item {} -\textbf{blockStarts} - A comma-separated list of block starts. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Allowed yet ignored by BEDTools}. - -\end{itemize} - -BEDTools requires that all BED input files (and input received from stdin) are \textbf{tab-delimited}. The following types of BED files are supported by BEDTools: -\begin{enumerate} -\item {} -\begin{DUlineblock}{0em} -\item[] \textbf{BED3}: A BED file where each feature is described by \textbf{chrom}, \textbf{start}, and \textbf{end}. -\item[] For example: chr1 11873 14409 -\end{DUlineblock} - -\item {} -\begin{DUlineblock}{0em} -\item[] \textbf{BED4}: A BED file where each feature is described by \textbf{chrom}, \textbf{start}, \textbf{end}, and \textbf{name}. -\item[] For example: chr1 11873 14409 uc001aaa.3 -\end{DUlineblock} - -\item {} -\begin{DUlineblock}{0em} -\item[] \textbf{BED5}: A BED file where each feature is described by \textbf{chrom}, \textbf{start}, \textbf{end}, \textbf{name}, and \textbf{score}. -\item[] For example: chr1 11873 14409 uc001aaa.3 0 -\end{DUlineblock} - -\item {} -\begin{DUlineblock}{0em} -\item[] \textbf{BED6}: A BED file where each feature is described by \textbf{chrom}, \textbf{start}, \textbf{end}, \textbf{name}, \textbf{score}, and \textbf{strand}. -\item[] For example: chr1 11873 14409 uc001aaa.3 0 + -\end{DUlineblock} - -\item {} -\begin{DUlineblock}{0em} -\item[] \textbf{BED12}: A BED file where each feature is described by all twelve columns listed above. -\item[] For example: chr1 11873 14409 uc001aaa.3 0 + 11873 -\item[] 11873 0 3 354,109,1189, 0,739,1347, -\end{DUlineblock} - -\end{enumerate} - - -\subsubsection{4.1.2 BEDPE format} -\label{content/general-usage:bedpe-format} -We have defined a new file format (BEDPE) in order to concisely describe disjoint genome features, -such as structural variations or paired-end sequence alignments. We chose to define a new format -because the existing ``blocked'' BED format (a.k.a. BED12) does not allow inter-chromosomal feature -definitions. In addition, BED12 only has one strand field, which is insufficient for paired-end sequence -alignments, especially when studying structural variation. - -The BEDPE format is described below. The description is modified from: \href{http://genome.ucsc.edu/FAQ/FAQformat\#format1}{http://genome.ucsc.edu/FAQ/FAQformat\#format1}. -\begin{enumerate} -\item {} -\textbf{chrom1} - The name of the chromosome on which the \textbf{first} end of the feature exists. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``chr1'', ``III'', ``myChrom'', ``contig1112.23''. - -\item {} -\emph{This column is required}. - -\item {} -\emph{Use ''.'' for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{1} -\item {} -\textbf{start1} - The zero-based starting position of the \textbf{first} end of the feature on \textbf{chrom1}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The first base in a chromosome is numbered 0}. - -\item {} -\emph{As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required}. - -\item {} -\emph{Use -1 for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{2} -\item {} -\textbf{end1} - The one-based ending position of the first end of the feature on \textbf{chrom1}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The end position in each BEDPE feature is one-based}. - -\item {} -\emph{This column is required}. - -\item {} -\emph{Use -1 for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{3} -\item {} -\textbf{chrom2} - The name of the chromosome on which the \textbf{second} end of the feature exists. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``chr1'', ``III'', ``myChrom'', ``contig1112.23''. - -\item {} -\emph{This column is required}. - -\item {} -\emph{Use ''.'' for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{4} -\item {} -\textbf{start2} - The zero-based starting position of the \textbf{second} end of the feature on \textbf{chrom2}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The first base in a chromosome is numbered 0}. - -\item {} -\emph{As with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required}. - -\item {} -\emph{Use -1 for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{5} -\item {} -\textbf{end2} - The one-based ending position of the \textbf{second} end of the feature on \textbf{chrom2}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{The end position in each BEDPE feature is one-based}. - -\item {} -\emph{This column is required}. - -\item {} -\emph{Use -1 for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{6} -\item {} -\textbf{name} - Defines the name of the BEDPE feature. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``LINE'', ``Exon3'', ``HWIEAS\_0001:3:1:0:266\#0/1'', or ``my\_Feature''. - -\item {} -\emph{This column is optional}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{7} -\item {} -\textbf{score} - The UCSC definition requires that a BED score range from 0 to 1000, inclusive. \emph{However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features}. For example, strings allow scientific notation for p-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, 7.31E-05 (p-value), 0.33456 (mean enrichment value), ``up'', ``down'', etc. - -\item {} -\emph{This column is optional}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{8} -\item {} -\textbf{strand1} - Defines the strand for the first end of the feature. Either `+' or `-`. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is optional}. - -\item {} -\emph{Use ''.'' for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{9} -\item {} -\textbf{strand2} - Defines the strand for the second end of the feature. Either `+' or `-`. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is optional}. - -\item {} -\emph{Use ''.'' for unknown}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{10} -\item {} -\textbf{Any number of additional, user-defined fields} - BEDTools allows one to add as many additional fields to the normal, 10-column BEDPE format as necessary. These columns are merely ``passed through'' \textbf{pairToBed} and \textbf{pairToPair} and are not part of any analysis. One would use these additional columns to add extra information (e.g., edit distance for each end of an alignment, or ``deletion'', ``inversion'', etc.) to each BEDPE feature. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{These additional columns are optional}. - -\end{itemize} - -Entries from an typical BEDPE file: - -\begin{Verbatim}[commandchars=\\\{\}] -chr1 100 200 chr5 5000 5100 bedpe\_example1 30 + - -chr9 1000 5000 chr9 3000 3800 bedpe\_example2 100 + - -\end{Verbatim} - -Entries from a BEDPE file with two custom fields added to each record: - -\begin{Verbatim}[commandchars=\\\{\}] -chr1 10 20 chr5 50 60 a1 30 + - 0 1 -chr9 30 40 chr9 80 90 a2 100 + - 2 1 -\end{Verbatim} - - -\subsubsection{4.1.3 GFF format} -\label{content/general-usage:gff-format} -The GFF format is described on the Sanger Institute's website (\href{http://www.sanger.ac.uk/resources/software/gff/spec.html}{http://www.sanger.ac.uk/resources/software/gff/spec.html}). The GFF description below is modified from the definition at this URL. All nine columns in the GFF format description are required by BEDTools. -\begin{enumerate} -\item {} -\textbf{seqname} - The name of the sequence (e.g. chromosome) on which the feature exists. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``chr1'', ``III'', ``myChrom'', ``contig1112.23''. - -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{1} -\item {} -\textbf{source} - The source of this feature. This field will normally be used to indicate the program making the prediction, or if it comes from public database annotation, or is experimentally verified, etc. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{2} -\item {} -\textbf{feature} - The feature type name. Equivalent to BED's \textbf{name} field. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{Any string can be used}. For example, ``exon'', etc. - -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{3} -\item {} -\textbf{start} - The one-based starting position of feature on \textbf{seqname}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\item {} -\emph{BEDTools accounts for the fact the GFF uses a one-based position and BED uses a zero-based start position}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{4} -\item {} -\textbf{end} - The one-based ending position of feature on \textbf{seqname}. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{5} -\item {} -\textbf{score} - A score assigned to the GFF feature. Like BED format, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. We note that this differs from the GFF definition in the interest of flexibility. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{6} -\item {} -\textbf{strand} - Defines the strand. Use `+', `-` or `.' - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{7} -\item {} -\textbf{frame} - The frame of the coding sequence. Use `0', `1', `2', or `.'. - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} -\begin{enumerate} -\setcounter{enumi}{8} -\item {} -\textbf{attribute} - Taken from \href{http://www.sanger.ac.uk/resources/software/gff/spec.html}{http://www.sanger.ac.uk/resources/software/gff/spec.html}: From version 2 onwards, the attribute field must have an tag value structure following the syntax used within objects in a .ace file, flattened onto one line by semicolon separators. Tags must be standard identifiers ({[}A-Za-z{]}{[}{\color{red}\bfseries{}AZa-z0-9\_}{]}*). Free text values must be quoted with double quotes. \emph{Note: all non-printing characters in such free text value strings (e.g. newlines, tabs, control characters, etc) must be explicitly represented by their C (UNIX) style backslash-escaped representation (e.g. newlines as `n', tabs as `t')}. As in ACEDB, multiple values can follow a specific tag. The aim is to establish consistent use of particular tags, corresponding to an underlying implied ACEDB model if you want to think that way (but acedb is not required). - -\end{enumerate} -\begin{itemize} -\item {} -\emph{This column is required}. - -\end{itemize} - -An entry from an example GFF file : - -\begin{Verbatim}[commandchars=\\\{\}] -seq1 BLASTX similarity 101 235 87.1 + 0 Target "HBA\_HUMAN" 11 55 ; -E\_value 0.0003 dJ102G20 GD\_mRNA coding\_exon 7105 7201 . - 2 Sequence -"dJ102G20.C1.1" -\end{Verbatim} - - -\subsubsection{4.1.3 GFF format} -\label{content/general-usage:id1} -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which which species/genome build you are -working. The way you do this for BEDTools is to create a ``genome'' file, which simply lists the names of -the chromosomes (or scaffolds, etc.) and their size (in basepairs). - -Genome files must be \textbf{tab-delimited} and are structured as follows (this is an example for \emph{C. elegans}): - -\begin{Verbatim}[commandchars=\\\{\}] -chrI 15072421 -chrII 15279323 -... -chrX 17718854 -chrM 13794 -\end{Verbatim} - -BEDTools includes pre-defined genome files for human and mouse in the \textbf{/genomes} directory included -in the BEDTools distribution. - - -\subsubsection{4.1.5 SAM/BAM format} -\label{content/general-usage:sam-bam-format} -The SAM / BAM format is a powerful and widely-used format for storing sequence alignment data (see -\href{http://samtools.sourceforge.net/}{http://samtools.sourceforge.net/} for more details). It has quickly become the standard format to which -most DNA sequence alignment programs write their output. Currently, the following BEDTools -support inout in BAM format: \emph{intersectBed, windowBed, coverageBed, genomeCoverageBed, -pairToBed, bamToBed}. Support for the BAM format in BEDTools allows one to (to name a few): -compare sequence alignments to annotations, refine alignment datasets, screen for potential mutations -and compute aligned sequence coverage. - -The details of how these tools work with BAM files are addressed in \textbf{Section 5} of this manual. - - -\subsubsection{4.1.6 VCF format} -\label{content/general-usage:vcf-format} -The Variant Call Format (VCF) was conceived as part of the 1000 Genomes Project as a standardized -means to report genetic variation calls from SNP, INDEL and structural variant detection programs -(see \href{http://www.1000genomes.org/wiki/doku.php?id=1000\_genomes:analysis:vcf4.0}{http://www.1000genomes.org/wiki/doku.php?id=1000\_genomes:analysis:vcf4.0} for details). -BEDTools now supports the latest version of this format (i.e, Version 4.0). As a result, BEDTools can -be used to compare genetic variation calls with other genomic features. - - -\section{The BEDTools suite} -\label{content/bedtools-suite:the-bedtools-suite}\label{content/bedtools-suite::doc} -This section covers the functionality and default / optional usage for each of the available BEDTools. -Example ``figures'' are provided in some cases in an effort to convey the purpose of the tool. The -behavior of each available parameter is discussed for each tool in abstract terms. More concrete usage -examples are provided in \textbf{Section 6}. - - -\subsection{Table of contents} -\label{content/bedtools-suite:table-of-contents} - -\subsubsection{5.1 intersectBed} -\label{content/intersectBed:intersectbed}\label{content/intersectBed::doc} -By far, the most common question asked of two sets of genomic features is whether or not any of the -features in the two sets ``overlap'' with one another. This is known as feature intersection. \textbf{intersectBed} -allows one to screen for overlaps between two sets of genomic features. Moreover, it allows one to have -fine control as to how the intersections are reported. \textbf{intersectBed} works with both BED/GFF/VCF -and BAM files as input. - - -\paragraph{5.1.1 Usage and option summary} -\label{content/intersectBed:usage-and-option-summary} -\textbf{Usage}: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed [OPTIONS] [-a \textless{}BED/GFF/VCF\textgreater{} \textbar{}\textbar{} -abam \textless{}BAM\textgreater{}] -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-a} - & -BED/GFF/VCF file A. Each feature in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe. -\\\hline - -\textbf{-b} - & -BED/GFF/VCF file B. Use ``stdin'' if passing B with a UNIX pipe. -\\\hline - -\textbf{-abam} - & -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe: For example: samtools view -b \textless{}BAM\textgreater{} \textbar{} intersectBed -abam stdin -b genes.bed -\\\hline - -\textbf{-ubam} - & -Write uncompressed BAM output. The default is write compressed BAM output. -\\\hline - -\textbf{-bed} - & -When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: intersectBed -abam reads.bam -b genes.bed -bed -\\\hline - -\textbf{-wa} - & -Write the original entry in A for each overlap. -\\\hline - -\textbf{-wb} - & -Write the original entry in B for each overlap. Useful for knowing what A overlaps. Restricted by -f and -r. -\\\hline - -\textbf{-wo} - & -Write the original A and B entries plus the number of base pairs of overlap between the two features. Only A features with overlap are reported. Restricted by -f and -r. -\\\hline - -\textbf{-wao} - & -Write the original A and B entries plus the number of base pairs of overlap between the two features. However, A features w/o overlap are also reported with a NULL B feature and overlap = 0. Restricted by -f and -r. -\\\hline - -\textbf{-u} - & -Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. Restricted by -f and -r. -\\\hline - -\textbf{-c} - & -For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B. Restricted by -f and -r. -\\\hline - -\textbf{-v} - & -Only report those entries in A that have no overlap in B. Restricted by -f and -r. -\\\hline - -\textbf{-f} - & -Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -\\\hline - -\textbf{-r} - & -Require that the fraction of overlap be reciprocal for A and B. In other words, if -f is 0.90 and -r is used, this requires that B overlap at least 90\% of A and that A also overlaps at least 90\% of B. -\\\hline - -\textbf{-s} - & -Force ``strandedness''. That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -\\\hline - -\textbf{-split} - & -Treat ``split'' BAM (i.e., having an ``N'' CIGAR operation) or BED12 entries as distinct BED intervals. -\\\hline -\end{tabulary} - - - -\paragraph{5.1.2 Default behavior} -\label{content/intersectBed:default-behavior} -By default, if an overlap is found, \textbf{intersectBed} reports the shared interval between the two -overlapping features. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED/BAM A ******************* ************* - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result ======== -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed -a A.bed -b B.bed -chr1 150 200 -\end{Verbatim} - - -\paragraph{5.1.3 (-wa)Reporting the original A feature} -\label{content/intersectBed:wa-reporting-the-original-a-feature} -Instead, one can force \textbf{intersectBed} to report the \emph{original} \textbf{``A''} feature when an overlap is found. As -shown below, the entire ``A'' feature is reported, not just the portion that overlaps with the ``B'' feature. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED/BAM A ******************* ************* - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =================== -\end{Verbatim} - -For example (compare with example from default behavior): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed -a A.bed -b B.bed -wa -chr1 100 200 -\end{Verbatim} - - -\paragraph{5.1.4 (-wb)Reporting the original B feature} -\label{content/intersectBed:wb-reporting-the-original-b-feature} -Similarly, one can force \textbf{intersectBed} to report the \emph{original} \textbf{``B''} feature when an overlap is found. If -just -wb is used, the overlapping portion of A will be reported followed by the \emph{original} \textbf{``B''}. If both -wa -and -wb are used, the \emph{originals} of both \textbf{``A''} and \textbf{``B''} will be reported. - -For example (-wb alone): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed -a A.bed -b B.bed -wb -chr1 150 200 chr1 150 250 -\end{Verbatim} - -Now -wa and -wb: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed -a A.bed -b B.bed -wa -wb -chr1 100 200 chr1 150 250 -\end{Verbatim} - - -\paragraph{5.1.5 (-u)Reporting the presence of \emph{at least one} overlapping feature} -\label{content/intersectBed:u-reporting-the-presence-of-at-least-one-overlapping-feature} -Frequently a feature in ``A'' will overlap with multiple features in ``B''. By default, \textbf{intersectBed} will -report each overlap as a separate output line. However, one may want to simply know that there is at -least one overlap (or none). When one uses the -u option, ``A'' features that overlap with one or more -``B'' features are reported once. Those that overlap with no ``B'' features are not reported at all. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed -a A.bed -b B.bed -u -chr1 100 200 -\end{Verbatim} - - -\paragraph{5.1.6 (-c)Reporting the number of overlapping features} -\label{content/intersectBed:c-reporting-the-number-of-overlapping-features} -The -c option reports a column after each ``A'' feature indicating the \emph{number} (0 or more) of overlapping -features found in ``B''. Therefore, \emph{each feature in A is reported once}. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed -a A.bed -b B.bed -c -chr1 100 200 2 -chr1 1000 2000 0 -\end{Verbatim} - - -\paragraph{5.1.6 (-c)Reporting the number of overlapping features} -\label{content/intersectBed:id1} -The -c option reports a column after each ``A'' feature indicating the \emph{number} (0 or more) of overlapping -features found in ``B''. Therefore, \emph{each feature in A is reported once}. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed -a A.bed -b B.bed -c -chr1 100 200 2 -chr1 1000 2000 0 -\end{Verbatim} - - -\paragraph{5.1.7 (-v)Reporting the absence of any overlapping features} -\label{content/intersectBed:v-reporting-the-absence-of-any-overlapping-features} -There will likely be cases where you'd like to know which ``A'' features do not overlap with any of the -``B'' features. Perhaps you'd like to know which SNPs don't overlap with any gene annotations. The -v -(an homage to ``grep -v'') option will only report those ``A'' features that have no overlaps in ``B''. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed -a A.bed -b B.bed -v -chr1 1000 2000 -\end{Verbatim} - - -\paragraph{5.1.8 (-f)Requiring a minimal overlap fraction} -\label{content/intersectBed:f-requiring-a-minimal-overlap-fraction} -By default, \textbf{intersectBed} will report an overlap between A and B so long as there is at least one base -pair is overlapping. Yet sometimes you may want to restrict reported overlaps between A and B to cases -where the feature in B overlaps at least X\% (e.g. 50\%) of the A feature. The -f option does exactly -this. - -For example (note that the second B entry is not reported): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 180 220 - -intersectBed -a A.bed -b B.bed -f 0.50 -wa -wb -chr1 100 200 chr1 130 201 -\end{Verbatim} - - -\paragraph{5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction} -\label{content/intersectBed:r-combined-with-f-requiring-reciprocal-minimal-overlap-fraction} -Similarly, you may want to require that a minimal fraction of both the A and the B features is -overlapped. For example, if feature A is 1kb and feature B is 1Mb, you might not want to report the -overlap as feature A can overlap at most 1\% of feature B. If one set -f to say, 0.02, and one also -enable the -r (reciprocal overlap fraction required), this overlap would not be reported. - -For example (note that the second B entry is not reported): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 130 200000 - -intersectBed -a A.bed -b B.bed -f 0.50 -r -wa -wb -chr1 100 200 chr1 130 201 -\end{Verbatim} - - -\paragraph{5.1.10 (-s)Enforcing ``strandedness''} -\label{content/intersectBed:s-enforcing-strandedness} -By default, \textbf{intersectBed} will report overlaps between features even if the features are on opposite -strands. However, if strand information is present in both BED files and the ``-s'' option is used, overlaps -will only be reported when features are on the same strand. - -For example (note that the second B entry is not reported): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 a1 100 + - -cat B.bed -chr1 130 201 b1 100 - -chr1 130 201 b2 100 + - -intersectBed -a A.bed -b B.bed -wa -wb -s -chr1 100 200 a1 100 + chr1 130 201 b2 100 + -\end{Verbatim} - - -\paragraph{5.1.11 (-abam)Default behavior when using BAM input} -\label{content/intersectBed:abam-default-behavior-when-using-bam-input} -When comparing alignments in BAM format (\textbf{-abam}) to features in BED format (\textbf{-b}), \textbf{intersectBed} -will, \textbf{by default}, write the output in BAM format. That is, each alignment in the BAM file that meets -the user's criteria will be written (to standard output) in BAM format. This serves as a mechanism to -create subsets of BAM alignments are of biological interest, etc. Note that only the mate in the BAM -alignment is compared to the BED file. Thus, if only one end of a paired-end sequence overlaps with a -feature in B, then that end will be written to the BAM output. By contrast, the other mate for the -pair will not be written. One should use \textbf{pairToBed(Section 5.2)} if one wants each BAM alignment -for a pair to be written to BAM output. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -abam reads.unsorted.bam -b simreps.bed \textbar{} samtools view - \textbar{} head -3 - -BERTHA\_0001:3:1:15:1362\#0 99 chr4 9236904 0 50M = 9242033 5 1 7 9 -AGACGTTAACTTTACACACCTCTGCCAAGGTCCTCATCCTTGTATTGAAG W c T U ] b \PYGZbs{} g c e g X g f c b f c c b d d g g V Y P W W \_ -\PYGZbs{}c{}`dcdabdfW\textasciicircum{}a\textasciicircum{}gggfgd XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:19 X1:i:2 XM:i:0 XO:i:0 XG:i:0 MD:Z:50 -BERTHA \_0001:3:1:16:994\#0 83 chr6 114221672 37 25S6M1I11M7S = -114216196 -5493 G A A A G G C C A G A G T A T A G A A T A A A C A C A A C A A T G T C C A A G G T A C A C T G T T A -gffeaaddddggggggedgcgeggdegggggffcgggggggegdfggfgf XT:A:M NM:i:3 SM:i:37 AM:i:37 XM:i:2 X O : i : -1 XG:i:1 MD:Z:6A6T3 -BERTHA \_0001:3:1:16:594\#0 147 chr8 43835330 0 50M = -43830893 -4487 CTTTGGGAGGGCTTTGTAGCCTATCTGGAAAAAGGAAATATCTTCCCATG U -\PYGZbs{}e\textasciicircum{}bgeTdg\_Kgcg{}`ggeggg\_gggggggggddgdggVg\PYGZbs{}gWdfgfgff XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:10 X1:i:7 X M : i : -2 XO:i:0 XG:i:0 MD:Z:1A2T45 -\end{Verbatim} - - -\paragraph{5.1.12 (-bed)Output BED format when using BAM input} -\label{content/intersectBed:bed-output-bed-format-when-using-bam-input} -When comparing alignments in BAM format (\textbf{-abam}) to features in BED format (\textbf{-b}), \textbf{intersectBed} -will \textbf{optionally} write the output in BED format. That is, each alignment in the BAM file is converted -to a 6 column BED feature and if overlaps are found (or not) based on the user's criteria, the BAM -alignment will be reported in BED format. The BED ``name'' field is comprised of the RNAME field in -the BAM alignment. If mate information is available, the mate (e.g., ``/1'' or ``/2'') field will be -appended to the name. The ``score'' field is the mapping quality score from the BAM alignment. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -abam reads.unsorted.bam -b simreps.bed -bed \textbar{} head -20 - -chr4 9236903 9236953 BERTHA\_0001:3:1:15:1362\#0/1 0 + -chr6 114221671 114221721 BERTHA\_0001:3:1:16:994\#0/1 37 - -chr8 43835329 43835379 BERTHA\_0001:3:1:16:594\#0/2 0 - -chr4 49110668 49110718 BERTHA\_0001:3:1:31:487\#0/1 23 + -chr19 27732052 27732102 BERTHA\_0001:3:1:32:890\#0/2 46 + -chr19 27732012 27732062 BERTHA\_0001:3:1:45:1135\#0/1 37 + -chr10 117494252 117494302 BERTHA\_0001:3:1:68:627\#0/1 37 - -chr19 27731966 27732016 BERTHA\_0001:3:1:83:931\#0/2 9 + -chr8 48660075 48660125 BERTHA\_0001:3:1:86:608\#0/2 37 - -chr9 34986400 34986450 BERTHA\_0001:3:1:113:183\#0/2 37 - -chr10 42372771 42372821 BERTHA\_0001:3:1:128:1932\#0/1 3 - -chr19 27731954 27732004 BERTHA\_0001:3:1:130:1402\#0/2 0 + -chr10 42357337 42357387 BERTHA\_0001:3:1:137:868\#0/2 9 + -chr1 159720631 159720681 BERTHA\_0001:3:1:147:380\#0/2 37 - -chrX 58230155 58230205 BERTHA\_0001:3:1:151:656\#0/2 37 - -chr5 142612746 142612796 BERTHA\_0001:3:1:152:1893\#0/1 37 - -chr9 71795659 71795709 BERTHA\_0001:3:1:177:387\#0/1 37 + -chr1 106240854 106240904 BERTHA\_0001:3:1:194:928\#0/1 37 - -chr4 74128456 74128506 BERTHA\_0001:3:1:221:724\#0/1 37 - -chr8 42606164 42606214 BERTHA\_0001:3:1:244:962\#0/1 37 + -\end{Verbatim} - - -\paragraph{5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features} -\label{content/intersectBed:split-reporting-overlaps-with-spliced-alignments-or-blocked-bed-features} -As described in section 1.3.19, intersectBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only screen for overlaps for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The \textbf{-split} command allows for such overlaps to be -performed. - -For example, the diagram below illustrates the \emph{default} behavior. The blue dots represent the ``split/ -spliced'' portion of the alignment (i.e., CIGAR ``N'' operation). In this case, the two exon annotations -are reported as overlapping with the ``split'' BAM alignment, but in addition, a third feature that -overlaps the ``split'' portion of the alignment is also reported. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -Exons --------------- ---------- - -BED/BAM A ************.......................................**** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =============== ======== ========== -\end{Verbatim} - -In contrast, when using the \textbf{-split} option, only the exon overlaps are reported. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -Exons --------------- ---------- - -BED/BAM A ************.......................................**** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =============== ========== -\end{Verbatim} - - -\subsubsection{5.2 pairToBed} -\label{content/pairToBed::doc}\label{content/pairToBed:pairtobed} -\textbf{pairToBed} compares each end of a BEDPE feature or a paired-end BAM alignment to a feature file in -search of overlaps. - -\textbf{NOTE: pairToBed requires that the BAM file is sorted/grouped by the read name. This -allows pairToBed to extract correct alignment coordinates for each end based on their -respective CIGAR strings. It also assumes that the alignments for a given pair come in -groups of twos. There is not yet a standard method for reporting multiple alignments -using BAM. pairToBed will fail if an aligner does not report alignments in pairs.} - - -\paragraph{5.2.1 Usage and option summary} -\label{content/pairToBed:usage-and-option-summary} -\textbf{Usage:} - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed [OPTIONS] [-a \textless{}BEDPE\textgreater{} \textbar{}\textbar{} -abam \textless{}BAM\textgreater{}] -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-a} - & -BEDPE file A. Each feature in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe. Output will be in BEDPE format. -\\\hline - -\textbf{-b} - & -BED file B. Use ``stdin'' if passing B with a UNIX pipe. -\\\hline - -\textbf{-abam} - & -BAM file A. Each end of each BAM alignment in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe: For example: samtools view ?Cb \textless{}BAM\textgreater{} \textbar{} pairToBed ?Cabam stdin ?Cb genes.bed \textbar{} samtools view - -\\\hline - -\textbf{-ubam} - & -Write uncompressed BAM output. The default is write compressed BAM output. -\\\hline - -\textbf{-bedpe} - & -When using BAM input (-abam), write output as BEDPE. The default is to write output in BAM when using -abam. For example: pairToBed ?Cabam reads.bam ?Cb genes.bed ?Cbedpe -\\\hline - -\textbf{-ed} - & -Use BAM total edit distance (NM tag) for BEDPE score. Default for BEDPE is to use the \emph{minimum} of the two mapping qualities for the pair. When -ed is used the \emph{total} edit distance from the two mates is reported as the score. -\\\hline - -\textbf{-f} - & -Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -\\\hline - -\textbf{-s} - & -Force ``strandedness''. That is, only report hits in B that overlap A on the \textbf{same} strand. By default, overlaps are reported without respect to strand. -\\\hline - -\textbf{-type} - & -Approach to reporting overlaps between BEDPE and BED. -\begin{quote} -\begin{quote} - -\textbf{either-} Report overlaps if either end of A overlaps B. -\begin{itemize} -\item {} -\emph{Default} - -\end{itemize} - -\textbf{neither-} Report A if neither end of A overlaps B. - -\textbf{xor-} Report overlaps if one and only one end of A overlaps B. - -\textbf{both-} Report overlaps if both ends of A overlap B. - -\textbf{notboth-} Report overlaps if neither end or one and only one end of A overlap B. - -\textbf{ispan-} Report overlaps between {[}end1, start2{]} of A and B. -\begin{itemize} -\item {} -Note: If chrom1 \textless{}\textgreater{} chrom2, entry is ignored. - -\end{itemize} -\end{quote} - -\textbf{ospan-} Report overlaps between {[}start1, end2{]} of A and B. -\begin{quote} -\begin{itemize} -\item {} -Note: If chrom1 \textless{}\textgreater{} chrom2, entry is ignored. - -\end{itemize} - -\textbf{notispan-} Report A if ispan of A doesn't overlap B. -- Note: If chrom1 \textless{}\textgreater{} chrom2, entry is ignored. - -\textbf{notospan-} Report A if ospan of A doesn't overlap B. -- Note: If chrom1 \textless{}\textgreater{} chrom2, entry is ignored. -\end{quote} -\end{quote} -\\\hline -\end{tabular} - - - -\paragraph{5.2.2 Default behavior} -\label{content/pairToBed:default-behavior} -By default, a BEDPE / BAM feature will be reported if \emph{either} end overlaps a feature in the BED file. -In the example below, the left end of the pair overlaps B yet the right end does not. Thus, BEDPE/ -BAM A is reported since the default is to report A if either end overlaps B. - -Default: Report A if \emph{either} end overlaps B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - - -\paragraph{5.2.3 (-type)Optional overlap requirements} -\label{content/pairToBed:type-optional-overlap-requirements} -Using then \textbf{-type} option, \textbf{pairToBed} provides several other overlap requirements for controlling how -overlaps between BEDPE/BAM A and BED B are reported. The examples below illustrate how each -option behaves. - -\textbf{-type both}: Report A only if \emph{both} ends overlap B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - -\textbf{-type neither}: Report A only if \emph{neither} end overlaps B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - -\textbf{-type xor}: Report A only if \emph{one and only one} end overlaps B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result -\end{Verbatim} - -\textbf{-type notboth}: Report A only if \emph{neither end} \textbf{or} \emph{one and only one} end overlaps B. Thus ``notboth'' -includes what would be reported by ``neither'' and by ``xor''. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result -\end{Verbatim} - -\textbf{-type ispan}: Report A if it's ``\emph{inner span}'' overlaps B. Applicable only to intra-chromosomal features. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - - Inner span \textbar{}-------------------------------\textbar{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== - - - -BEDPE/BAM A =====.................................===== - -BED File B ==== - -Result -\end{Verbatim} - -\textbf{-type ospan}: Report A if it's ``\emph{outer span}'' overlaps B. Applicable only to intra-chromosomal features. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - - Outer span \textbar{}-----------------------------------------\textbar{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result -\end{Verbatim} - -\textbf{-type notispan}: Report A only if it's ``\emph{inner span}'' does not overlap B. Applicable only to intrachromosomal -features. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - - Inner span \textbar{}-------------------------------\textbar{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - -\textbf{-type notospan}: Report A if it's ``\emph{outer span}'' overlaps B. Applicable only to intra-chromosomal -features. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - - Outer span \textbar{}-----------------------------------------\textbar{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - - -\paragraph{5.2.4 (-f)Requiring a minimum overlap fraction} -\label{content/pairToBed:f-requiring-a-minimum-overlap-fraction} -By default, \textbf{pairToBed} will report an overlap between A and B so long as there is at least one base -pair is overlapping on either end. Yet sometimes you may want to restrict reported overlaps between A -and B to cases where the feature in B overlaps at least X\% (e.g. 50\%) of A. The \textbf{?Cf} option does exactly -this. The \textbf{-f} option may also be combined with the -type option for additional control. For example, -combining \textbf{-f 0.50} with \textbf{-type both} requires that both ends of A have at least 50\% overlap with a -feature in B. - -For example, report A only at least 50\% of one of the two ends is overlapped by B. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -a A.bedpe -b B.bed -f 0.5 - - -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - - -\paragraph{5.2.5 (-s)Enforcing ``strandedness''} -\label{content/pairToBed:s-enforcing-strandedness} -By default, \textbf{pairToBed} will report overlaps between features even if the features are on opposing -strands. However, if strand information is present in both files and the \textbf{``-s''} option is used, overlaps will -only be reported when features are on the same strand. - -For example, report A only at least 50\% of one of the two ends is overlapped by B. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -a A.bedpe -b B.bed -s - - - -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textless{}\textless{}\textless{}\textless{}\textless{} - -BED File B \textless{}\textless{} \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -Result - - - -BEDPE/BAM A \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textless{}\textless{}\textless{}\textless{}\textless{} - -BED File B \textgreater{}\textgreater{} \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -Result \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textless{}\textless{}\textless{}\textless{}\textless{} -\end{Verbatim} - - -\paragraph{5.2.6 (-abam)Default is to write BAM output when using BAM input} -\label{content/pairToBed:abam-default-is-to-write-bam-output-when-using-bam-input} -When comparing \emph{paired} alignments in BAM format (\textbf{-abam}) to features in BED format (\textbf{-b}), -\textbf{pairToBed} will , by default, write the output in BAM format. That is, each alignment in the BAM -file that meets the user's criteria will be written (to standard output) in BAM format. This serves as a -mechanism to create subsets of BAM alignments are of biological interest, etc. Note that both -alignments for each aligned pair will be written to the BAM output. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed \textbar{} samtools view - \textbar{} head -4 - -JOBU\_0001:3:1:4:1060\#0 99 chr10 42387928 29 50M = 42393091 5 2 1 3 -AA A A A C G G A A T T A T C G A A T G G A A T C G A A G A G A A T C T T C G A A C G G A C C C G A -dcgggggfbgfgdgggggggfdfgggcggggfcggcggggggagfgbggc XT:A:R NM:i:5 SM:i:0 AM:i:0 X0:i:3 X 1 : i : -3 XM:i:5 XO:i:0 XG:i:0 MD:Z:0T0C33A5T4T3 -JOBU\_0001:3:1:4:1060\#0 147 chr10 42393091 0 50M = 42387928 - 5 2 1 3 -AAATGGAATCGAATGGAATCAACATCAAATGGAATCAAATGGAATCATTG K g d c g g d e c d g -\PYGZbs{}d{}`ggfcgcggffcgggc\textasciicircum{}cgfgccgggfc\textasciicircum{}gcdgg\PYGZbs{}bg XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:3 X1:i:13 XM:i:2 X O : i : -0 XG:i:0 MD:Z:21T14G13 -JOBU\_0001:3:1:8:446\#0 99 chr10 42388091 9 50M = 42392738 4 6 9 7 -GAATCGACTGGAATCATCATCGGATGGAAATGAATGGAATAATCATCGAA f \_ O f f {}` ] I e Y f f {}` f f e d d c f e f c P {}` c \_ W \PYGZbs{} \PYGZbs{} R \_ ] -\_BBBBBBBBBBBBBBBB XT:A:U NM:i:4 SM:i:0 AM:i:0 X0:i:1 X1:i:3 XM:i:4 XO:i:0 XG:i:0 M D : Z : -7A22C9C2T6 -JOBU\_0001:3:1:8:446\#0 147 chr10 42392738 9 50M = 42388091 - 4 6 9 7 -TTATCGAATGCAATCGAATGGAATTATCGAATGCAATCGAATAGAATCAT df\textasciicircum{}ffec\_JW[{}`MWceRec{}`{}`fee{}`dcecfeeZae{}`c] -f\textasciicircum{}cNeecfccf\textasciicircum{} XT:A:R NM:i:1 SM:i:0 AM:i:0 X0:i:2 X1:i:2 XM:i:1 XO:i:0 XG:i:0 MD:Z:38A11 -\end{Verbatim} - - -\paragraph{5.2.7 (-bedpe)Output BEDPE format when using BAM input} -\label{content/pairToBed:bedpe-output-bedpe-format-when-using-bam-input} -When comparing \emph{paired} alignments in BAM format (\textbf{-abam}) to features in BED format (\textbf{-b}), -\textbf{pairToBed} will optionally write the output in BEDPE format. That is, each alignment in the BAM -file is converted to a 10 column BEDPE feature and if overlaps are found (or not) based on the user's -criteria, the BAM alignment will be reported in BEDPE format. The BEDPE ``name'' field is comprised -of the RNAME field in the BAM alignment. The ``score'' field is the mapping quality score from the -BAM alignment. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed -bedpe \textbar{} head -5 -chr10 42387927 42387977 chr10 42393090 42393140 - JOBU\_0001:3:1:4:1060\#0 29 + - -chr10 42388090 42388140 chr10 42392737 42392787 - JOBU\_0001:3:1:8:446\#0 9 + - -chr10 42390552 42390602 chr10 42396045 42396095 - JOBU\_0001:3:1:10:1865\#0 9 + - -chrX 139153741 139153791 chrX 139159018 139159068 - JOBU\_0001:3:1:14:225\#0 37 + - -chr4 9236903 9236953 chr4 9242032 9242082 - JOBU\_0001:3:1:15:1362\#0 0 + - -\end{Verbatim} - - -\subsubsection{5.3 pairToPair} -\label{content/pairToPair:pairtopair}\label{content/pairToPair::doc} -\textbf{pairToPair} compares two BEDPE files in search of overlaps where each end of a BEDPE feature in A -overlaps with the ends of a feature in B. For example, using pairToPair, one could screen for the exact -same discordant paired-end alignment in two files. This could suggest (among other things) that the -discordant pair suggests the same structural variation in each file/sample. - - -\paragraph{5.3.1 Usage and option summary} -\label{content/pairToPair:usage-and-option-summary} -\textbf{Usage:} - -\begin{Verbatim}[commandchars=\\\{\}] -pairToPair [OPTIONS] -a \textless{}BEDPE\textgreater{} -b \textless{}BEDPE\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-a} - & -BEDPE file A. Each feature in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe. -\\\hline - -\textbf{-b} - & -BEDPE file B. Use ``stdin'' if passing B with a UNIX pipe. -\\\hline - -\textbf{-f} - & -Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -\\\hline - -\textbf{-is} - & -Force ``strandedness''. That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -\\\hline - -\textbf{-type} - & \begin{quote} - -Approach to reporting overlaps between BEDPE and BED. -\end{quote} - -\begin{DUlineblock}{0em} -\item[] \textbf{either} Report overlaps if either ends of A overlap B. -\end{DUlineblock} -\begin{quote} - -\begin{DUlineblock}{0em} -\item[] \textbf{neither} Report A if neither end of A overlaps B. -\end{DUlineblock} - -\begin{DUlineblock}{0em} -\item[] \textbf{both} Report overlaps if both ends of A overlap B. -\emph{Default behavior.} -\end{DUlineblock} -\end{quote} -\\\hline -\end{tabular} - - - -\paragraph{5.3.2 Default behavior} -\label{content/pairToPair:default-behavior} -By default, a BEDPE feature from A will be reported if \emph{both} ends overlap a feature in the BEDPE B -file. If strand information is present for the two BEDPE files, it will be further required that the -overlaps on each end be on the same strand. This way, an otherwise overlapping (in terms of genomic -locations) F/R alignment will not be matched with a R/R alignment. - -Default: Report A if \emph{both} ends overlaps B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - -Default when strand information is present in both BEDPE files: Report A if \emph{both} ends overlaps B \emph{on -the same strands}. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE A \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -BEDPE B \textless{}\textless{}\textless{}\textless{}\textless{}.............................\textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -Result - - - -BEDPE A \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -BEDPE B \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.............................\textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} - -Result \textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{}.................................\textgreater{}\textgreater{}\textgreater{}\textgreater{}\textgreater{} -\end{Verbatim} - - -\paragraph{5.3.3 (-type neither)Optional overlap requirements} -\label{content/pairToPair:type-neither-optional-overlap-requirements} -Using then \textbf{-type neither, pairToPair} will only report A if \emph{neither} end overlaps with a BEDPE -feature in B. - -\textbf{-type neither}: Report A only if \emph{neither} end overlaps B. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}......................................\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}................................................\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =====.................................===== -\end{Verbatim} - - -\subsubsection{5.4 bamToBed} -\label{content/bamToBed:bamtobed}\label{content/bamToBed::doc} -\textbf{bamToBed} is a general purpose tool that will convert sequence alignments in BAM format to either -BED6, BED12 or BEDPE format. This enables one to convert BAM files for use with all of the other -BEDTools. The CIGAR string is used to compute the alignment end coordinate in an ``ungapped'' -fashion. That is, match (``M''), deletion (``D''), and splice (``N'') operations are observed when computing -alignment ends. - - -\paragraph{5.4.1 Usage and option summary} -\label{content/bamToBed:usage-and-option-summary} -\textbf{Usage:} - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed [OPTIONS] -i \textless{}BAM\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-bedpe} - & \begin{quote} -\begin{description} -\item[{Write BAM alignments in BEDPE format. Only one alignment from paired-end reads will be reported. Specifically, it each mate is aligned to the same chromosome, the BAM alignment reported will be the one where the BAM insert size is greater than zero. When the mate alignments are interchromosomal, the lexicographically lower chromosome will be reported first. Lastly, when an end is unmapped, the chromosome and strand will be set to ''.'' and the start and end coordinates will be set to -1. \emph{By default, this is disabled and the output will be reported in BED format}.}] \leavevmode -\textbf{NOTE: When using this option, it is required that the BAM file is sorted/grouped by the read name. This allows bamToBed to extract correct alignment coordinates for each end based on their respective CIGAR strings. It also assumes that the alignments for a given pair come in groups of twos. There is not yet a standard method for reporting multiple alignments using BAM. bamToBed will fail if an aligner does not report alignments in pairs}. - -\end{description} -\end{quote} - -BAM files may be piped to bamToBed by specifying ``-i stdin''. See example below. -\\\hline - -\textbf{-bed12} - & -Write ``blocked'' BED (a.k.a. BED12) format. This will convert ``spliced'' BAM alignments (denoted by the ``N'' CIGAR operation) to BED12. -\\\hline - -\textbf{-ed} - & -Use the ``edit distance'' tag (NM) for the BED score field. Default for BED is to use mapping quality. Default for BEDPE is to use the \emph{minimum} of the two mapping qualities for the pair. When -ed is used with -bedpe, the total edit distance from the two mates is reported. -\\\hline - -\textbf{-tag} - & -Use other \emph{numeric} BAM alignment tag for BED score. Default for BED is to use mapping quality. Disallowed with BEDPE output. -\\\hline - -\textbf{-color} - & -An R,G,B string for the color used with BED12 format. Default is (255,0,0). -\\\hline - -\textbf{-split} - & -Report each portion of a ``split'' BAM (i.e., having an ``N'' CIGAR operation) alignment as a distinct BED intervals. -\\\hline -\end{tabular} - - -By default, each alignment in the BAM file is converted to a 6 column BED. The BED ``name'' field is -comprised of the RNAME field in the BAM alignment. If mate information is available, the mate (e.g., -``/1'' or ``/2'') field will be appended to the name. The ``score'' field is the mapping quality score from the -BAM alignment, unless the \textbf{-ed} option is used. - -Examples: - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam \textbar{} head -5 -chr7 118970079 118970129 TUPAC\_0001:3:1:0:1452\#0/1 37 - -chr7 118965072 118965122 TUPAC\_0001:3:1:0:1452\#0/2 37 + -chr11 46769934 46769984 TUPAC\_0001:3:1:0:1472\#0/1 37 - - -bamToBed -i reads.bam -tag NM \textbar{} head -5 -chr7 118970079 118970129 TUPAC\_0001:3:1:0:1452\#0/1 1 - -chr7 118965072 118965122 TUPAC\_0001:3:1:0:1452\#0/2 3 + -chr11 46769934 46769984 TUPAC\_0001:3:1:0:1472\#0/1 1 - - -bamToBed -i reads.bam -bedpe \textbar{} head -3 -chr7 118965072 118965122 chr7 118970079 118970129 - TUPAC\_0001:3:1:0:1452\#0 37 + - -chr11 46765606 46765656 chr11 46769934 46769984 - TUPAC\_0001:3:1:0:1472\#0 37 + - -chr20 54704674 54704724 chr20 54708987 54709037 - TUPAC\_0001:3:1:1:1833\#0 37 + -\end{Verbatim} - -One can easily use samtools and bamToBed together as part of a UNIX pipe. In this example, we will -only convert properly-paired (BAM flag == 0x2) reads to BED format. - -\begin{Verbatim}[commandchars=\\\{\}] -samtools view -bf 0x2 reads.bam \textbar{} bamToBed -i stdin \textbar{} head -chr7 118970079 118970129 TUPAC\_0001:3:1:0:1452\#0/1 37 - -chr7 118965072 118965122 TUPAC\_0001:3:1:0:1452\#0/2 37 + -chr11 46769934 46769984 TUPAC\_0001:3:1:0:1472\#0/1 37 - -chr11 46765606 46765656 TUPAC\_0001:3:1:0:1472\#0/2 37 + -chr20 54704674 54704724 TUPAC\_0001:3:1:1:1833\#0/1 37 + -chr20 54708987 54709037 TUPAC\_0001:3:1:1:1833\#0/2 37 - -chrX 9380413 9380463 TUPAC\_0001:3:1:1:285\#0/1 0 - -chrX 9375861 9375911 TUPAC\_0001:3:1:1:285\#0/2 0 + -chrX 131756978 131757028 TUPAC\_0001:3:1:2:523\#0/1 37 + -chrX 131761790 131761840 TUPAC\_0001:3:1:2:523\#0/2 37 - -\end{Verbatim} - - -\paragraph{5.4.2 (-split)Creating BED12 features from ``spliced'' BAM entries.} -\label{content/bamToBed:split-creating-bed12-features-from-spliced-bam-entries} -bamToBed will, by default, create a BED6 feature that represents the entire span of a spliced/split -BAM alignment. However, when using the \textbf{-split} command, a BED12 feature is reported where BED -blocks will be created for each aligned portion of the sequencing read. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -Exons *************** ********** - -BED/BAM A \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}....................................\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result =============== ==== -\end{Verbatim} - - -\subsubsection{5.5 windowBed} -\label{content/windowBed:windowbed}\label{content/windowBed::doc} -Similar to \textbf{intersectBed}, \textbf{windowBed} searches for overlapping features in A and B. However, -\textbf{windowBed} adds a specified number (1000, by default) of base pairs upstream and downstream of -each feature in A. In effect, this allows features in B that are ``near'' features in A to be detected. - - -\paragraph{5.5.1 Usage and option summary} -\label{content/windowBed:usage-and-option-summary} -\textbf{Usage:} - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed [OPTIONS] -a \textless{}BED/GFF/VCF\textgreater{} -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-abam} - & -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe: For example: samtools view -b \textless{}BAM\textgreater{} \textbar{} windowBed -abam stdin -b genes.bed -\\\hline - -\textbf{-ubam} - & -Write uncompressed BAM output. The default is write compressed BAM output. -\\\hline - -\textbf{-bed} - & -When using BAM input (-abam), write output as BED. The default is to write output in BAM when using -abam. For example: windowBed -abam reads.bam -b genes.bed -bed -\\\hline - -\textbf{-w} - & -Base pairs added upstream and downstream of each entry in A when searching for overlaps in B. \emph{Default is 1000 bp}. -\\\hline - -\textbf{-l} - & -Base pairs added upstream (left of) of each entry in A when searching for overlaps in B. \emph{Allows one to create assymetrical ``windows''. Default is 1000bp}. -\\\hline - -\textbf{-r} - & -Base pairs added downstream (right of) of each entry in A when searching for overlaps in B. \emph{Allows one to create assymetrical ``windows''. Default is 1000bp}. -\\\hline - -\textbf{-sw} - & -Define -l and -r based on strand. For example if used, -l 500 for a negative-stranded feature will add 500 bp downstream. \emph{By default, this is disabled}. -\\\hline - -\textbf{-sm} - & -Only report hits in B that overlap A on the same strand. \emph{By default, overlaps are reported without respect to strand}. -\\\hline - -\textbf{-u} - & -Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. -\\\hline - -\textbf{-c} - & -For each entry in A, report the number of hits in B while restricting to -f. Reports 0 for A entries that have no overlap with B. -\\\hline -\end{tabulary} - - - -\paragraph{5.5.2 Default behavior} -\label{content/windowBed:default-behavior} -By default, \textbf{windowBed} adds 1000 bp upstream and downstream of each A feature and searches for -features in B that overlap this ``window''. If an overlap is found in B, both the \emph{original} A feature and the -\emph{original} B feature are reported. For example, in the figure below, feature B1 would be found, but B2 -would not. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - "window" = 10 -BED File A \textless{}----------*************----------\textgreater{} - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result ======== -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed -a A.bed -b B.bed -chr1 100 200 chr1 500 1000 -\end{Verbatim} - - -\paragraph{5.5.3 (-w)Defining a custom window size} -\label{content/windowBed:w-defining-a-custom-window-size} -Instead of using the default window size of 1000bp, one can define a custom, \emph{symmetric} window around -each feature in A using the \textbf{-w} option. One should specify the window size in base pairs. For example, -a window of 5kb should be defined as \textbf{-w 5000}. - -For example (note that in contrast to the default behavior, the second B entry is reported): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed -a A.bed -b B.bed -w 5000 -chr1 100 200 chr1 500 1000 -chr1 100 200 chr1 1300 2000 -\end{Verbatim} - - -\paragraph{5.5.4 (-l and -r)Defining assymteric windows} -\label{content/windowBed:l-and-r-defining-assymteric-windows} -One can also define asymmetric windows where a differing number of bases are added upstream and -downstream of each feature using the \textbf{-l (upstream)} and \textbf{-r (downstream)} options. - -For example (note the difference between -l 200 and -l 300): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 1000 2000 - -cat B.bed -chr1 500 800 -chr1 10000 20000 - -windowBed -a A.bed -b B.bed -l 200 -r 20000 -chr1 100 200 chr1 10000 20000 - -windowBed -a A.bed -b B.bed -l 300 -r 20000 -chr1 100 200 chr1 500 800 -chr1 100 200 chr1 10000 20000 -\end{Verbatim} - - -\paragraph{5.5.5 (-sw)Defining assymteric windows based on strand} -\label{content/windowBed:sw-defining-assymteric-windows-based-on-strand} -Especially when dealing with gene annotations or RNA-seq experiments, you may want to define -asymmetric windows based on ``strand''. For example, you may want to screen for overlaps that occur -within 5000 bp upstream of a gene (e.g. a promoter region) while screening only 1000 bp downstream of -the gene. By enabling the \textbf{-sw} (``stranded'' windows) option, the windows are added upstream or -downstream according to strand. For example, imagine one specifies \textbf{-l 5000 -r 1000} as well as the \textbf{- -sw} option. In this case, forward stranded (``+'') features will screen 5000 bp to the \emph{left} (that is, \emph{lower} -genomic coordinates) and 1000 bp to the \emph{right} (that is, \emph{higher} genomic coordinates). By contrast, -reverse stranded (``-'') features will screen 5000 bp to the \emph{right} (that is, \emph{higher} genomic coordinates) and -1000 bp to the \emph{left} (that is, \emph{lower} genomic coordinates). - -For example (note the difference between -l 200 and -l 300): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10000 20000 A.forward 1 + -chr1 10000 20000 A.reverse 1 - - -cat B.bed -chr1 1000 8000 B1 -chr1 24000 32000 B2 - -windowBed -a A.bed -b B.bed -l 5000 -r 1000 -sw -chr1 10000 20000 A.forward 1 + chr1 1000 8000 B1 -chr1 10000 20000 A.reverse 1 - chr1 24000 32000 B2 -\end{Verbatim} - - -\paragraph{5.5.6 (-sm)Enforcing ``strandedness''} -\label{content/windowBed:sm-enforcing-strandedness} -This option behaves the same as the -s option for intersectBed while scanning for overlaps within the -``window'' surrounding A. See the discussion in the intersectBed section for details. - - -\paragraph{5.5.7 (-u)Reporting the presence of at least one overlapping feature} -\label{content/windowBed:u-reporting-the-presence-of-at-least-one-overlapping-feature} -This option behaves the same as for intersectBed while scanning for overlaps within the ``window'' -surrounding A. See the discussion in the intersectBed section for details. - - -\paragraph{5.5.8 (-c)Reporting the number of overlapping features} -\label{content/windowBed:c-reporting-the-number-of-overlapping-features} -This option behaves the same as for intersectBed while scanning for overlaps within the ``window'' -surrounding A. See the discussion in the intersectBed section for details. - - -\paragraph{5.5.9 (-v)Reporting the absence of any overlapping features} -\label{content/windowBed:v-reporting-the-absence-of-any-overlapping-features} -This option behaves the same as for intersectBed while scanning for overlaps within the ``window'' -surrounding A. See the discussion in the intersectBed section for details. - - -\subsubsection{5.6 closestBed} -\label{content/closestBed:closestbed}\label{content/closestBed::doc} -Similar to \textbf{intersectBed, closestBed} searches for overlapping features in A and B. In the event that -no feature in B overlaps the current feature in A, \textbf{closestBed} will report the \emph{closest} (that is, least -genomic distance from the start or end of A) feature in B. For example, one might want to find which -is the closest gene to a significant GWAS polymorphism. Note that \textbf{closestBed} will report an -overlapping feature as the closest---that is, it does not restrict to closest \emph{non-overlapping} feature. - - -\paragraph{5.6.1 Usage and option summary} -\label{content/closestBed:usage-and-option-summary} -\textbf{Usage:} - -\begin{Verbatim}[commandchars=\\\{\}] -closestBed [OPTIONS] -a \textless{}BED/GFF/VCF\textgreater{} -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-s} - & -Force strandedness. That is, find the closest feature in B overlaps A on the same strand. \emph{By default, this is disabled}. -\\\hline - -\textbf{-d} - & -In addition to the closest feature in B, report its distance to A as an extra column. The reported distance for overlapping features will be 0. -\\\hline - -\textbf{-t} - & -How ties for closest feature should be handled. This occurs when two features in B have exactly the same overlap with a feature in A. \emph{By default, all such features in B are reported}. -\begin{quote} - -Here are the other choices controlling how ties are handled: - -\emph{all-} Report all ties (default). - -\emph{first-} Report the first tie that occurred in the B file. - -\emph{last-} Report the last tie that occurred in the B file. -\end{quote} -\\\hline -\end{tabular} - - - -\paragraph{5.6.2 Default behavior} -\label{content/closestBed:default-behavior} -\textbf{closestBed} first searches for features in B that overlap a feature in A. If overlaps are found, the feature -in B that overlaps the highest fraction of A is reported. If no overlaps are found, \textbf{closestBed} looks for -the feature in B that is \emph{closest} (that is, least genomic distance to the start or end of A) to A. For -example, in the figure below, feature B1 would be reported as the closest feature to A1. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED FILE A ************* - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result ====== -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed -a A.bed -b B.bed -chr1 100 200 chr1 500 1000 -\end{Verbatim} - - -\paragraph{5.6.3 (-s)Enforcing ``strandedness''} -\label{content/closestBed:s-enforcing-strandedness} -This option behaves the same as the -s option for intersectBed while scanning for the closest -(overlapping or not) feature in B. See the discussion in the intersectBed section for details. - - -\paragraph{5.6.4 (-t)Controlling how ties for ``closest'' are broken} -\label{content/closestBed:t-controlling-how-ties-for-closest-are-broken} -When there are two or more features in B that overlap the \emph{same fraction} of A, \textbf{closestBed} will, by -default, report both features in B. Imagine feature A is a SNP and file B contains genes. It can often -occur that two gene annotations (e.g. opposite strands) in B will overlap the SNP. As mentioned, the -default behavior is to report both such genes in B. However, the -t option allows one to optionally -choose the just first or last feature (in terms of where it occurred in the input file, not chromosome -position) that occurred in B. - -For example (note the difference between -l 200 and -l 300): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 101 rs1234 - -cat B.bed -chr1 0 1000 geneA 100 + -chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -t all -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 - - -closestBed -a A.bed -b B.bed -t first -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - -closestBed -a A.bed -b B.bed -t last -chr1 100 101 rs1234 chr1 0 1000 geneB 100 - -\end{Verbatim} - - -\paragraph{5.6.5 (-d)Reporting the distance to the closest feature in base pairs} -\label{content/closestBed:d-reporting-the-distance-to-the-closest-feature-in-base-pairs} -ClosestBed will optionally report the distance to the closest feature in the B file using the \textbf{-d} option. -When a feature in B overlaps a feature in A, a distance of 0 is reported. - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 500 600 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed -a A.bed -b B.bed -d -chr1 100 200 chr1 500 1000 300 -chr1 500 600 chr1 500 1000 0 -\end{Verbatim} - - -\subsubsection{5.7 subtractBed} -\label{content/subtractBed:subtractbed}\label{content/subtractBed::doc} -\textbf{subtractBed} searches for features in B that overlap A. If an overlapping feature is found in B, the -overlapping portion is removed from A and the remaining portion of A is reported. If a feature in B -overlaps all of a feature in A, the A feature will not be reported. - - -\paragraph{5.7.1 Usage and option summary} -\label{content/subtractBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -subtractBed [OPTIONS] -a \textless{}BED/GFF/VCF\textgreater{} -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-f} - & -Minimum overlap required as a fraction of A. Default is 1E-9 (i.e. 1bp). -\\\hline - -\textbf{-s} - & -Force strandedness. That is, find the closest feature in B overlaps A on the same strand. \emph{By default, this is disabled}. -\\\hline -\end{tabulary} - - - -\paragraph{5.7.2 Default behavior} -\label{content/subtractBed:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED FILE A ************* ****** - -BED File B \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - -Result ========= -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 10 20 - -cat B.bed -chr1 0 30 -chr1 180 300 - -subtractBed -a A.bed -b B.bed -chr1 100 180 -\end{Verbatim} - - -\paragraph{5.7.3 (-f)Requiring a minimal overlap fraction before subtracting} -\label{content/subtractBed:f-requiring-a-minimal-overlap-fraction-before-subtracting} -This option behaves the same as the -f option for intersectBed. In this case, subtractBed will only -subtract an overlap with B if it covers at least the fraction of A defined by -f. If an overlap is found, -but it does not meet the overlap fraction, the original A feature is reported without subtraction. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 - -cat B.bed -chr1 180 300 - -subtractBed -a A.bed -b B.bed -f 0.10 -chr1 100 180 - -subtractBed -a A.bed -b B.bed -f 0.80 -chr1 100 200 -\end{Verbatim} - - -\paragraph{5.7.4 (-s)Enforcing ``strandedness''} -\label{content/subtractBed:s-enforcing-strandedness} -This option behaves the same as the -s option for intersectBed while scanning for features in B that -should be subtracted from A. See the discussion in the intersectBed section for details. - - -\subsubsection{5.8 mergeBed} -\label{content/mergeBed:mergebed}\label{content/mergeBed::doc} -\textbf{mergeBed} combines overlapping or ``book-ended'' (that is, one base pair away) features in a feature file -into a single feature which spans all of the combined features. - - -\paragraph{5.8.1 Usage and option summary} -\label{content/mergeBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-s} - & -Force strandedness. That is, only merge features that are the same strand. \emph{By default, this is disabled}. -\\\hline - -\textbf{-n} - & -Report the number of BED entries that were merged. \emph{1 is reported if no merging occurred}. -\\\hline - -\textbf{-d} - & -Maximum distance between features allowed for features to be merged. \emph{Default is 0. That is, overlapping and/or book-ended features are merged}. -\\\hline - -\textbf{-nms} - & -Report the names of the merged features separated by semicolons. -\\\hline -\end{tabulary} - - - -\paragraph{5.8.2 Default behavior} -\label{content/mergeBed:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED FILE ************* *************** ********************** - ******** - -Result =============================== ====================== -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed -i A.bed -chr1 100 500 -chr1 501 1000 -\end{Verbatim} - - -\paragraph{5.8.3 (-s)Enforcing ``strandedness''} -\label{content/mergeBed:s-enforcing-strandedness} -This option behaves the same as the -s option for intersectBed while scanning for features that should -be merged. Only features on the same strand will be merged. See the discussion in the intersectBed -section for details. - - -\paragraph{5.8.4 (-n)Reporting the number of features that were merged} -\label{content/mergeBed:n-reporting-the-number-of-features-that-were-merged} -The -n option will report the number of features that were combined from the original file in order to -make the newly merged feature. If a feature in the original file was not merged with any other features, -a ``1'' is reported. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed -i A.bed -n -chr1 100 500 3 -chr1 501 1000 1 -\end{Verbatim} - - -\paragraph{5.8.5 (-d)Controlling how close two features must be in order to merge} -\label{content/mergeBed:d-controlling-how-close-two-features-must-be-in-order-to-merge} -By default, only overlapping or book-ended features are combined into a new feature. However, one can -force mergeBed to combine more distant features with the -d option. For example, were one to set -d to -1000, any features that overlap or are within 1000 base pairs of one another will be combined. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed -i A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed -i A.bed -d 1000 -chr1 100 200 1000 -\end{Verbatim} - - -\paragraph{5.8.6 (-nms)Reporting the names of the features that were merged} -\label{content/mergeBed:nms-reporting-the-names-of-the-features-that-were-merged} -Occasionally, one might like to know that names of the features that were merged into a new feature. -The -nms option will add an extra column to the mergeBed output which lists (separated by -semicolons) the names of the merged features. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 A1 -chr1 150 300 A2 -chr1 250 500 A3 - -mergeBed -i A.bed -nms -chr1 100 500 A1;A2;A3 -\end{Verbatim} - - -\subsubsection{5.9 coverageBed} -\label{content/coverageBed:coveragebed}\label{content/coverageBed::doc} -\textbf{coverageBed} computes both the \emph{depth} and \emph{breadth} of coverage of features in file A across the features -in file B. For example, \textbf{coverageBed} can compute the coverage of sequence alignments (file A) across 1 -kilobase (arbitrary) windows (file B) tiling a genome of interest. One advantage that \textbf{coverageBed} -offers is that it not only \emph{counts} the number of features that overlap an interval in file B, it also -computes the fraction of bases in B interval that were overlapped by one or more features. Thus, -\textbf{coverageBed} also computes the \emph{breadth} of coverage for each interval in B. - - -\paragraph{5.9.1 Usage and option summary} -\label{content/coverageBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -coverageBed [OPTIONS] -a \textless{}BED/GFF/VCF\textgreater{} -b \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-abam} - & \begin{quote} - -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use ``stdin'' if passing A with a UNIX pipe: For example: -\end{quote} - -\begin{DUlineblock}{0em} -\item[] samtools view -b \textless{}BAM\textgreater{} \textbar{} intersectBed -abam stdin -b genes.bed -\end{DUlineblock} -\\\hline - -\textbf{-s} - & -Force strandedness. That is, only features in A are only counted towards coverage in B if they are the same strand. \emph{By default, this is disabled and coverage is counted without respect to strand}. -\\\hline - -\textbf{-hist} - & -Report a histogram of coverage for each feature in B as well as a summary histogram for \_all\_ features in B. - -\begin{DUlineblock}{0em} -\item[] Output (tab delimited) after each feature in B: -\end{DUlineblock} -\begin{quote} - -\begin{DUlineblock}{0em} -\item[] 1) depth -\item[] 2) \# bases at depth -\item[] 3) size of B -\item[] 4) \% of B at depth -\end{DUlineblock} -\end{quote} -\\\hline - -\textbf{-d} - & -Report the depth at each position in each B feature. Positions reported are one based. Each position and depth follow the complete B feature. -\\\hline - -\textbf{-split} - & -Treat ``split'' BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR ``N'' and ``D'' operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -\\\hline -\end{tabular} - - - -\paragraph{5.9.2 Default behavior} -\label{content/coverageBed:default-behavior} -After each interval in B, \textbf{coverageBed} will report: -\begin{enumerate} -\item {} -The number of features in A that overlapped (by at least one base pair) the B interval. - -\item {} -The number of bases in B that had non-zero coverage from features in A. - -\item {} -The length of the entry in B. - -\item {} -The fraction of bases in B that had non-zero coverage from features in A. - -\end{enumerate} - -Below are the number of features in A (N=...) overlapping B and fraction of bases in B with coverage. - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED FILE B *************** *************** ****** ************** - -BED File A \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} - \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{}\textasciicircum{} \textasciicircum{}\textasciicircum{} - -Result [ N=3, 10/15 ] [ N=1, 2/16 ] [N=1,6/6] [N=5, 11/12 ] -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10 20 -chr1 20 30 -chr1 30 40 -chr1 100 200 - -cat B.bed -chr1 0 100 -chr1 100 200 -chr2 0 100 - -coverageBed -a A.bed -b B.bed -chr1 0 100 3 30 100 0.3000000 -chr1 100 200 1 100 100 1.0000000 -chr2 0 100 0 0 100 0.0000000 -\end{Verbatim} - - -\paragraph{5.9.4 (-s)Calculating coverage by strand} -\label{content/coverageBed:s-calculating-coverage-by-strand} -Use the ``\textbf{-s}'' option if one wants to only count coverage if features in A are on the same strand as the -feature / window in B. This is especially useful for RNA-seq experiments. - -For example (note the difference in coverage with and without \textbf{-s}: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10 20 a1 1 - -chr1 20 30 a2 1 - -chr1 30 40 a3 1 - -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 - -chr2 0 100 b3 1 + - -coverageBed -a A.bed -b B.bed -chr1 0 100 b1 1 + 3 30 100 0.3000000 -chr1 100 200 b2 1 - 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000 - -coverageBed -a A.bed -b B.bed -s -chr1 0 100 b1 1 + 0 0 100 0.0000000 -chr1 100 200 b2 1 - 0 0 100 0.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000 -\end{Verbatim} - - -\paragraph{5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file} -\label{content/coverageBed:hist-creating-a-histogram-of-coverage-for-each-feature-in-the-b-file} -One should use the ``\textbf{-hist}'' option to create, for each interval in B, a histogram of coverage of the -features in A across B. - -In this case, each entire feature in B will be reported, followed by the depth of coverage, the number of -bases at that depth, the size of the feature, and the fraction covered. After all of the features in B have -been reported, a histogram summarizing the coverage among all features in B will be reported. - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10 20 a1 1 - -chr1 20 30 a2 1 - -chr1 30 40 a3 1 - -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 - -chr2 0 100 b3 1 + - -coverageBed -a A.bed -b B.bed -hist -chr1 0 100 b1 1 + 0 70 100 0.7000000 -chr1 0 100 b1 1 + 1 30 100 0.3000000 -chr1 100 200 b2 1 - 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 100 100 1.0000000 -all 0 170 300 0.5666667 -all 1 130 300 0.4333333 -\end{Verbatim} - - -\paragraph{5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file} -\label{content/coverageBed:hist-reporting-the-per-base-of-coverage-for-each-feature-in-the-b-file} -One should use the ``\textbf{-d}'' option to create, for each interval in B, a detailed list of coverage at each of the -positions across each B interval. - -The output will consist of a line for each one-based position in each B feature, followed by the coverage -detected at that position. - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 5 -chr1 3 8 -chr1 4 8 -chr1 5 9 - -cat B.bed -chr1 0 10 - -coverageBed -a A.bed -b B.bed -d -chr1 0 10 B 1 1 -chr1 0 10 B 2 1 -chr1 0 10 B 3 1 -chr1 0 10 B 4 2 -chr1 0 10 B 5 3 -chr1 0 10 B 6 3 -chr1 0 10 B 7 3 -chr1 0 10 B 8 3 -chr1 0 10 B 9 1 -chr1 0 10 B 10 0 -\end{Verbatim} - - -\paragraph{5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features} -\label{content/coverageBed:split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features} -As described in section 1.3.19, coverageBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq reads, for -example, one typically wants to only tabulate coverage for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The \textbf{-split} command allows for such coverage to be -performed. - - -\subsubsection{5.10 genomeCoverageBed} -\label{content/genomecoverageBed:genomecoveragebed}\label{content/genomecoverageBed::doc} -\textbf{genomeCoverageBed} computes a histogram of feature coverage (e.g., aligned sequences) for a given -genome. Optionally, by using the \textbf{-d} option, it will report the depth of coverage at \emph{each base} on each -chromosome in the genome file (\textbf{-g}). - - -\paragraph{5.10.1 Usage and option summary} -\label{content/genomecoverageBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -genomeCoverageBed [OPTIONS] -i \textless{}BED\textgreater{} -g \textless{}GENOME\textgreater{} -\end{Verbatim} - -NOTE: genomeCoverageBed requires that the input BED file be sorted by -chromosome. A simple sort -k1,1 will suffice. - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-ibam} - & \begin{quote} - -BAM file as input for coverage. Each BAM alignment in A added to the total coverage for the genome. Use ``stdin'' if passing it with a UNIX pipe: For example: -\end{quote} - -\begin{DUlineblock}{0em} -\item[] samtools view -b \textless{}BAM\textgreater{} \textbar{} genomeCoverageBed -ibam stdin -g hg18.genome -\end{DUlineblock} -\\\hline - -\textbf{-d} - & -Report the depth at each genome position. \emph{Default behavior is to report a histogram}. -\\\hline - -\textbf{-max} - & -Combine all positions with a depth \textgreater{}= max into a single bin in the histogram. -\\\hline - -\textbf{-bg} - & -Report depth in BedGraph format. For details, see: \href{http://genome.ucsc.edu/goldenPath/help/bedgraph.html}{http://genome.ucsc.edu/goldenPath/help/bedgraph.html} -\\\hline - -\textbf{-bga} - & -Report depth in BedGraph format, as above (i.e., -bg). However with this option, regions with zero coverage are also reported. This allows one to quickly extract all regions of a genome with 0 coverage by applying: ``grep -w 0\$'' to the output. -\\\hline - -\textbf{-split} - & -Treat ``split'' BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR ``N'' and ``D'' operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -\\\hline - -\textbf{-strand} - & -Calculate coverage of intervals from a specific strand. With BED files, requires at least 6 columns (strand is column 6). -\\\hline -\end{tabular} - - - -\paragraph{5.10.2 Default behavior} -\label{content/genomecoverageBed:default-behavior} -By default, \textbf{genomeCoverageBed} will compute a histogram of coverage for the genome file provided. -The default output format is as follows: -1. chromosome (or entire genome) -2. depth of coverage from features in input file -3. number of bases on chromosome (or genome) with depth equal to column 2. -4. size of chromosome (or entire genome) in base pairs -5. fraction of bases on chromosome (or entire genome) with depth equal to column 2. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed -i A.bed -g my.genome -chr1 0 980 1000 0.98 -chr1 1 20 1000 0.02 -chr2 1 500 500 1 -genome 0 980 1500 0.653333 -genome 1 520 1500 0.346667 -\end{Verbatim} - - -\paragraph{5.10.3 (-max)Controlling the histogram's maximum depth} -\label{content/genomecoverageBed:max-controlling-the-histogram-s-maximum-depth} -Using the \textbf{-max} option, \textbf{genomeCoverageBed} will ``lump'' all positions in the genome having feature -coverage greather than or equal to \textbf{max} into the \textbf{max} histogram bin. For example, if one sets \textbf{-max} -equal to 50, the max depth reported in the output will be 50 and all positions with a depth \textgreater{}= 50 will -be represented in bin 50. - - -\paragraph{5.10.4 (-d)Reporting ``per-base'' genome coverage} -\label{content/genomecoverageBed:d-reporting-per-base-genome-coverage} -Using the \textbf{-d} option, \textbf{genomeCoverageBed} will compute the depth of feature coverage for each base -on each chromosome in genome file provided. - -The ``per-base'' output format is as follows: -1. chromosome -2. chromosome position -3. depth (number) of features overlapping this chromosome position. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed -i A.bed -g my.genome -d \textbar{} head -15 \textbar{} tail -n 10 -chr1 6 0 -chr1 7 0 -chr1 8 0 -chr1 9 0 -chr1 10 0 -chr1 11 1 -chr1 12 1 -chr1 13 1 -chr1 14 1 -chr1 15 1 -\end{Verbatim} - - -\paragraph{5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features} -\label{content/genomecoverageBed:split-reporting-coverage-with-spliced-alignments-or-blocked-bed-features} -As described in section 1.3.19, genomeCoverageBed will, by default, screen for overlaps against the -entire span of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA-seq -reads, for example, one typically wants to only screen for overlaps for the portions of the reads that -come from exons (and ignore the interstitial intron sequence). The \textbf{-split} command allows for such -overlaps to be performed. - -For additional details, please visit the Usage From The Wild site and have a look at example 5, -contributed by Assaf Gordon. - - -\subsubsection{5.11 fastaFromBed} -\label{content/fastafromBed:fastafrombed}\label{content/fastafromBed::doc} -\textbf{fastaFromBed} extracts sequences from a FASTA file for each of the intervals defined in a BED file. -The headers in the input FASTA file must exactly match the chromosome column in the BED file. - - -\paragraph{5.11.1 Usage and option summary} -\label{content/fastafromBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -fastaFromBed [OPTIONS] -fi \textless{}input FASTA\textgreater{} -bed \textless{}BED/GFF/VCF\textgreater{} -fo \textless{}output FASTA\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-name} - & -Use the ``name'' column in the BED file for the FASTA headers in the output FASTA file. -\\\hline - -\textbf{-tab} - & -Report extract sequences in a tab-delimited format instead of in FASTA format. -\\\hline - -\textbf{-s} - & -Force strandedness. If the feature occupies the antisense strand, the sequence will be reverse complemented. \emph{Default: strand information is ignored}. -\\\hline -\end{tabulary} - - - -\paragraph{5.11.2 Default behavior} -\label{content/fastafromBed:default-behavior} -\textbf{fastaFromBed} will extract the sequence defined by the coordinates in a BED interval and create a -new FASTA entry in the output file for each extracted sequence. By default, the FASTA header for each -extracted sequence will be formatted as follows: ``\textless{}chrom\textgreater{}:\textless{}start\textgreater{}-\textless{}end\textgreater{}''. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -\$ cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - -cat test.fa.out -\textgreater{}chr1:5-10 -AAACC -\end{Verbatim} - - -\paragraph{5.11.3 Using the BED ``name'' column as a FASTA header.} -\label{content/fastafromBed:using-the-bed-name-column-as-a-fasta-header} -Using the \textbf{-name} option, one can set the FASTA header for each extracted sequence to be the ``name'' -columns from the BED feature. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -name - -cat test.fa.out -\textgreater{}myseq -AAACC -\end{Verbatim} - - -\paragraph{5.11.4 Creating a tab-delimited output file in lieu of FASTA output.} -\label{content/fastafromBed:creating-a-tab-delimited-output-file-in-lieu-of-fasta-output} -Using the \textbf{-tab} option, the \textbf{-fo} output file will be tab-delimited instead of in FASTA format. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed -fi test.fa -bed test.bed -fo test.fa.out.tab -name -tab - -cat test.fa.out -myseq AAACC -\end{Verbatim} - - -\paragraph{5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand} -\label{content/fastafromBed:s-forcing-the-extracted-sequence-to-reflect-the-requested-strand} -\textbf{fastaFromBed} will extract the sequence in the orientation defined in the strand column when the ``-s'' -option is used. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 20 25 forward 1 + -chr1 20 25 reverse 1 - - -fastaFromBed -fi test.fa -bed test.bed -s -name -fo test.fa.out - -cat test.fa.out -\textgreater{}forward -CGCTA -\textgreater{}reverse -TAGCG -\end{Verbatim} - - -\subsubsection{5.12 maskFastaFromBed} -\label{content/maskfastafromBed:maskfastafrombed}\label{content/maskfastafromBed::doc} -\textbf{maskFastaFromBed} masks sequences in a FASTA file based on intervals defined in a feature file. The -headers in the input FASTA file must exactly match the chromosome column in the feature file. This -may be useful fro creating your own masked genome file based on custom annotations or for masking all -but your target regions when aligning sequence data from a targeted capture experiment. - - -\paragraph{5.12.1 Usage and option summary} -\label{content/maskfastafromBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -maskFastaFromBed [OPTIONS] -fi \textless{}input FASTA\textgreater{} -bed \textless{}BED/GFF/VCF\textgreater{} -fo \textless{}output FASTA\textgreater{} -\end{Verbatim} - -NOTE: The input and output FASTA files must be different. - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-soft} - & -Soft-mask (that is, convert to lower-case bases) the FASTA sequence. \emph{By default, hard-masking (that is, conversion to Ns) is performed}. -\\\hline -\end{tabulary} - - - -\paragraph{5.12.2 Default behavior} -\label{content/maskfastafromBed:default-behavior} -\textbf{maskFastaFromBed} will mask a FASTA file based on the intervals in a BED file. The newly masked -FASTA file is written to the output FASTA file. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out - -cat test.fa.out -\textgreater{}chr1 -AAAAANNNNNCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG -\end{Verbatim} - - -\paragraph{5.12.3 Soft-masking the FASTA file.} -\label{content/maskfastafromBed:soft-masking-the-fasta-file} -Using the \textbf{-soft} option, one can optionally ``soft-mask'' the FASTA file. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat test.fa -\textgreater{}chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed -fi test.fa -bed test.bed -fo test.fa.out -soft - -cat test.fa.out -\textgreater{}chr1 -AAAAAaaaccCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG -\end{Verbatim} - - -\subsubsection{5.13 shuffleBed} -\label{content/shuffleBed:shufflebed}\label{content/shuffleBed::doc} -\textbf{shuffleBed} will randomly permute the genomic locations of a fearure file among a genome defined in a -genome file. One can also provide an ``exclusions'' BED/GFF/VCF file that lists regions where you do -not want the permuted features to be placed. For example, one might want to prevent features from -being placed in known genome gaps. \textbf{shuffleBed} is useful as a \emph{null} basis against which to test the -significance of associations of one feature with another. - - -\paragraph{5.13.1 Usage and option summary} -\label{content/shuffleBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -shuffleBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -g \textless{}GENOME\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-excl} - & -A BED file of coordinates in which features from -i should \emph{not} be placed (e.g., genome gaps). -\\\hline - -\textbf{-chrom} - & -Keep features in -i on the same chromosome. Solely permute their location on the chromosome. \emph{By default, both the chromosome and position are randomly chosen}. -\\\hline - -\textbf{-seed} - & -Supply an integer seed for the shuffling. This will allow feature shuffling experiments to be recreated exactly as the seed for the pseudo-random number generation will be constant. \emph{By default, the seed is chosen automatically}. -\\\hline -\end{tabulary} - - - -\paragraph{5.13.2 Default behavior} -\label{content/shuffleBed:default-behavior} -By default, \textbf{shuffleBed} will reposition each feature in the input BED file on a random chromosome at a -random position. The size and strand of each feature are preserved. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed -i A.bed -g my.genome -chr4 1498 1598 a1 1 + -chr3 2156 3156 a2 2 - -\end{Verbatim} - - -\paragraph{5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome} -\label{content/shuffleBed:chrom-requiring-that-features-be-shuffled-on-the-same-chromosome} -The ``\textbf{-chrom}'' option behaves the same as the default behavior except that features are randomly -placed on the same chromosome as defined in the BED file. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed -i A.bed -g my.genome -chrom -chr1 9560 9660 a1 1 + -chr1 7258 8258 a2 2 - -\end{Verbatim} - - -\paragraph{5.13.4 Excluding certain genome regions from shuffleBed} -\label{content/shuffleBed:excluding-certain-genome-regions-from-shufflebed} -One may want to prevent BED features from being placed in certain regions of the genome. For -example, one may want to exclude genome gaps from permutation experiment. The ``\textbf{-excl}'' option -defines a BED file of regions that should be excluded. \textbf{shuffleBed} will attempt to permute the -locations of all features while adhering to the exclusion rules. However it will stop looking for an -appropriate location if it cannot find a valid spot for a feature after 1,000,000 tries. - -For example (\emph{note that the exclude file excludes all but 100 base pairs of the chromosome}): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 100 10000 - -shuffleBed -i A.bed -g my.genome -excl exclude.bed -chr1 0 100 a1 1 + -Error, line 2: tried 1000000 potential loci for entry, but could not avoid excluded -regions. Ignoring entry and moving on. -\end{Verbatim} - -For example (\emph{now the exclusion file only excludes the first 100 bases of the chromosome}): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 0 100 - -shuffleBed -i A.bed -g my.genome -excl exclude.bed -chr1 147 247 a1 1 + -chr1 2441 3441 a2 2 - -\end{Verbatim} - - -\paragraph{5.13.5 Defining a ``seed'' for the random replacement.} -\label{content/shuffleBed:defining-a-seed-for-the-random-replacement} -\textbf{shuffleBed} uses a pseudo-random number generator to permute the locations of BED features. -Therefore, each run should produce a different result. This can be problematic if one wants to exactly -recreate an experiment. By using the ``\textbf{-seed}'' option, one can supply a custom integer seed for -\textbf{shuffleBed}. In turn, each execution of \textbf{shuffleBed} with the same seed and input files should produce -identical results. - -For example (\emph{note that the exclude file below excludes all but 100 base pairs of the chromosome}): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 - - -cat my.genome -chr1 10000 - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 - - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 - - -. . . - -shuffleBed -i A.bed -g my.genome -seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 - -\end{Verbatim} - - -\subsubsection{5.14 slopBed} -\label{content/slopBed:slopbed}\label{content/slopBed::doc} -\textbf{slopBed} will increase the size of each feature in a feature file be a user-defined number of bases. While -something like this could be done with an ``\textbf{awk `\{OFS=''t'' print \$1,\$2-\textless{}slop\textgreater{},\$3+\textless{}slop\textgreater{}\}'}'', -\textbf{slopBed} will restrict the resizing to the size of the chromosome (i.e. no start \textless{} 0 and no end \textgreater{} -chromosome size). - - -\paragraph{5.14.1 Usage and option summary} -\label{content/slopBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -\PYG{n}{slopBed} \PYG{p}{[}\PYG{n}{OPTIONS}\PYG{p}{]} \PYG{o}{-}\PYG{n}{i} \PYG{o}{\textless{}}\PYG{n}{BED}\PYG{o}{/}\PYG{n}{GFF}\PYG{o}{/}\PYG{n}{VCF}\PYG{o}{\textgreater{}} \PYG{o}{-}\PYG{n}{g} \PYG{o}{\textless{}}\PYG{n}{GENOME}\PYG{o}{\textgreater{}} \PYG{p}{[}\PYG{o}{-}\PYG{n}{b} \PYG{o+ow}{or} \PYG{p}{(}\PYG{o}{-}\PYG{n}{l} \PYG{o+ow}{and} \PYG{o}{-}\PYG{n}{r}\PYG{p}{)}\PYG{p}{]} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-b} - & -Increase the BED/GFF/VCF entry by the same number base pairs in each direction. \emph{Integer}. -\\\hline - -\textbf{-l} - & -The number of base pairs to subtract from the start coordinate. \emph{Integer}. -\\\hline - -\textbf{-r} - & -The number of base pairs to add to the end coordinate. \emph{Integer}. -\\\hline - -\textbf{-s} - & -Define -l and -r based on strand. For example. if used, -l 500 for a negative-stranded feature, it will add 500 bp to the \emph{end} coordinate. -\\\hline -\end{tabulary} - - - -\paragraph{5.14.2 Default behavior} -\label{content/slopBed:default-behavior} -By default, \textbf{slopBed} will either add a fixed number of bases in each direction (\textbf{-b}) or an asymmetric -number of bases in each direction (\textbf{-l} and \textbf{-r}). - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -b 5 -chr1 0 105 -chr1 795 985 - -slopBed -i A.bed -g my.genome -l 2 -r 3 -chr1 3 103 -chr1 798 983 -\end{Verbatim} - -However, if the requested number of bases exceeds the boundaries of the chromosome, \textbf{slopBed} will -``clip'' the feature accordingly. - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -b 5000 -chr1 0 1000 -chr1 0 1000 -\end{Verbatim} - - -\paragraph{5.14.3 Resizing features according to strand} -\label{content/slopBed:resizing-features-according-to-strand} -\textbf{slopBed} will optionally increase the size of a feature based on strand. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 a1 1 + -chr1 100 200 a2 2 - - -cat my.genome -chr1 1000 - -slopBed -i A.bed -g my.genome -l 50 -r 80 -s -chr1 50 280 a1 1 + -chr1 20 250 a2 2 - -\end{Verbatim} - - -\subsubsection{5.15 sortBed} -\label{content/sortBed::doc}\label{content/sortBed:sortbed} -\textbf{sortBed} sorts a feature file by chromosome and other criteria. - - -\paragraph{5.15.1 Usage and option summary} -\label{content/sortBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -sortBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-sizeA} - & -Sort by feature size in ascending order. -\\\hline - -\textbf{-sizeD} - & -Sort by feature size in descending order. -\\\hline - -\textbf{-chrThenSizeA} - & -Sort by chromosome, then by feature size (asc). -\\\hline - -\textbf{-chrThenSizeD} - & -Sort by chromosome, then by feature size (desc). -\\\hline - -\textbf{-chrThenScoreA} - & -Sort by chromosome, then by score (asc). -\\\hline - -\textbf{-chrThenScoreD} - & -Sort by chromosome, then by score (desc). -\\\hline -\end{tabulary} - - - -\paragraph{5.15.2 Default behavior} -\label{content/sortBed:default-behavior} -By default, \textbf{sortBed} sorts a BED file by chromosome and then by start position in ascending order. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed -i A.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000 -\end{Verbatim} - - -\paragraph{5.15.3 Optional sorting behavior} -\label{content/sortBed:optional-sorting-behavior} -\textbf{sortBed} will also sorts a BED file by chromosome and then by other criteria. - -For example, to sort by chromosome and then by feature size (in descending order): - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed -i A.bed -sizeD -chr1 750 10000 -chr1 800 1000 -chr1 80 180 -chr1 1 10 -\end{Verbatim} - -\textbf{Disclaimer:} it should be noted that \textbf{sortBed} is merely a convenience utility, as the UNIX sort utility -will sort BED files more quickly while using less memory. For example, UNIX sort will sort a BED file -by chromosome then by start position in the following manner: - -\begin{Verbatim}[commandchars=\\\{\}] -sort -k 1,1 -k2,2 -n a.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000 -\end{Verbatim} - - -\subsubsection{5.16 linksBed} -\label{content/linksBed:linksbed}\label{content/linksBed::doc} -Creates an HTML file with links to an instance of the UCSC Genome Browser for all features / -intervals in a file. This is useful for cases when one wants to manually inspect through a large set of -annotations or features. - - -\paragraph{5.16.1 Usage and option summary} -\label{content/linksBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -linksBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} \textgreater{} \textless{}HTML file\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-base} - & -The ``basename'' for the UCSC browser. \emph{Default: http://genome.ucsc.edu} -\\\hline - -\textbf{-org} - & -The organism (e.g. mouse, human). \emph{Default: human} -\\\hline - -\textbf{-db} - & -The genome build. \emph{Default: hg18} -\\\hline -\end{tabulary} - - - -\paragraph{5.16.2 Default behavior} -\label{content/linksBed:default-behavior} -By default, \textbf{linksBed} creates links to the public UCSC Genome Browser. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -head genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - -chr21 9928613 10012791 uc002yir.1 0 - -chr21 9928613 10012791 uc010gkv.1 0 - -chr21 9928613 10061300 uc002yis.1 0 - -chr21 10042683 10120796 uc002yit.1 0 - -chr21 10042683 10120808 uc002yiu.1 0 - -chr21 10079666 10120808 uc002yiv.1 0 - -chr21 10080031 10081687 uc002yiw.1 0 - -chr21 10081660 10120796 uc002yix.2 0 - - -linksBed -i genes.bed \textgreater{} genes.html -\end{Verbatim} - -When genes.html is opened in a web browser, one should see something like the following, where each -link on the page is built from the features in genes.bed: - - -\paragraph{5.16.3 Creating HTML links to a local UCSC Browser installation} -\label{content/linksBed:creating-html-links-to-a-local-ucsc-browser-installation} -Optionally, \textbf{linksBed} will create links to a local copy of the UCSC Genome Browser. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -head -3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - - -linksBed -i genes.bed -base http://mirror.uni.edu \textgreater{} genes.html -\end{Verbatim} - -One can point the links to the appropriate organism and genome build as well: - -\begin{Verbatim}[commandchars=\\\{\}] -head -3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 - -chr21 9928613 10012791 uc002yiq.1 0 - - -linksBed -i genes.bed -base http://mirror.uni.edu -org mouse -db mm9 \textgreater{} genes.html -\end{Verbatim} - - -\subsubsection{5.17 complementBed} -\label{content/complementBed:complementbed}\label{content/complementBed::doc} -\textbf{complementBed} returns the intervals in a genome that are not by the features in a feature file. An -example usage of this tool would be to return the intervals of the genome that are not annotated as a -repeat. - - -\paragraph{5.17.1 Usage and option summary} -\label{content/complementBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -complementBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -g \textless{}GENOME\textgreater{} -\end{Verbatim} - -\textbf{No additional options.} - - -\paragraph{5.17.2 Default behavior} -\label{content/complementBed:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -Chromosome \textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{}\textasciitilde{} - -BED FILE A ************* *************** ****************** - -Result === === ===== ======= -\end{Verbatim} - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -cat A.bed -chr1 100 200 -chr1 400 500 -chr1 500 800 - -cat my.genome -chr1 1000 - -complementBed -i A.bed -g my.genome -chr1 0 100 -chr1 200 400 -chr1 800 1000 -\end{Verbatim} - - -\subsubsection{5.18 bedToBam} -\label{content/bedToBam::doc}\label{content/bedToBam:bedtobam} -\textbf{bedToBam} converts features in a feature file to BAM format. This is useful as an efficient means of -storing large genome annotations in a compact, indexed format for visualization purposes. - - -\paragraph{5.18.1 Usage and option summary} -\label{content/bedToBam:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -bedToBam [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -g \textless{}GENOME\textgreater{} \textgreater{} \textless{}BAM\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-mapq} - & -Set a mapping quality (SAM MAPQ field) value for all BED entries. \emph{Default: 255} -\\\hline - -\textbf{-ubam} - & -Write uncompressed BAM output. The default is write compressed BAM output. -\\\hline - -\textbf{-bed12} - & -Indicate that the input BED file is in BED12 (a.k.a ``blocked'' BED) format. In this case, bedToBam will convert blocked BED features (e.g., gene annotaions) into ``spliced'' BAM alignments by creating an appropriate CIGAR string. -\\\hline -\end{tabulary} - - - -\paragraph{5.18.2 Default behavior} -\label{content/bedToBam:default-behavior} -The default behavior is to assume that the input file is in unblocked format. For example: - -\begin{Verbatim}[commandchars=\\\{\}] -head -5 rmsk.hg18.chr21.bed -chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9725582 9725977 L1PA3 3288 + -chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729320 9729809 L1PA3 3897 - - -bedToBam -i rmsk.hg18.chr21.bed -g human.hg18.genome \textgreater{} rmsk.hg18.chr21.bam - -samtools view rmsk.hg18.chr21.bam \textbar{} head -5 -ALR/Alpha 0 chr21 9719769 255 2124M * 0 0 * * -ALR/Alpha 0 chr21 9721906 255 3677M * 0 0 * * -L1PA3 0 chr21 9725583 255 395M * 0 0 * * -ALR/Alpha 0 chr21 9726022 255 3288M * 0 0 * * -L1PA3 16 chr21 9729321 255 489M * 0 0 * * -\end{Verbatim} - - -\paragraph{5.18.3 Creating ``spliced'' BAM entries from ``blocked'' BED features} -\label{content/bedToBam:creating-spliced-bam-entries-from-blocked-bed-features} -Optionally, \textbf{bedToBam} will create spliced BAM entries from ``blocked'' BED features by using the --bed12 option. This will create CIGAR strings in the BAM output that will be displayed as ``spliced'' -alignments. The image illustrates this behavior, as the top track is a BAM representation (using -bedToBam) of a BED file of UCSC genes. - -For example: - -\begin{Verbatim}[commandchars=\\\{\}] -bedToBam -i knownGene.hg18.chr21.bed -g human.hg18.genome -bed12 \textgreater{} knownGene.bam - -samtools view knownGene.bam \textbar{} head -2 -uc002yip.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M9274N54M880N54M1229N54M2377N54M112 -68N58M2666N109M2885N158M * 0 0 * * -uc002yiq.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M10208N54M1229N54M2377N54M11268N58M -2666N109M2885N158M * 0 0 * * -\end{Verbatim} - - -\subsubsection{5.19 overlap} -\label{content/overlap::doc}\label{content/overlap:overlap} -\textbf{overlap} computes the amount of overlap (in the case of positive values) or distance (in the case of -negative values) between feature coordinates occurring on the same input line and reports the result at -the end of the same line. In this way, it is a useful method for computing custom overlap scores from -the output of other BEDTools. - - -\paragraph{5.19.1 Usage and option summary} -\label{content/overlap:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -overlap [OPTIONS] -i \textless{}input\textgreater{} -cols s1,e1,s2,e2 -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-i} - & -Input file. Use ``stdin'' for pipes. -\\\hline - -\textbf{-cols} - & -Specify the columns (1-based) for the starts and ends of the features for which you'd like to compute the overlap/distance. The columns must be listed in the following order: \emph{start1,end1,start2,end2} -\\\hline -\end{tabulary} - - - -\paragraph{5.19.2 Default behavior} -\label{content/overlap:default-behavior} -The default behavior is to compute the amount of overlap between the features you specify based on the -start and end coordinates. For example: - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed -a A.bed -b B.bed -w 10 -chr1 10 20 A chr1 15 25 B -chr1 10 20 C chr1 25 35 D -\end{Verbatim} - -\# Now let's say we want to compute the number of base pairs of overlap -\# between the overlapping features from the output of windowBed. - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed -a A.bed -b B.bed -w 10 \textbar{} overlap -i stdin -cols 2,3,6,7 -chr1 10 20 A chr1 15 25 B 5 -chr1 10 20 C chr1 25 35 D -5 -\end{Verbatim} - - -\subsubsection{5.20 bedToIgv} -\label{content/bedToIgv:bedtoigv}\label{content/bedToIgv::doc} -\textbf{bedToIgv} creates an IGV (\href{http://www.broadinstitute.org/igv/}{http://www.broadinstitute.org/igv/}) batch script (see: \href{http://}{http://} -www.broadinstitute.org/igv/batch for details) such that a ??snapshot?? will be taken at each features in a -feature file. This is useful as an efficient means for quickly collecting images of primary data at several -loci for subsequent screening, etc. - -\textbf{NOTE: One must use IGV version 1.5 or higher.} - - -\paragraph{5.20.1 Usage and option summary} -\label{content/bedToIgv:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -bedToIgv [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} \textgreater{} \textless{}igv.batch\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-path} - & -The full path to which the IGV snapshots should be written. \emph{Default: ./} -\\\hline - -\textbf{-sess} - & -The full path to an existing IGV session file to be loaded prior to taking snapshots. \emph{Default is for no session to be loaded and the assumption is that you already have IGV open and loaded with your relevant data prior to running the batch script}. -\\\hline - -\textbf{-sort} - & -The type of BAM sorting you would like to apply to each image. \textbf{Valid sorting options}: \emph{base, position, strand, quality, sample, and readGroup Default is to apply no sorting at all}. -\\\hline - -\textbf{-clps} - & -Collapse the aligned reads prior to taking a snapshot. \emph{Default is to not collapse}. -\\\hline - -\textbf{-name} - & -Use the ``name'' field (column 4) for each image's filename. \emph{Default is to use the ``chr:start-pos.ext''}. -\\\hline - -\textbf{-slop} - & -Number of flanking base pairs on the left \& right of the image. -\\\hline - -\textbf{-img} - & -The type of image to be created. \textbf{Valid options}: \emph{png, eps, svg Default is png}. -\\\hline -\end{tabulary} - - - -\paragraph{5.20.2 Default behavior} -\label{content/bedToIgv:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -bedToIgv -i data/rmsk.hg18.chr21.bed \textbar{} head -9 -snapshotDirectory ./ -goto chr21:9719768-9721892 -snapshot chr21:9719768-9721892.png -goto chr21:9721905-9725582 -snapshot chr21:9721905-9725582.png -goto chr21:9725582-9725977 -snapshot chr21:9725582-9725977.png -goto chr21:9726021-9729309 -snapshot chr21:9726021-9729309.png -\end{Verbatim} - - -\paragraph{5.20.3 Using a bedToIgv batch script within IGV.} -\label{content/bedToIgv:using-a-bedtoigv-batch-script-within-igv} -Once an IGV batch script has been created with \textbf{bedToIgv}, it is simply a matter of running it from -within IGV. - -For example, first create the batch script: - -\begin{Verbatim}[commandchars=\\\{\}] -bedToIgv -i data/rmsk.hg18.chr21.bed \textgreater{} rmsk.igv.batch -\end{Verbatim} - -Then, open and launch the batch script from within IGV. This will immediately cause IGV to begin -taking snapshots of your requested regions. - - -\subsubsection{5.21 bed12ToBed6} -\label{content/bed12ToBed6::doc}\label{content/bed12ToBed6:bed12tobed6} -\textbf{bed12ToBed6} is a convenience tool that converts BED features in BED12 (a.k.a. ``blocked'' BED -features such as genes) to discrete BED6 features. For example, in the case of a gene with six exons, -bed12ToBed6 would create six separate BED6 features (i.e., one for each exon). - - -\paragraph{5.21.1 Usage and option summary} -\label{content/bed12ToBed6:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -bed12ToBed6 [OPTIONS] -i \textless{}BED12\textgreater{} -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-i} - & -The BED12 file that should be split into discrete BED6 features. \emph{Use ``stdin'' when using piped input}. -\\\hline -\end{tabulary} - - - -\paragraph{5.21.2 Default behavior} -\label{content/bed12ToBed6:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -head data/knownGene.hg18.chr21.bed \textbar{} tail -n 3 -chr21 10079666 10120808 uc002yiv.1 0 - 10081686 1 0 1 2 0 6 0 8 - 0 4 528,91,101,215, 0,1930,39750,40927, -chr21 10080031 10081687 uc002yiw.1 0 - 10080031 1 0 0 8 0 0 3 1 - 0 2 200,91, 0,1565, -chr21 10081660 10120796 uc002yix.2 0 - 10081660 1 0 0 8 1 6 6 0 - 0 3 27,101,223,0,37756,38913, - -head data/knownGene.hg18.chr21.bed \textbar{} tail -n 3 \textbar{} bed12ToBed6 -i stdin -chr21 10079666 10080194 uc002yiv.1 0 - -chr21 10081596 10081687 uc002yiv.1 0 - -chr21 10119416 10119517 uc002yiv.1 0 - -chr21 10120593 10120808 uc002yiv.1 0 - -chr21 10080031 10080231 uc002yiw.1 0 - -chr21 10081596 10081687 uc002yiw.1 0 - -chr21 10081660 10081687 uc002yix.2 0 - -chr21 10119416 10119517 uc002yix.2 0 - -chr21 10120573 10120796 uc002yix.2 0 - -\end{Verbatim} - - -\subsubsection{5.22 groupBy} -\label{content/groupBy::doc}\label{content/groupBy:groupby} -\textbf{groupBy} is a useful tool that mimics the ``groupBy'' clause in database systems. Given a file or stream -that is sorted by the appropriate ``grouping columns'', groupBy will compute summary statistics on -another column in the file or stream. This will work with output from all BEDTools as well as any other -tab-delimited file or stream. - -\textbf{NOTE: When using groupBy, the input data must be ordered by the same -columns as specified with the -grp argument. For example, if -grp is 1,2,3, the the -data should be pre-grouped accordingly. When groupBy detects changes in the -group columns it then summarizes all lines with that group}. - - -\paragraph{5.22.1 Usage and option summary} -\label{content/groupBy:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy [OPTIONS] -i \textless{}input\textgreater{} -opCol \textless{}input column\textgreater{} -\end{Verbatim} - -\begin{tabular}{|p{0.475\linewidth}|p{0.475\linewidth}|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-i} - & \begin{quote} - -The input file that should be grouped and summarized. \emph{Use ``stdin'' when using piped input}. -\end{quote} - -\textbf{Note: if -i is omitted, input is assumed to come from standard input (stdin)} -\\\hline - -\textbf{-g OR -grp} - & -Specifies which column(s) (1-based) should be used to group the input. The columns must be comma-separated and each column must be explicitly listed. No ranges (e.g. 1-4) yet allowed. \emph{Default: 1,2,3} -\\\hline - -\textbf{-c OR -opCol} - & -Specify the column (1-based) that should be summarized. \emph{Required}. -\\\hline - -\textbf{-o OR -op} - & -Specify the operation that should be applied to \textbf{opCol}. - -\begin{DUlineblock}{0em} -\item[] Valid operations: -\end{DUlineblock} -\begin{quote} - -\begin{DUlineblock}{0em} -\item[] \textbf{sum} - \emph{numeric only} -\item[] \textbf{count} - \emph{numeric or text} -\item[] \textbf{min} - \emph{numeric only} -\item[] \textbf{max} - \emph{numeric only} -\item[] \textbf{mean} - \emph{numeric only} -\item[] \textbf{stdev} - \emph{numeric only} -\item[] \textbf{median} - \emph{numeric only} -\item[] \textbf{mode} - \emph{numeric or text} -\item[] \textbf{antimode} - \emph{numeric or text} -\item[] \textbf{collapse} (i.e., print a comma separated list) - \emph{numeric or text} -\item[] \textbf{freqasc} - \emph{print a comma separated list of values observed and the number of times they were observed. Reported in ascending order of frequency} -\end{DUlineblock} -\end{quote} - -\begin{DUlineblock}{0em} -\item[] \textbf{freqdesc} - \emph{print a comma separated list of values observed and the number of times they were observed. Reported in descending order of frequency} -\end{DUlineblock} -\begin{quote} - -\begin{DUlineblock}{0em} -\item[] \emph{Default: sum} -\end{DUlineblock} -\end{quote} -\\\hline -\end{tabular} - - - -\paragraph{5.22.2 Default behavior.} -\label{content/groupBy:default-behavior} -Let's imagine we have three incredibly interesting genetic variants that we are studying and we are -interested in what annotated repeats these variants overlap. - -\begin{Verbatim}[commandchars=\\\{\}] -cat variants.bed -chr21 9719758 9729320 variant1 -chr21 9729310 9757478 variant2 -chr21 9795588 9796685 variant3 - -intersectBed -a variants.bed -b repeats.bed -wa -wb \textgreater{} variantsToRepeats.bed -cat variantsToRepeats.bed -chr21 9719758 9729320 variant1 chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9719758 9729320 variant1 chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9719758 9729320 variant1 chr21 9725582 9725977 L1PA3 3288 + -chr21 9719758 9729320 variant1 chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729310 9757478 variant2 chr21 9729320 9729809 L1PA3 3897 - -chr21 9729310 9757478 variant2 chr21 9729809 9730866 L1P1 8367 + -chr21 9729310 9757478 variant2 chr21 9730866 9734026 ALR/Alpha 1036 - -chr21 9729310 9757478 variant2 chr21 9734037 9757471 ALR/Alpha 1182 - -chr21 9795588 9796685 variant3 chr21 9795589 9795713 (GAATG)n 308 + -chr21 9795588 9796685 variant3 chr21 9795736 9795894 (GAATG)n 683 + -chr21 9795588 9796685 variant3 chr21 9795911 9796007 (GAATG)n 345 + -chr21 9795588 9796685 variant3 chr21 9796028 9796187 (GAATG)n 756 + -chr21 9795588 9796685 variant3 chr21 9796202 9796615 (GAATG)n 891 + -chr21 9795588 9796685 variant3 chr21 9796637 9796824 (GAATG)n 621 + -\end{Verbatim} - -We can see that variant1 overlaps with 3 repeats, variant2 with 4 and variant3 with 6. We can use -groupBy to summarize the hits for each variant in several useful ways. The default behavior is to -compute the \emph{sum} of the opCol. - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -grp 1,2,3 -opCol 9 -chr21 9719758 9729320 6353 -chr21 9729310 9757478 14482 -chr21 9795588 9796685 3604 -\end{Verbatim} - - -\paragraph{5.22.3 Computing the min and max.} -\label{content/groupBy:computing-the-min-and-max} -Now let's find the \emph{min} and \emph{max} repeat score for each variant. We do this by ``grouping'' on the variant -coordinate columns (i.e. cols. 1,2 and 3) and ask for the min and max of the repeat score column (i.e. -col. 9). - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -g 1,2,3 -c 9 -o min -chr21 9719758 9729320 1004 -chr21 9729310 9757478 1036 -chr21 9795588 9796685 308 -\end{Verbatim} - -We can also group on just the \emph{name} column with similar effect. - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -grp 4 -opCol 9 -op min -variant1 1004 -variant2 1036 -variant3 308 -\end{Verbatim} - -What about the \emph{max} score? Let's keep the coordinates and the name of the variants so that we -stay in BED format. - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op max -chr21 9719758 9729320 variant1 3288 -chr21 9729310 9757478 variant2 8367 -chr21 9795588 9796685 variant3 891 -\end{Verbatim} - - -\paragraph{5.22.4 Computing the mean and median.} -\label{content/groupBy:computing-the-mean-and-median} -Now let's find the \emph{mean} and \emph{median} repeat score for each variant. - -\begin{Verbatim}[commandchars=\\\{\}] -cat variantsToRepeats.bed \textbar{} groupBy -g 1,2,3,4 -c 9 -o mean -chr21 9719758 9729320 variant1 1588.25 -chr21 9729310 9757478 variant2 3620.5 -chr21 9795588 9796685 variant3 600.6667 - -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op median -chr21 9719758 9729320 variant1 1030.5 -chr21 9729310 9757478 variant2 2539.5 -chr21 9795588 9796685 variant3 652 -\end{Verbatim} - - -\paragraph{5.22.5 Computing the mode and ``antimode''.} -\label{content/groupBy:computing-the-mode-and-antimode} -Now let's find the \emph{mode} and \emph{antimode} (i.e., the least frequent) repeat score for each variant (in this case -they are identical). - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op mode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308 - -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op antimode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308 -\end{Verbatim} - - -\paragraph{5.22.6 Computing the count of lines for a given group.} -\label{content/groupBy:computing-the-count-of-lines-for-a-given-group} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -g 1,2,3,4 -c 9 -c count -chr21 9719758 9729320 variant1 4 -chr21 9729310 9757478 variant2 4 -chr21 9795588 9796685 variant3 6 -\end{Verbatim} - - -\paragraph{5.22.7 Collapsing: listing all of the values in the opCol for a given group.} -\label{content/groupBy:collapsing-listing-all-of-the-values-in-the-opcol-for-a-given-group} -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This ``denormalizes'' things. Now you have a list of all the -repeats on a single line. - -\begin{Verbatim}[commandchars=\\\{\}] -groupBy -i variantsToRepeats.bed -grp 1,2,3,4 -opCol 9 -op collapse -chr21 9719758 9729320 variant1 ALR/Alpha,ALR/Alpha,L1PA3,ALR/Alpha, -chr21 9729310 9757478 variant2 L1PA3,L1P1,ALR/Alpha,ALR/Alpha, -chr21 9795588 9796685 variant3 (GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n, -\end{Verbatim} - - -\paragraph{5.22.8 Computing frequencies: freqasc and freqdesc.} -\label{content/groupBy:computing-frequencies-freqasc-and-freqdesc} -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This ``denormalizes'' things. Now you have a list of all the -repeats on a single line. - -\begin{Verbatim}[commandchars=\\\{\}] -cat variantsToRepeats.bed \textbar{} groupBy -g 1 -c 8 -o freqdesc -chr21 (GAATG)n:6,ALR/Alpha:5,L1PA3:2,L1P1:1, - -cat variantsToRepeats.bed \textbar{} groupBy -g 1 -c 8 -o freqasc -chr21 L1P1:1,L1PA3:2,ALR/Alpha:5,(GAATG)n:6, -\end{Verbatim} - - -\subsubsection{5.23 unionBedGraphs} -\label{content/unionBedGraphs:unionbedgraphs}\label{content/unionBedGraphs::doc} -\textbf{unionBedGraphs} combines multiple BEDGRAPH files into a single file such that one can directly -compare coverage (and other text-values such as genotypes) across multiple sample - - -\paragraph{5.23.1 Usage and option summary} -\label{content/unionBedGraphs:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -unionBedGraphs [OPTIONS] -i FILE1 FILE2 FILE3 ... FILEn -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-header} - & -Print a header line, consisting of chrom, start, end followed by the names of each input BEDGRAPH file. -\\\hline - -\textbf{-names} - & -A list of names (one per file) to describe each file in -i. These names will be printed in the header line. -\\\hline - -\textbf{-empty} - & -Report empty regions (i.e., start/end intervals w/o values in all files). \emph{Requires the `-g FILE' parameter (see below)}. -\\\hline - -\textbf{-g} - & -The genome file to be used to calculate empty regions. -\\\hline - -\textbf{-filler TEXT} - & -Use TEXT when representing intervals having no value. Default is `0', but you can use `N/A' or any other text. -\\\hline - -\textbf{-examples} - & -Show detailed usage examples. -\\\hline -\end{tabulary} - - - -\paragraph{5.23.2 Default behavior} -\label{content/unionBedGraphs:default-behavior} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -cat 1.bg -chr1 1000 1500 10 -chr1 2000 2100 20 - -cat 2.bg -chr1 900 1600 60 -chr1 1700 2050 50 - -cat 3.bg -chr1 1980 2070 80 -chr1 2090 2100 20 - -cat sizes.txt -chr1 5000 - -unionBedGraphs -i 1.bg 2.bg 3.bg -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -\end{Verbatim} - - -\paragraph{5.23.3 Add a header line to the output} -\label{content/unionBedGraphs:add-a-header-line-to-the-output} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -unionBedGraphs -i 1.bg 2.bg 3.bg -header -chrom start end 1 2 3 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -\end{Verbatim} - - -\paragraph{5.23.4 Add a header line with custom file names to the output} -\label{content/unionBedGraphs:add-a-header-line-with-custom-file-names-to-the-output} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -unionBedGraphs -i 1.bg 2.bg 3.bg -header -names WT-1 WT-2 KO-1 -chrom start end WT-1 WT-2 KO-1 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -\end{Verbatim} - - -\paragraph{5.23.5 Include regions that have zero coverage in all BEDGRAPH files.} -\label{content/unionBedGraphs:include-regions-that-have-zero-coverage-in-all-bedgraph-files} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header -chrom start end WT-1 WT-2 KO-1 -chrom start end 1 2 3 -chr1 0 900 0 0 0 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1600 1700 0 0 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -chr1 2100 5000 0 0 0 -\end{Verbatim} - - -\paragraph{5.23.6 Use a custom value for missing values.} -\label{content/unionBedGraphs:use-a-custom-value-for-missing-values} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -unionBedGraphs -i 1.bg 2.bg 3.bg -empty -g sizes.txt -header -filler N/A -chrom start end WT-1 WT-2 KO-1 -chrom start end 1 2 3 -chr1 0 900 N/A N/A N/A -chr1 900 1000 N/A 60 N/A -chr1 1000 1500 10 60 N/A -chr1 1500 1600 N/A 60 N/A -chr1 1600 1700 N/A N/A N/A -chr1 1700 1980 N/A 50 N/A -chr1 1980 2000 N/A 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 N/A 80 -chr1 2070 2090 20 N/A N/A -chr1 2090 2100 20 N/A 20 -chr1 2100 5000 N/A N/A N/A -\end{Verbatim} - - -\paragraph{5.23.7 Use BEDGRAPH files with non-numeric values.} -\label{content/unionBedGraphs:use-bedgraph-files-with-non-numeric-values} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -cat 1.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -cat 2.snp.bg -chr1 0 1 C/C -chr1 7 8 T/T - -cat 3.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -unionBedGraphs -i 1.snp.bg 2.snp.bg 3.snp.bg -filler -/- -chr1 0 1 A/G C/C A/G -chr1 5 6 C/T -/- C/T -chr1 7 8 -/- T/T -/- -\end{Verbatim} - - -\subsubsection{5.24 annotateBed} -\label{content/annotateBed::doc}\label{content/annotateBed:annotatebed} -\textbf{annotateBed} annotates one BED/VCF/GFF file with the coverage and number of overlaps observed -from multiple other BED/VCF/GFF files. In this way, it allows one to ask to what degree one feature -coincides with multiple other feature types with a single command. - - -\paragraph{5.24.1 Usage and option summary} -\label{content/annotateBed:usage-and-option-summary} -Usage: - -\begin{Verbatim}[commandchars=\\\{\}] -annotateBed [OPTIONS] -i \textless{}BED/GFF/VCF\textgreater{} -files FILE1 FILE2 FILE3 ... FILEn -\end{Verbatim} - -\begin{tabulary}{\linewidth}{|L|L|} -\hline -\textbf{ -Option -} & \textbf{ -Description -}\\\hline - -\textbf{-namesr} - & -A list of names (one per file) to describe each file in -i. These names will be printed as a header line. -\\\hline - -\textbf{-counts} - & -Report the count of features in each file that overlap -i. Default behavior is to report the fraction of -i covered by each file. -\\\hline - -\textbf{-both} - & -Report the count of features followed by the \% coverage for each annotation file. Default is to report solely the fraction of -i covered by each file. -\\\hline - -\textbf{-s} - & -Force strandedness. That is, only include hits in A that overlap B on the same strand. By default, hits are included without respect to strand. -\\\hline -\end{tabulary} - - - -\paragraph{5.24.2 Default behavior - annotate one file with coverage from others.} -\label{content/annotateBed:default-behavior-annotate-one-file-with-coverage-from-others} -By default, the fraction of each feature covered by each annotation file is reported after the complete -feature in the file to be annotated. - -\begin{Verbatim}[commandchars=\\\{\}] -cat variants.bed -chr1 100 200 nasty 1 - -chr2 500 1000 ugly 2 + -chr3 1000 5000 big 3 - - -cat genes.bed -chr1 150 200 geneA 1 + -chr1 175 250 geneB 2 + -chr3 0 10000 geneC 3 - - -cat conserve.bed -chr1 0 10000 cons1 1 + -chr2 700 10000 cons2 2 - -chr3 4000 10000 cons3 3 + - -cat known\_var.bed -chr1 0 120 known1 - -chr1 150 160 known2 - -chr2 0 10000 known3 + - -annotateBed -i variants.bed -files genes.bed conserv.bed known\_var.bed -chr1 100 200 nasty 1 - 0.500000 1.000000 0.300000 -chr2 500 1000 ugly 2 + 0.000000 0.600000 1.000000 -chr3 1000 5000 big 3 - 1.000000 0.250000 0.000000 -\end{Verbatim} - - -\paragraph{5.24.3 Report the count of hits from the annotation files} -\label{content/annotateBed:report-the-count-of-hits-from-the-annotation-files} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -annotateBed -counts -i variants.bed -files genes.bed conserv.bed known\_var.bed -chr1 100 200 nasty 1 - 2 1 2 -chr2 500 1000 ugly 2 + 0 1 1 -chr3 1000 5000 big 3 - 1 1 0 -\end{Verbatim} - - -\paragraph{5.24.4 Report both the count of hits and the fraction covered from the annotation files} -\label{content/annotateBed:report-both-the-count-of-hits-and-the-fraction-covered-from-the-annotation-files} -Figure: - -\begin{Verbatim}[commandchars=\\\{\}] -annotateBed -both -i variants.bed -files genes.bed conserv.bed known\_var.bed -\#chr start end name score +/- cnt1 pct1 cnt2 pct2 cnt3 pct3 -chr1 100 200 nasty 1 - 2 0.500000 1 1.000000 2 0.300000 -chr2 500 1000 ugly 2 + 0 0.000000 1 0.600000 1 1.000000 -chr3 1000 5000 big 3 - 1 1.000000 1 0.250000 0 0.000000 -\end{Verbatim} - - -\paragraph{5.24.5 Restrict the reporting to overlaps on the same strand.} -\label{content/annotateBed:restrict-the-reporting-to-overlaps-on-the-same-strand} -Note: Compare with the result from 5.24.3 - -\begin{Verbatim}[commandchars=\\\{\}] -annotateBed -s -i variants.bed -files genes.bed conserv.bed known\_var.bed -chr1 100 200 nasty var1 - 0.000000 0.000000 0.000000 -chr2 500 1000 ugly var2 + 0.000000 0.000000 0.000000 -chr3 1000 5000 big var3 - 1.000000 0.000000 0.000000 -\end{Verbatim} - - -\section{Example usage} -\label{content/example-usage:example-usage}\label{content/example-usage::doc} -Below are several examples of basic BEDTools usage. Example BED files are provided in the -/data directory of the BEDTools distribution. - - -\subsection{6.1 intersectBed} -\label{content/example-usage:intersectbed} -6.1.1 Report the base-pair overlap between sequence alignments and genes. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -\end{Verbatim} - -6.1.2 Report whether each alignment overlaps one or more genes. If not, the alignment is not reported. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -u -\end{Verbatim} - -6.1.3 Report those alignments that overlap NO genes. Like ``grep -v'' - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -v -\end{Verbatim} - -6.1.4 Report the number of genes that each alignment overlaps. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -c -\end{Verbatim} - -6.1.5 Report the entire, original alignment entry for each overlap with a gene. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -wa -\end{Verbatim} - -6.1.6 Report the entire, original gene entry for each overlap with a gene. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -wb -\end{Verbatim} - -6.1.7 Report the entire, original alignment and gene entries for each overlap. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a reads.bed -b genes.bed -wa -wb -\end{Verbatim} - -6.1.8 Only report an overlap with a repeat if it spans at least 50\% of the exon. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a exons.bed -b repeatMasker.bed -f 0.50 -\end{Verbatim} - -6.1.9 Only report an overlap if comprises 50\% of the structural variant and 50\% of the segmental duplication. Thus, it is reciprocally at least a 50\% overlap. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a SV.bed -b segmentalDups.bed -f 0.50 -r -\end{Verbatim} - -6.1.10 Read BED A from stdin. For example, find genes that overlap LINEs but not SINEs. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a genes.bed -b LINES.bed \textbar{} intersectBed -a stdin -b SINEs.bed -v -\end{Verbatim} - -6.1.11 Retain only single-end BAM alignments that overlap exons. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -abam reads.bam -b exons.bed \textgreater{} reads.touchingExons.bam -\end{Verbatim} - -6.1.12 Retain only single-end BAM alignments that do not overlap simple sequence -repeats. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -abam reads.bam -b SSRs.bed -v \textgreater{} reads.noSSRs.bam -\end{Verbatim} - - -\subsection{6.2 pairToBed} -\label{content/example-usage:pairtobed} -6.2.1 Return all structural variants (in BEDPE format) that overlap with genes on either -end. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -a sv.bedpe -b genes \textgreater{} sv.genes -\end{Verbatim} - -6.2.2 Return all structural variants (in BEDPE format) that overlap with genes on both -end. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -a sv.bedpe -b genes -type both \textgreater{} sv.genes -\end{Verbatim} - -6.2.3 Retain only paired-end BAM alignments where neither end overlaps simple -sequence repeats. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -abam reads.bam -b SSRs.bed -type neither \textgreater{} reads.noSSRs.bam -\end{Verbatim} - -6.2.4 Retain only paired-end BAM alignments where both ends overlap segmental -duplications. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -abam reads.bam -b segdups.bed -type both \textgreater{} reads.SSRs.bam -\end{Verbatim} - -6.2.5 Retain only paired-end BAM alignments where neither or one and only one end -overlaps segmental duplications. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -abam reads.bam -b segdups.bed -type notboth \textgreater{} reads.notbothSSRs.bam -\end{Verbatim} - - -\subsection{6.3 pairToPair} -\label{content/example-usage:pairtopair} -6.3.1 Find all SVs (in BEDPE format) in sample 1 that are also in sample 2. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToPair -a 1.sv.bedpe -b 2.sv.bedpe \textbar{} cut -f 1-10 \textgreater{} 1.sv.in2.bedpe -\end{Verbatim} - -6.3.2 Find all SVs (in BEDPE format) in sample 1 that are not in sample 2. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToPair -a 1.sv.bedpe -b 2.sv.bedpe -type neither \textbar{} cut -f 1-10 \textgreater{} -\end{Verbatim} - -1.sv.notin2.bedpe - - -\subsection{6.4 bamToBed} -\label{content/example-usage:bamtobed} -6.4.1 Convert BAM alignments to BED format. - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam \textgreater{} reads.bed -\end{Verbatim} - -6.4.2 Convert BAM alignments to BED format using the BAM edit distance (NM) as the -BED ``score''. - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam -ed \textgreater{} reads.bed -\end{Verbatim} - -6.4.3 Convert BAM alignments to BEDPE format. - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam -bedpe \textgreater{} reads.bedpe -\end{Verbatim} - - -\subsection{6.5 windowBed} -\label{content/example-usage:windowbed} -6.5.1 Report all genes that are within 10000 bp upstream or downstream of CNVs. - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed -a CNVs.bed -b genes.bed -w 10000 -\end{Verbatim} - -6.5.2 Report all genes that are within 10000 bp upstream or 5000 bp downstream of -CNVs. - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed -a CNVs.bed -b genes.bed -l 10000 -r 5000 -\end{Verbatim} - -6.5.3 Report all SNPs that are within 5000 bp upstream or 1000 bp downstream of genes. -Define upstream and downstream based on strand. - -\begin{Verbatim}[commandchars=\\\{\}] -windowBed -a genes.bed -b snps.bed -l 5000 -r 1000 -sw -\end{Verbatim} - - -\subsection{6.6 closestBed} -\label{content/example-usage:closestbed} -Note: By default, if there is a tie for closest, all ties will be reported. \textbf{closestBed} allows overlapping -features to be the closest. - -6.6.1 Find the closest ALU to each gene. - -\begin{Verbatim}[commandchars=\\\{\}] -closestBed -a genes.bed -b ALUs.bed -\end{Verbatim} - -6.6.2 Find the closest ALU to each gene, choosing the first ALU in the file if there is a -tie. - -\begin{Verbatim}[commandchars=\\\{\}] -closestBed -a genes.bed -b ALUs.bed -t first -\end{Verbatim} - -6.6.3 Find the closest ALU to each gene, choosing the last ALU in the file if there is a -tie. - -\begin{Verbatim}[commandchars=\\\{\}] -closestBed -a genes.bed -b ALUs.bed -t last -\end{Verbatim} - - -\subsection{6.7 subtractBed} -\label{content/example-usage:subtractbed} -Note: If a feature in A is entirely ``spanned'' by any feature in B, it will not be reported. - -6.7.1 Remove introns from gene features. Exons will (should) be reported. - -\begin{Verbatim}[commandchars=\\\{\}] -subtractBed -a genes.bed -b introns.bed -\end{Verbatim} - - -\subsection{6.8 mergeBed} -\label{content/example-usage:mergebed} -6.8.1 Merge overlapping repetitive elements into a single entry. - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed -i repeatMasker.bed -\end{Verbatim} - -6.8.2 Merge overlapping repetitive elements into a single entry, returning the number of -entries merged. - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed -i repeatMasker.bed -n -\end{Verbatim} - -6.8.3 Merge nearby (within 1000 bp) repetitive elements into a single entry. - -\begin{Verbatim}[commandchars=\\\{\}] -mergeBed -i repeatMasker.bed -d 1000 -\end{Verbatim} - - -\subsection{6.9 coverageBed} -\label{content/example-usage:coveragebed} -6.9.1 Compute the coverage of aligned sequences on 10 kilobase ``windows'' spanning the -genome. - -\begin{Verbatim}[commandchars=\\\{\}] -coverageBed -a reads.bed -b windows10kb.bed \textbar{} head -chr1 0 10000 0 10000 0.00 -chr1 10001 20000 33 10000 0.21 -chr1 20001 30000 42 10000 0.29 -chr1 30001 40000 71 10000 0.36 -\end{Verbatim} - -6.9.2 Compute the coverage of aligned sequences on 10 kilobase ``windows'' spanning the -genome and created a BEDGRAPH of the number of aligned reads in each window for -display on the UCSC browser. - -\begin{Verbatim}[commandchars=\\\{\}] -coverageBed -a reads.bed -b windows10kb.bed \textbar{} cut -f 1-4 \textgreater{} windows10kb.cov.bedg -\end{Verbatim} - -6.9.3 Compute the coverage of aligned sequences on 10 kilobase ``windows'' spanning the -genome and created a BEDGRAPH of the fraction of each window covered by at least -one aligned read for display on the UCSC browser. - -\begin{Verbatim}[commandchars=\\\{\}] -coverageBed -a reads.bed -b windows10kb.bed \textbar{} awk ??\PYGZob{}OFS="\PYGZbs{}t"; print \$1,\$2,\$3,\$6\PYGZcb{}?? -\textgreater{} windows10kb.pctcov.bedg -\end{Verbatim} - - -\subsection{6.10 complementBed} -\label{content/example-usage:complementbed} -6.10.1 Report all intervals in the human genome that are not covered by repetitive -elements. - -\begin{Verbatim}[commandchars=\\\{\}] -complementBed -i repeatMasker.bed -g hg18.genome -\end{Verbatim} - - -\subsection{6.11 shuffleBed} -\label{content/example-usage:shufflebed} -6.11.1 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps. - -\begin{Verbatim}[commandchars=\\\{\}] -shuffleBed -i variants.bed -g hg18.genome -excl genome\_gaps.bed -\end{Verbatim} - -6.11.2 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps and require that the variants be randomly -placed on the same chromosome. - -\begin{Verbatim}[commandchars=\\\{\}] -shuffleBed -i variants.bed -g hg18.genome -excl genome\_gaps.bed -chrom -\end{Verbatim} - - -\section{Advanced usage} -\label{content/advanced-usage::doc}\label{content/advanced-usage:advanced-usage} - -\subsection{7.1 Mask all regions in a genome except for targeted capture regions.} -\label{content/advanced-usage:mask-all-regions-in-a-genome-except-for-targeted-capture-regions} -\# Add 500 bp up and downstream of each probe - -\begin{Verbatim}[commandchars=\\\{\}] -slopBed -i probes.bed -b 500 \textgreater{} probes.500bp.bed -\end{Verbatim} - -\# Get a BED file of all regions not covered by the probes (+500 bp up/down) - -\begin{Verbatim}[commandchars=\\\{\}] -complementBed -i probes.500bp.bed -g hg18.genome \textgreater{} probes.500bp.complement.bed -\end{Verbatim} - -\# Create a masked genome where all bases are masked except for the probes +500bp - -\begin{Verbatim}[commandchars=\\\{\}] -maskFastaFromBed -in hg18.fa -bed probes.500bp.complement.bed -fo hg18.probecomplement. -masked.fa -\end{Verbatim} - - -\subsection{7.2 Screening for novel SNPs.} -\label{content/advanced-usage:screening-for-novel-snps} -\# Find all SNPs that are not in dbSnp and not in the latest 1000 genomes calls - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a snp.calls.bed -b dbSnp.bed -v \textbar{} intersectBed -a stdin -b 1KG.bed --v \textgreater{} snp.calls.novel.bed -\end{Verbatim} - -you can first use intersectBed with the ``-f 1.0'' option. - -\begin{Verbatim}[commandchars=\\\{\}] -intersectBed -a features.bed -b windows.bed -f 1.0 \textbar{} coverageBed -a stdin -b -windows.bed \textgreater{} windows.bed.coverage -\end{Verbatim} - - -\subsection{7.4 Computing the coverage of BAM alignments on exons.} -\label{content/advanced-usage:computing-the-coverage-of-bam-alignments-on-exons} -\# One can combine SAMtools with BEDtools to compute coverage directly from the BAM -data by using bamToBed. - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam \textbar{} coverageBed -a stdin -b exons.bed \textgreater{} exons.bed.coverage -\end{Verbatim} - -\# Take it a step further and require that coverage be from properly-paired reads. - -\begin{Verbatim}[commandchars=\\\{\}] -samtools view -bf 0x2 reads.bam \textbar{} bamToBed -i stdin \textbar{} coverageBed -a stdin -b -exons.bed \textgreater{} exons.bed.proper.coverage -\end{Verbatim} - - -\subsection{7.5 Computing coverage separately for each strand.} -\label{content/advanced-usage:computing-coverage-separately-for-each-strand} -\# Use grep to only look at forward strand features (i.e. those that end in ``+''). - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam \textbar{} grep \PYGZbs{}+\$ \textbar{} coverageBed -a stdin -b genes.bed \textgreater{} -genes.bed.forward.coverage -\end{Verbatim} - -\# Use grep to only look at reverse strand features (i.e. those that end in ``-''). - -\begin{Verbatim}[commandchars=\\\{\}] -bamToBed -i reads.bam \textbar{} grep \PYGZbs{}-\$ \textbar{} coverageBed -a stdin -b genes.bed \textgreater{} -genes.bed.forward.coverage -\end{Verbatim} - - -\subsection{7.6 Find structural variant calls that are private to one sample.} -\label{content/advanced-usage:find-structural-variant-calls-that-are-private-to-one-sample} -\# : - -\begin{Verbatim}[commandchars=\\\{\}] -pairToPair -a sample1.sv.bedpe -b othersamples.sv.bedpe -type neither \textgreater{} -sample1.sv.private.bedpe -\end{Verbatim} - - -\subsection{7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome.} -\label{content/advanced-usage:exclude-sv-deletions-that-appear-to-be-alu-insertions-in-the-reference-genome} -\# We'll require that 90\% of the inner span of the deletion be overlapped by a -recent ALU. - -\begin{Verbatim}[commandchars=\\\{\}] -pairToBed -a deletions.sv.bedpe -b ALUs.recent.bed -type notispan -f 0.80 \textgreater{} -deletions.notALUsinRef.bedpe -\end{Verbatim} - - -\chapter{Mailing list} -\label{index:mailing-list} -Refer to the mailing list. - - - -\renewcommand{\indexname}{Index} -\printindex -\end{document} diff --git a/docs/_build/latex/bedtools.toc b/docs/_build/latex/bedtools.toc deleted file mode 100644 index 65e06b1d..00000000 --- a/docs/_build/latex/bedtools.toc +++ /dev/null @@ -1,203 +0,0 @@ -\select@language {english} -\contentsline {chapter}{\numberline {1}Overview}{1}{chapter.1} -\contentsline {chapter}{\numberline {2}Table of contents}{3}{chapter.2} -\contentsline {section}{\numberline {2.1}Overview}{3}{section.2.1} -\contentsline {subsection}{\numberline {2.1.1}1.1 Background}{3}{subsection.2.1.1} -\contentsline {subsection}{\numberline {2.1.2}1.2 Summary of available tools.}{3}{subsection.2.1.2} -\contentsline {subsection}{\numberline {2.1.3}1.3 Fundamental concepts.}{4}{subsection.2.1.3} -\contentsline {subsubsection}{1.3.1 What are genome features and how are they represented?}{4}{subsubsection*.3} -\contentsline {subsubsection}{1.3.2 Overlapping / intersecting features.}{5}{subsubsection*.4} -\contentsline {subsubsection}{1.3.3 Comparing features in file \IeC {\textquotedblleft }A\IeC {\textquotedblright } and file \IeC {\textquotedblleft }B\IeC {\textquotedblright }.}{5}{subsubsection*.5} -\contentsline {subsubsection}{1.3.4 BED starts are zero-based and BED ends are one-based.}{5}{subsubsection*.6} -\contentsline {subsubsection}{1.3.5 GFF starts and ends are one-based.}{5}{subsubsection*.7} -\contentsline {subsubsection}{1.3.6 VCF coordinates are one-based.}{6}{subsubsection*.8} -\contentsline {subsubsection}{1.3.7 File B is loaded into memory (most of the time).}{6}{subsubsection*.9} -\contentsline {subsubsection}{1.3.8 Feature files \emph {must} be tab-delimited.}{6}{subsubsection*.10} -\contentsline {subsubsection}{1.3.9 All BEDTools allow features to be \IeC {\textquotedblleft }piped\IeC {\textquotedblright } via standard input.}{6}{subsubsection*.11} -\contentsline {subsubsection}{1.3.10 Most BEDTools write their results to standard output.}{6}{subsubsection*.12} -\contentsline {subsubsection}{1.3.11 What is a \IeC {\textquotedblleft }genome\IeC {\textquotedblright } file?}{7}{subsubsection*.13} -\contentsline {subsubsection}{1.3.12 Paired-end BED files (BEDPE files).}{7}{subsubsection*.14} -\contentsline {subsubsection}{1.3.13 Use \IeC {\textquotedblleft }-h\IeC {\textquotedblright } for help with any BEDTool.}{7}{subsubsection*.15} -\contentsline {subsubsection}{1.3.14 BED features must not contain negative positions.}{7}{subsubsection*.16} -\contentsline {subsubsection}{1.3.15 The start position must be \textless {}= to the end position.}{7}{subsubsection*.17} -\contentsline {subsubsection}{1.3.16 Headers are allowed in GFF and BED files}{7}{subsubsection*.18} -\contentsline {subsubsection}{1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be \IeC {\textquotedblleft }gzipped\IeC {\textquotedblright }}{8}{subsubsection*.19} -\contentsline {subsubsection}{1.3.18 Support for \IeC {\textquotedblleft }split\IeC {\textquotedblright } or \IeC {\textquotedblleft }spliced\IeC {\textquotedblright } BAM alignments and \IeC {\textquotedblleft }blocked\IeC {\textquotedblright } BED features}{8}{subsubsection*.20} -\contentsline {subsubsection}{1.3.19 Writing uncompressed BAM output.}{8}{subsubsection*.21} -\contentsline {subsection}{\numberline {2.1.4}1.4 Implementation and algorithmic notes.}{8}{subsection.2.1.4} -\contentsline {subsection}{\numberline {2.1.5}1.5 License and availability.}{9}{subsection.2.1.5} -\contentsline {subsection}{\numberline {2.1.6}1.6 Mailing list.}{9}{subsection.2.1.6} -\contentsline {subsection}{\numberline {2.1.7}1.7 Contributors.}{9}{subsection.2.1.7} -\contentsline {section}{\numberline {2.2}Installation}{9}{section.2.2} -\contentsline {section}{\numberline {2.3}Quick start}{9}{section.2.3} -\contentsline {subsection}{\numberline {2.3.1}Install BEDTools}{9}{subsection.2.3.1} -\contentsline {subsection}{\numberline {2.3.2}Use BEDTools}{10}{subsection.2.3.2} -\contentsline {section}{\numberline {2.4}General usage}{10}{section.2.4} -\contentsline {subsection}{\numberline {2.4.1}4.1 Supported file formats}{10}{subsection.2.4.1} -\contentsline {subsubsection}{4.1.1 BED format}{10}{subsubsection*.22} -\contentsline {subsubsection}{4.1.2 BEDPE format}{12}{subsubsection*.23} -\contentsline {subsubsection}{4.1.3 GFF format}{13}{subsubsection*.24} -\contentsline {subsubsection}{4.1.3 GFF format}{14}{subsubsection*.25} -\contentsline {subsubsection}{4.1.5 SAM/BAM format}{15}{subsubsection*.26} -\contentsline {subsubsection}{4.1.6 VCF format}{15}{subsubsection*.27} -\contentsline {section}{\numberline {2.5}The BEDTools suite}{15}{section.2.5} -\contentsline {subsection}{\numberline {2.5.1}Table of contents}{15}{subsection.2.5.1} -\contentsline {subsubsection}{5.1 intersectBed}{15}{subsubsection*.28} -\contentsline {paragraph}{5.1.1 Usage and option summary}{15}{paragraph*.29} -\contentsline {paragraph}{5.1.2 Default behavior}{16}{paragraph*.30} -\contentsline {paragraph}{5.1.3 (-wa)Reporting the original A feature}{17}{paragraph*.31} -\contentsline {paragraph}{5.1.4 (-wb)Reporting the original B feature}{17}{paragraph*.32} -\contentsline {paragraph}{5.1.5 (-u)Reporting the presence of \emph {at least one} overlapping feature}{18}{paragraph*.33} -\contentsline {paragraph}{5.1.6 (-c)Reporting the number of overlapping features}{18}{paragraph*.34} -\contentsline {paragraph}{5.1.6 (-c)Reporting the number of overlapping features}{18}{paragraph*.35} -\contentsline {paragraph}{5.1.7 (-v)Reporting the absence of any overlapping features}{19}{paragraph*.36} -\contentsline {paragraph}{5.1.8 (-f)Requiring a minimal overlap fraction}{19}{paragraph*.37} -\contentsline {paragraph}{5.1.9 (-r, combined with -f)Requiring reciprocal minimal overlap fraction}{19}{paragraph*.38} -\contentsline {paragraph}{5.1.10 (-s)Enforcing ``strandedness''}{20}{paragraph*.39} -\contentsline {paragraph}{5.1.11 (-abam)Default behavior when using BAM input}{20}{paragraph*.40} -\contentsline {paragraph}{5.1.12 (-bed)Output BED format when using BAM input}{20}{paragraph*.41} -\contentsline {paragraph}{5.1.13 (-split)Reporting overlaps with spliced alignments or blocked BED features}{21}{paragraph*.42} -\contentsline {subsubsection}{5.2 pairToBed}{22}{subsubsection*.43} -\contentsline {paragraph}{5.2.1 Usage and option summary}{22}{paragraph*.44} -\contentsline {paragraph}{5.2.2 Default behavior}{24}{paragraph*.45} -\contentsline {paragraph}{5.2.3 (-type)Optional overlap requirements}{24}{paragraph*.46} -\contentsline {paragraph}{5.2.4 (-f)Requiring a minimum overlap fraction}{27}{paragraph*.47} -\contentsline {paragraph}{5.2.5 (-s)Enforcing ``strandedness''}{27}{paragraph*.48} -\contentsline {paragraph}{5.2.6 (-abam)Default is to write BAM output when using BAM input}{28}{paragraph*.49} -\contentsline {paragraph}{5.2.7 (-bedpe)Output BEDPE format when using BAM input}{28}{paragraph*.50} -\contentsline {subsubsection}{5.3 pairToPair}{29}{subsubsection*.51} -\contentsline {paragraph}{5.3.1 Usage and option summary}{29}{paragraph*.52} -\contentsline {paragraph}{5.3.2 Default behavior}{29}{paragraph*.53} -\contentsline {paragraph}{5.3.3 (-type neither)Optional overlap requirements}{30}{paragraph*.54} -\contentsline {subsubsection}{5.4 bamToBed}{30}{subsubsection*.55} -\contentsline {paragraph}{5.4.1 Usage and option summary}{30}{paragraph*.56} -\contentsline {paragraph}{5.4.2 (-split)Creating BED12 features from ``spliced'' BAM entries.}{32}{paragraph*.57} -\contentsline {subsubsection}{5.5 windowBed}{32}{subsubsection*.58} -\contentsline {paragraph}{5.5.1 Usage and option summary}{32}{paragraph*.59} -\contentsline {paragraph}{5.5.2 Default behavior}{33}{paragraph*.60} -\contentsline {paragraph}{5.5.3 (-w)Defining a custom window size}{33}{paragraph*.61} -\contentsline {paragraph}{5.5.4 (-l and -r)Defining assymteric windows}{34}{paragraph*.62} -\contentsline {paragraph}{5.5.5 (-sw)Defining assymteric windows based on strand}{34}{paragraph*.63} -\contentsline {paragraph}{5.5.6 (-sm)Enforcing ``strandedness''}{35}{paragraph*.64} -\contentsline {paragraph}{5.5.7 (-u)Reporting the presence of at least one overlapping feature}{35}{paragraph*.65} -\contentsline {paragraph}{5.5.8 (-c)Reporting the number of overlapping features}{35}{paragraph*.66} -\contentsline {paragraph}{5.5.9 (-v)Reporting the absence of any overlapping features}{35}{paragraph*.67} -\contentsline {subsubsection}{5.6 closestBed}{35}{subsubsection*.68} -\contentsline {paragraph}{5.6.1 Usage and option summary}{35}{paragraph*.69} -\contentsline {paragraph}{5.6.2 Default behavior}{36}{paragraph*.70} -\contentsline {paragraph}{5.6.3 (-s)Enforcing ``strandedness''}{36}{paragraph*.71} -\contentsline {paragraph}{5.6.4 (-t)Controlling how ties for ``closest'' are broken}{37}{paragraph*.72} -\contentsline {paragraph}{5.6.5 (-d)Reporting the distance to the closest feature in base pairs}{37}{paragraph*.73} -\contentsline {subsubsection}{5.7 subtractBed}{37}{subsubsection*.74} -\contentsline {paragraph}{5.7.1 Usage and option summary}{38}{paragraph*.75} -\contentsline {paragraph}{5.7.2 Default behavior}{38}{paragraph*.76} -\contentsline {paragraph}{5.7.3 (-f)Requiring a minimal overlap fraction before subtracting}{38}{paragraph*.77} -\contentsline {paragraph}{5.7.4 (-s)Enforcing ``strandedness''}{39}{paragraph*.78} -\contentsline {subsubsection}{5.8 mergeBed}{39}{subsubsection*.79} -\contentsline {paragraph}{5.8.1 Usage and option summary}{39}{paragraph*.80} -\contentsline {paragraph}{5.8.2 Default behavior}{39}{paragraph*.81} -\contentsline {paragraph}{5.8.3 (-s)Enforcing ``strandedness''}{39}{paragraph*.82} -\contentsline {paragraph}{5.8.4 (-n)Reporting the number of features that were merged}{40}{paragraph*.83} -\contentsline {paragraph}{5.8.5 (-d)Controlling how close two features must be in order to merge}{40}{paragraph*.84} -\contentsline {paragraph}{5.8.6 (-nms)Reporting the names of the features that were merged}{40}{paragraph*.85} -\contentsline {subsubsection}{5.9 coverageBed}{41}{subsubsection*.86} -\contentsline {paragraph}{5.9.1 Usage and option summary}{41}{paragraph*.87} -\contentsline {paragraph}{5.9.2 Default behavior}{41}{paragraph*.88} -\contentsline {paragraph}{5.9.4 (-s)Calculating coverage by strand}{42}{paragraph*.89} -\contentsline {paragraph}{5.9.5 (-hist)Creating a histogram of coverage for each feature in the B file}{43}{paragraph*.90} -\contentsline {paragraph}{5.9.6 (-hist)Reporting the per-base of coverage for each feature in the B file}{43}{paragraph*.91} -\contentsline {paragraph}{5.9.7 (-split)Reporting coverage with spliced alignments or blocked BED features}{44}{paragraph*.92} -\contentsline {subsubsection}{5.10 genomeCoverageBed}{44}{subsubsection*.93} -\contentsline {paragraph}{5.10.1 Usage and option summary}{44}{paragraph*.94} -\contentsline {paragraph}{5.10.2 Default behavior}{45}{paragraph*.95} -\contentsline {paragraph}{5.10.3 (-max)Controlling the histogram's maximum depth}{46}{paragraph*.96} -\contentsline {paragraph}{5.10.4 (-d)Reporting ``per-base'' genome coverage}{46}{paragraph*.97} -\contentsline {paragraph}{5.1.13 (-split)Reporting coverage with spliced alignments or blocked BED features}{46}{paragraph*.98} -\contentsline {subsubsection}{5.11 fastaFromBed}{46}{subsubsection*.99} -\contentsline {paragraph}{5.11.1 Usage and option summary}{47}{paragraph*.100} -\contentsline {paragraph}{5.11.2 Default behavior}{47}{paragraph*.101} -\contentsline {paragraph}{5.11.3 Using the BED ``name'' column as a FASTA header.}{47}{paragraph*.102} -\contentsline {paragraph}{5.11.4 Creating a tab-delimited output file in lieu of FASTA output.}{48}{paragraph*.103} -\contentsline {paragraph}{5.11.5 (-s)Forcing the extracted sequence to reflect the requested strand}{48}{paragraph*.104} -\contentsline {subsubsection}{5.12 maskFastaFromBed}{48}{subsubsection*.105} -\contentsline {paragraph}{5.12.1 Usage and option summary}{48}{paragraph*.106} -\contentsline {paragraph}{5.12.2 Default behavior}{49}{paragraph*.107} -\contentsline {paragraph}{5.12.3 Soft-masking the FASTA file.}{49}{paragraph*.108} -\contentsline {subsubsection}{5.13 shuffleBed}{49}{subsubsection*.109} -\contentsline {paragraph}{5.13.1 Usage and option summary}{49}{paragraph*.110} -\contentsline {paragraph}{5.13.2 Default behavior}{50}{paragraph*.111} -\contentsline {paragraph}{5.13.3 (-chrom)Requiring that features be shuffled on the same chromosome}{50}{paragraph*.112} -\contentsline {paragraph}{5.13.4 Excluding certain genome regions from shuffleBed}{51}{paragraph*.113} -\contentsline {paragraph}{5.13.5 Defining a ``seed'' for the random replacement.}{51}{paragraph*.114} -\contentsline {subsubsection}{5.14 slopBed}{52}{subsubsection*.115} -\contentsline {paragraph}{5.14.1 Usage and option summary}{52}{paragraph*.116} -\contentsline {paragraph}{5.14.2 Default behavior}{52}{paragraph*.117} -\contentsline {paragraph}{5.14.3 Resizing features according to strand}{53}{paragraph*.118} -\contentsline {subsubsection}{5.15 sortBed}{53}{subsubsection*.119} -\contentsline {paragraph}{5.15.1 Usage and option summary}{53}{paragraph*.120} -\contentsline {paragraph}{5.15.2 Default behavior}{54}{paragraph*.121} -\contentsline {paragraph}{5.15.3 Optional sorting behavior}{54}{paragraph*.122} -\contentsline {subsubsection}{5.16 linksBed}{54}{subsubsection*.123} -\contentsline {paragraph}{5.16.1 Usage and option summary}{54}{paragraph*.124} -\contentsline {paragraph}{5.16.2 Default behavior}{55}{paragraph*.125} -\contentsline {paragraph}{5.16.3 Creating HTML links to a local UCSC Browser installation}{55}{paragraph*.126} -\contentsline {subsubsection}{5.17 complementBed}{55}{subsubsection*.127} -\contentsline {paragraph}{5.17.1 Usage and option summary}{56}{paragraph*.128} -\contentsline {paragraph}{5.17.2 Default behavior}{56}{paragraph*.129} -\contentsline {subsubsection}{5.18 bedToBam}{56}{subsubsection*.130} -\contentsline {paragraph}{5.18.1 Usage and option summary}{56}{paragraph*.131} -\contentsline {paragraph}{5.18.2 Default behavior}{57}{paragraph*.132} -\contentsline {paragraph}{5.18.3 Creating ``spliced'' BAM entries from ``blocked'' BED features}{57}{paragraph*.133} -\contentsline {subsubsection}{5.19 overlap}{57}{subsubsection*.134} -\contentsline {paragraph}{5.19.1 Usage and option summary}{57}{paragraph*.135} -\contentsline {paragraph}{5.19.2 Default behavior}{58}{paragraph*.136} -\contentsline {subsubsection}{5.20 bedToIgv}{58}{subsubsection*.137} -\contentsline {paragraph}{5.20.1 Usage and option summary}{58}{paragraph*.138} -\contentsline {paragraph}{5.20.2 Default behavior}{59}{paragraph*.139} -\contentsline {paragraph}{5.20.3 Using a bedToIgv batch script within IGV.}{59}{paragraph*.140} -\contentsline {subsubsection}{5.21 bed12ToBed6}{59}{subsubsection*.141} -\contentsline {paragraph}{5.21.1 Usage and option summary}{59}{paragraph*.142} -\contentsline {paragraph}{5.21.2 Default behavior}{59}{paragraph*.143} -\contentsline {subsubsection}{5.22 groupBy}{60}{subsubsection*.144} -\contentsline {paragraph}{5.22.1 Usage and option summary}{60}{paragraph*.145} -\contentsline {paragraph}{5.22.2 Default behavior.}{61}{paragraph*.146} -\contentsline {paragraph}{5.22.3 Computing the min and max.}{62}{paragraph*.147} -\contentsline {paragraph}{5.22.4 Computing the mean and median.}{62}{paragraph*.148} -\contentsline {paragraph}{5.22.5 Computing the mode and ``antimode''.}{63}{paragraph*.149} -\contentsline {paragraph}{5.22.6 Computing the count of lines for a given group.}{63}{paragraph*.150} -\contentsline {paragraph}{5.22.7 Collapsing: listing all of the values in the opCol for a given group.}{63}{paragraph*.151} -\contentsline {paragraph}{5.22.8 Computing frequencies: freqasc and freqdesc.}{63}{paragraph*.152} -\contentsline {subsubsection}{5.23 unionBedGraphs}{64}{subsubsection*.153} -\contentsline {paragraph}{5.23.1 Usage and option summary}{64}{paragraph*.154} -\contentsline {paragraph}{5.23.2 Default behavior}{64}{paragraph*.155} -\contentsline {paragraph}{5.23.3 Add a header line to the output}{65}{paragraph*.156} -\contentsline {paragraph}{5.23.4 Add a header line with custom file names to the output}{65}{paragraph*.157} -\contentsline {paragraph}{5.23.5 Include regions that have zero coverage in all BEDGRAPH files.}{65}{paragraph*.158} -\contentsline {paragraph}{5.23.6 Use a custom value for missing values.}{65}{paragraph*.159} -\contentsline {paragraph}{5.23.7 Use BEDGRAPH files with non-numeric values.}{66}{paragraph*.160} -\contentsline {subsubsection}{5.24 annotateBed}{66}{subsubsection*.161} -\contentsline {paragraph}{5.24.1 Usage and option summary}{66}{paragraph*.162} -\contentsline {paragraph}{5.24.2 Default behavior - annotate one file with coverage from others.}{67}{paragraph*.163} -\contentsline {paragraph}{5.24.3 Report the count of hits from the annotation files}{67}{paragraph*.164} -\contentsline {paragraph}{5.24.4 Report both the count of hits and the fraction covered from the annotation files}{67}{paragraph*.165} -\contentsline {paragraph}{5.24.5 Restrict the reporting to overlaps on the same strand.}{68}{paragraph*.166} -\contentsline {section}{\numberline {2.6}Example usage}{68}{section.2.6} -\contentsline {subsection}{\numberline {2.6.1}6.1 intersectBed}{68}{subsection.2.6.1} -\contentsline {subsection}{\numberline {2.6.2}6.2 pairToBed}{69}{subsection.2.6.2} -\contentsline {subsection}{\numberline {2.6.3}6.3 pairToPair}{69}{subsection.2.6.3} -\contentsline {subsection}{\numberline {2.6.4}6.4 bamToBed}{69}{subsection.2.6.4} -\contentsline {subsection}{\numberline {2.6.5}6.5 windowBed}{70}{subsection.2.6.5} -\contentsline {subsection}{\numberline {2.6.6}6.6 closestBed}{70}{subsection.2.6.6} -\contentsline {subsection}{\numberline {2.6.7}6.7 subtractBed}{70}{subsection.2.6.7} -\contentsline {subsection}{\numberline {2.6.8}6.8 mergeBed}{70}{subsection.2.6.8} -\contentsline {subsection}{\numberline {2.6.9}6.9 coverageBed}{71}{subsection.2.6.9} -\contentsline {subsection}{\numberline {2.6.10}6.10 complementBed}{71}{subsection.2.6.10} -\contentsline {subsection}{\numberline {2.6.11}6.11 shuffleBed}{71}{subsection.2.6.11} -\contentsline {section}{\numberline {2.7}Advanced usage}{71}{section.2.7} -\contentsline {subsection}{\numberline {2.7.1}7.1 Mask all regions in a genome except for targeted capture regions.}{71}{subsection.2.7.1} -\contentsline {subsection}{\numberline {2.7.2}7.2 Screening for novel SNPs.}{72}{subsection.2.7.2} -\contentsline {subsection}{\numberline {2.7.3}7.4 Computing the coverage of BAM alignments on exons.}{72}{subsection.2.7.3} -\contentsline {subsection}{\numberline {2.7.4}7.5 Computing coverage separately for each strand.}{72}{subsection.2.7.4} -\contentsline {subsection}{\numberline {2.7.5}7.6 Find structural variant calls that are private to one sample.}{72}{subsection.2.7.5} -\contentsline {subsection}{\numberline {2.7.6}7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome.}{73}{subsection.2.7.6} -\contentsline {chapter}{\numberline {3}Mailing list}{75}{chapter.3} diff --git a/docs/_build/latex/fncychap.sty b/docs/_build/latex/fncychap.sty deleted file mode 100644 index 9a56c04e..00000000 --- a/docs/_build/latex/fncychap.sty +++ /dev/null @@ -1,683 +0,0 @@ -%%% Copyright Ulf A. Lindgren -%%% -%%% Note Premission is granted to modify this file under -%%% the condition that it is saved using another -%%% file and package name. -%%% -%%% Revision 1.1 (1997) -%%% -%%% Jan. 8th Modified package name base date option -%%% Jan. 22th Modified FmN and FmTi for error in book.cls -%%% \MakeUppercase{#}->{\MakeUppercase#} -%%% Apr. 6th Modified Lenny option to prevent undesired -%%% skip of line. -%%% Nov. 8th Fixed \@chapapp for AMS -%%% -%%% Revision 1.2 (1998) -%%% -%%% Feb. 11th Fixed appendix problem related to Bjarne -%%% Aug. 11th Fixed problem related to 11pt and 12pt -%%% suggested by Tomas Lundberg. THANKS! -%%% -%%% Revision 1.3 (2004) -%%% Sep. 20th problem with frontmatter, mainmatter and -%%% backmatter, pointed out by Lapo Mori -%%% -%%% Revision 1.31 (2004) -%%% Sep. 21th problem with the Rejne definition streched text -%%% caused ugly gaps in the vrule aligned with the title -%%% text. Kindly pointed out to me by Hendri Adriaens -%%% -%%% Revision 1.32 (2005) -%%% Jun. 23th compatibility problem with the KOMA class 'scrbook.cls' -%%% a remedy is a redefinition of '\@schapter' in -%%% line with that used in KOMA. The problem was pointed -%%% out to me by Mikkel Holm Olsen -%%% -%%% Revision 1.33 (2005) -%%% Aug. 9th misspelled ``TWELV'' corrected, the error was pointed -%%% out to me by George Pearson -%%% -%%% Revision 1.34 (2007) -%%% Added an alternative to Lenny provided by Peter -%%% Osborne (2005-11-28) -%%% Corrected front, main and back matter, based on input -%%% from Bas van Gils (2006-04-24) -%%% Jul. 30th Added Bjornstrup option provided by Jean-Marc -%%% Francois (2007-01-05). -%%% Reverted to \MakeUppercase{#} see rev 1.1, solved -%%% problem with MakeUppercase and MakeLowercase pointed -%%% out by Marco Feuerstein (2007-06-06) - - -%%% Last modified Jul. 2007 - -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{fncychap} - [2007/07/30 v1.34 - LaTeX package (Revised chapters)] - -%%%% For conditional inclusion of color -\newif\ifusecolor -\usecolorfalse - - - -%%%% DEFINITION OF Chapapp variables -\newcommand{\CNV}{\huge\bfseries} -\newcommand{\ChNameVar}[1]{\renewcommand{\CNV}{#1}} - - -%%%% DEFINITION OF TheChapter variables -\newcommand{\CNoV}{\huge\bfseries} -\newcommand{\ChNumVar}[1]{\renewcommand{\CNoV}{#1}} - -\newif\ifUCN -\UCNfalse -\newif\ifLCN -\LCNfalse -\def\ChNameLowerCase{\LCNtrue\UCNfalse} -\def\ChNameUpperCase{\UCNtrue\LCNfalse} -\def\ChNameAsIs{\UCNfalse\LCNfalse} - -%%%%% Fix for AMSBook 971008 - -\@ifundefined{@chapapp}{\let\@chapapp\chaptername}{} - - -%%%%% Fix for Bjarne and appendix 980211 - -\newif\ifinapp -\inappfalse -\renewcommand\appendix{\par - \setcounter{chapter}{0}% - \setcounter{section}{0}% - \inapptrue% - \renewcommand\@chapapp{\appendixname}% - \renewcommand\thechapter{\@Alph\c@chapter}} - -%%%%% Fix for frontmatter, mainmatter, and backmatter 040920 - -\@ifundefined{@mainmatter}{\newif\if@mainmatter \@mainmattertrue}{} - -%%%%% - - - -\newcommand{\FmN}[1]{% -\ifUCN - {\MakeUppercase{#1}}\LCNfalse -\else - \ifLCN - {\MakeLowercase{#1}}\UCNfalse - \else #1 - \fi -\fi} - - -%%%% DEFINITION OF Title variables -\newcommand{\CTV}{\Huge\bfseries} -\newcommand{\ChTitleVar}[1]{\renewcommand{\CTV}{#1}} - -%%%% DEFINITION OF the basic rule width -\newlength{\RW} -\setlength{\RW}{1pt} -\newcommand{\ChRuleWidth}[1]{\setlength{\RW}{#1}} - -\newif\ifUCT -\UCTfalse -\newif\ifLCT -\LCTfalse -\def\ChTitleLowerCase{\LCTtrue\UCTfalse} -\def\ChTitleUpperCase{\UCTtrue\LCTfalse} -\def\ChTitleAsIs{\UCTfalse\LCTfalse} -\newcommand{\FmTi}[1]{% -\ifUCT - {\MakeUppercase{#1}}\LCTfalse -\else - \ifLCT - {\MakeLowercase{#1}}\UCTfalse - \else {#1} - \fi -\fi} - - - -\newlength{\mylen} -\newlength{\myhi} -\newlength{\px} -\newlength{\py} -\newlength{\pyy} -\newlength{\pxx} - - -\def\mghrulefill#1{\leavevmode\leaders\hrule\@height #1\hfill\kern\z@} - -\newcommand{\DOCH}{% - \CNV\FmN{\@chapapp}\space \CNoV\thechapter - \par\nobreak - \vskip 20\p@ - } -\newcommand{\DOTI}[1]{% - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@ - } -\newcommand{\DOTIS}[1]{% - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@ - } - -%%%%%% SONNY DEF - -\DeclareOption{Sonny}{% - \ChNameVar{\Large\sf} - \ChNumVar{\Huge} - \ChTitleVar{\Large\sf} - \ChRuleWidth{0.5pt} - \ChNameUpperCase - \renewcommand{\DOCH}{% - \raggedleft - \CNV\FmN{\@chapapp}\space \CNoV\thechapter - \par\nobreak - \vskip 40\p@} - \renewcommand{\DOTI}[1]{% - \CTV\raggedleft\mghrulefill{\RW}\par\nobreak - \vskip 5\p@ - \CTV\FmTi{#1}\par\nobreak - \mghrulefill{\RW}\par\nobreak - \vskip 40\p@} - \renewcommand{\DOTIS}[1]{% - \CTV\raggedleft\mghrulefill{\RW}\par\nobreak - \vskip 5\p@ - \CTV\FmTi{#1}\par\nobreak - \mghrulefill{\RW}\par\nobreak - \vskip 40\p@} -} - -%%%%%% LENNY DEF - -\DeclareOption{Lenny}{% - - \ChNameVar{\fontsize{14}{16}\usefont{OT1}{phv}{m}{n}\selectfont} - \ChNumVar{\fontsize{60}{62}\usefont{OT1}{ptm}{m}{n}\selectfont} - \ChTitleVar{\Huge\bfseries\rm} - \ChRuleWidth{1pt} - \renewcommand{\DOCH}{% - \settowidth{\px}{\CNV\FmN{\@chapapp}} - \addtolength{\px}{2pt} - \settoheight{\py}{\CNV\FmN{\@chapapp}} - \addtolength{\py}{1pt} - - \settowidth{\mylen}{\CNV\FmN{\@chapapp}\space\CNoV\thechapter} - \addtolength{\mylen}{1pt} - \settowidth{\pxx}{\CNoV\thechapter} - \addtolength{\pxx}{-1pt} - - \settoheight{\pyy}{\CNoV\thechapter} - \addtolength{\pyy}{-2pt} - \setlength{\myhi}{\pyy} - \addtolength{\myhi}{-1\py} - \par - \parbox[b]{\textwidth}{% - \rule[\py]{\RW}{\myhi}% - \hskip -\RW% - \rule[\pyy]{\px}{\RW}% - \hskip -\px% - \raggedright% - \CNV\FmN{\@chapapp}\space\CNoV\thechapter% - \hskip1pt% - \mghrulefill{\RW}% - \rule{\RW}{\pyy}\par\nobreak% - \vskip -\baselineskip% - \vskip -\pyy% - \hskip \mylen% - \mghrulefill{\RW}\par\nobreak% - \vskip \pyy}% - \vskip 20\p@} - - - \renewcommand{\DOTI}[1]{% - \raggedright - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@} - - \renewcommand{\DOTIS}[1]{% - \raggedright - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@} - } - -%%%%%% Peter Osbornes' version of LENNY DEF - -\DeclareOption{PetersLenny}{% - -% five new lengths -\newlength{\bl} % bottom left : orig \space -\setlength{\bl}{6pt} -\newcommand{\BL}[1]{\setlength{\bl}{#1}} -\newlength{\br} % bottom right : orig 1pt -\setlength{\br}{1pt} -\newcommand{\BR}[1]{\setlength{\br}{#1}} -\newlength{\tl} % top left : orig 2pt -\setlength{\tl}{2pt} -\newcommand{\TL}[1]{\setlength{\tl}{#1}} -\newlength{\trr} % top right :orig 1pt -\setlength{\trr}{1pt} -\newcommand{\TR}[1]{\setlength{\trr}{#1}} -\newlength{\blrule} % top right :orig 1pt -\setlength{\trr}{0pt} -\newcommand{\BLrule}[1]{\setlength{\blrule}{#1}} - - - \ChNameVar{\fontsize{14}{16}\usefont{OT1}{phv}{m}{n}\selectfont} - \ChNumVar{\fontsize{60}{62}\usefont{OT1}{ptm}{m}{n}\selectfont} - \ChTitleVar{\Huge\bfseries\rm} - \ChRuleWidth{1pt} -\renewcommand{\DOCH}{% - - -%%%%%%% tweaks for 1--9 and A--Z -\ifcase\c@chapter\relax% -\or\BL{-3pt}\TL{-4pt}\BR{0pt}\TR{-6pt}%1 -\or\BL{0pt}\TL{-4pt}\BR{2pt}\TR{-4pt}%2 -\or\BL{0pt}\TL{-4pt}\BR{2pt}\TR{-4pt}%3 -\or\BL{0pt}\TL{5pt}\BR{2pt}\TR{-4pt}%4 -\or\BL{0pt}\TL{3pt}\BR{2pt}\TR{-4pt}%5 -\or\BL{-1pt}\TL{0pt}\BR{2pt}\TR{-2pt}%6 -\or\BL{0pt}\TL{-3pt}\BR{2pt}\TR{-2pt}%7 -\or\BL{0pt}\TL{-3pt}\BR{2pt}\TR{-2pt}%8 -\or\BL{0pt}\TL{-3pt}\BR{-4pt}\TR{-2pt}%9 -\or\BL{-3pt}\TL{-3pt}\BR{2pt}\TR{-7pt}%10 -\or\BL{-6pt}\TL{-6pt}\BR{0pt}\TR{-9pt}%11 -\or\BL{-6pt}\TL{-6pt}\BR{2pt}\TR{-7pt}%12 -\or\BL{-5pt}\TL{-5pt}\BR{0pt}\TR{-9pt}%13 -\or\BL{-6pt}\TL{-6pt}\BR{0pt}\TR{-9pt}%14 -\or\BL{-3pt}\TL{-3pt}\BR{3pt}\TR{-6pt}%15 -\or\BL{-3pt}\TL{-3pt}\BR{3pt}\TR{-6pt}%16 -\or\BL{-5pt}\TL{-3pt}\BR{-8pt}\TR{-6pt}%17 -\or\BL{-5pt}\TL{-5pt}\BR{0pt}\TR{-9pt}%18 -\or\BL{-3pt}\TL{-3pt}\BR{-6pt}\TR{-9pt}%19 -\or\BL{0pt}\TL{0pt}\BR{0pt}\TR{-5pt}%20 -\fi - -\ifinapp\ifcase\c@chapter\relax% -\or\BL{0pt}\TL{14pt}\BR{5pt}\TR{-19pt}%A -\or\BL{0pt}\TL{-5pt}\BR{-3pt}\TR{-8pt}%B -\or\BL{-3pt}\TL{-2pt}\BR{1pt}\TR{-6pt}\BLrule{0pt}%C -\or\BL{0pt}\TL{-5pt}\BR{-3pt}\TR{-8pt}\BLrule{0pt}%D -\or\BL{0pt}\TL{-5pt}\BR{2pt}\TR{-3pt}%E -\or\BL{0pt}\TL{-5pt}\BR{-10pt}\TR{-1pt}%F -\or\BL{-3pt}\TL{0pt}\BR{0pt}\TR{-7pt}%G -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}%H -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}%I -\or\BL{2pt}\TL{0pt}\BR{-3pt}\TR{1pt}%J -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}%K -\or\BL{0pt}\TL{-5pt}\BR{2pt}\TR{-19pt}%L -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}%M -\or\BL{0pt}\TL{-5pt}\BR{-2pt}\TR{-1pt}%N -\or\BL{-3pt}\TL{-2pt}\BR{-3pt}\TR{-11pt}%O -\or\BL{0pt}\TL{-5pt}\BR{-9pt}\TR{-3pt}%P -\or\BL{-3pt}\TL{-2pt}\BR{-3pt}\TR{-11pt}%Q -\or\BL{0pt}\TL{-5pt}\BR{4pt}\TR{-8pt}%R -\or\BL{-2pt}\TL{-2pt}\BR{-2pt}\TR{-7pt}%S -\or\BL{-3pt}\TL{0pt}\BR{-5pt}\TR{4pt}\BLrule{8pt}%T -\or\BL{-7pt}\TL{-11pt}\BR{-5pt}\TR{-7pt}\BLrule{0pt}%U -\or\BL{-14pt}\TL{-5pt}\BR{-14pt}\TR{-1pt}\BLrule{14pt}%V -\or\BL{-10pt}\TL{-9pt}\BR{-13pt}\TR{-3pt}\BLrule{7pt}%W -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}\BLrule{0pt}%X -\or\BL{-6pt}\TL{-4pt}\BR{-7pt}\TR{1pt}\BLrule{7pt}%Y -\or\BL{0pt}\TL{-5pt}\BR{3pt}\TR{-1pt}\BLrule{0pt}%Z -\fi\fi -%%%%%%% - \settowidth{\px}{\CNV\FmN{\@chapapp}} - \addtolength{\px}{\tl} %MOD change 2pt to \tl - \settoheight{\py}{\CNV\FmN{\@chapapp}} - \addtolength{\py}{1pt} - - \settowidth{\mylen}{\CNV\FmN{\@chapapp}\space\CNoV\thechapter} - \addtolength{\mylen}{\trr}% MOD change 1pt to \tr - \settowidth{\pxx}{\CNoV\thechapter} - \addtolength{\pxx}{-1pt} - - \settoheight{\pyy}{\CNoV\thechapter} - \addtolength{\pyy}{-2pt} - \setlength{\myhi}{\pyy} - \addtolength{\myhi}{-1\py} - \par - \parbox[b]{\textwidth}{% - \rule[\py]{\RW}{\myhi}% - \hskip -\RW% - \rule[\pyy]{\px}{\RW}% - \hskip -\px% - \raggedright% - \CNV\FmN{\@chapapp}\rule{\blrule}{\RW}\hskip\bl\CNoV\thechapter%MOD -% \CNV\FmN{\@chapapp}\space\CNoV\thechapter %ORIGINAL - \hskip\br% %MOD 1pt to \br - \mghrulefill{\RW}% - \rule{\RW}{\pyy}\par\nobreak% - \vskip -\baselineskip% - \vskip -\pyy% - \hskip \mylen% - \mghrulefill{\RW}\par\nobreak% - \vskip \pyy}% - \vskip 20\p@} - - - \renewcommand{\DOTI}[1]{% - \raggedright - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@} - - \renewcommand{\DOTIS}[1]{% - \raggedright - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@} - } - - -% - - -%%%%%% BJORNSTRUP DEF - -\DeclareOption{Bjornstrup}{% - \usecolortrue - % pzc (Zapf Chancelery) is nice. ppl (Palatino) is cool too. - \ChNumVar{\fontsize{76}{80}\usefont{OT1}{pzc}{m}{n}\selectfont} - \ChTitleVar{\raggedleft\Large\sffamily\bfseries} - - \setlength{\myhi}{10pt} % Space between grey box border and text - \setlength{\mylen}{\textwidth} - \addtolength{\mylen}{-2\myhi} - \renewcommand{\DOCH}{% - \settowidth{\py}{\CNoV\thechapter} - \addtolength{\py}{-10pt} % Amount of space by which the -% % number is shifted right - \fboxsep=0pt% - \colorbox[gray]{.85}{\rule{0pt}{40pt}\parbox[b]{\textwidth}{\hfill}}% - \kern-\py\raise20pt% - \hbox{\color[gray]{.5}\CNoV\thechapter}\\% - } - - \renewcommand{\DOTI}[1]{% - \nointerlineskip\raggedright% - \fboxsep=\myhi% - \vskip-1ex% - \colorbox[gray]{.85}{\parbox[t]{\mylen}{\CTV\FmTi{#1}}}\par\nobreak% - \vskip 40\p@% - } - - \renewcommand{\DOTIS}[1]{% - \fboxsep=0pt - \colorbox[gray]{.85}{\rule{0pt}{40pt}\parbox[b]{\textwidth}{\hfill}}\\% - \nointerlineskip\raggedright% - \fboxsep=\myhi% - \colorbox[gray]{.85}{\parbox[t]{\mylen}{\CTV\FmTi{#1}}}\par\nobreak% - \vskip 40\p@% - } -} - - -%%%%%%% GLENN DEF - - -\DeclareOption{Glenn}{% - \ChNameVar{\bfseries\Large\sf} - \ChNumVar{\Huge} - \ChTitleVar{\bfseries\Large\rm} - \ChRuleWidth{1pt} - \ChNameUpperCase - \ChTitleUpperCase - \renewcommand{\DOCH}{% - \settoheight{\myhi}{\CTV\FmTi{Test}} - \setlength{\py}{\baselineskip} - \addtolength{\py}{\RW} - \addtolength{\py}{\myhi} - \setlength{\pyy}{\py} - \addtolength{\pyy}{-1\RW} - - \raggedright - \CNV\FmN{\@chapapp}\space\CNoV\thechapter - \hskip 3pt\mghrulefill{\RW}\rule[-1\pyy]{2\RW}{\py}\par\nobreak} - - \renewcommand{\DOTI}[1]{% - \addtolength{\pyy}{-4pt} - \settoheight{\myhi}{\CTV\FmTi{#1}} - \addtolength{\myhi}{\py} - \addtolength{\myhi}{-1\RW} - \vskip -1\pyy - \rule{2\RW}{\myhi}\mghrulefill{\RW}\hskip 2pt - \raggedleft\CTV\FmTi{#1}\par\nobreak - \vskip 80\p@} - -\newlength{\backskip} - \renewcommand{\DOTIS}[1]{% -% \setlength{\py}{10pt} -% \setlength{\pyy}{\py} -% \addtolength{\pyy}{\RW} -% \setlength{\myhi}{\baselineskip} -% \addtolength{\myhi}{\pyy} -% \mghrulefill{\RW}\rule[-1\py]{2\RW}{\pyy}\par\nobreak -% \addtolength{}{} -%\vskip -1\baselineskip -% \rule{2\RW}{\myhi}\mghrulefill{\RW}\hskip 2pt -% \raggedleft\CTV\FmTi{#1}\par\nobreak -% \vskip 60\p@} -%% Fix suggested by Tomas Lundberg - \setlength{\py}{25pt} % eller vad man vill - \setlength{\pyy}{\py} - \setlength{\backskip}{\py} - \addtolength{\backskip}{2pt} - \addtolength{\pyy}{\RW} - \setlength{\myhi}{\baselineskip} - \addtolength{\myhi}{\pyy} - \mghrulefill{\RW}\rule[-1\py]{2\RW}{\pyy}\par\nobreak - \vskip -1\backskip - \rule{2\RW}{\myhi}\mghrulefill{\RW}\hskip 3pt % - \raggedleft\CTV\FmTi{#1}\par\nobreak - \vskip 40\p@} - } - -%%%%%%% CONNY DEF - -\DeclareOption{Conny}{% - \ChNameUpperCase - \ChTitleUpperCase - \ChNameVar{\centering\Huge\rm\bfseries} - \ChNumVar{\Huge} - \ChTitleVar{\centering\Huge\rm} - \ChRuleWidth{2pt} - - \renewcommand{\DOCH}{% - \mghrulefill{3\RW}\par\nobreak - \vskip -0.5\baselineskip - \mghrulefill{\RW}\par\nobreak - \CNV\FmN{\@chapapp}\space \CNoV\thechapter - \par\nobreak - \vskip -0.5\baselineskip - } - \renewcommand{\DOTI}[1]{% - \mghrulefill{\RW}\par\nobreak - \CTV\FmTi{#1}\par\nobreak - \vskip 60\p@ - } - \renewcommand{\DOTIS}[1]{% - \mghrulefill{\RW}\par\nobreak - \CTV\FmTi{#1}\par\nobreak - \vskip 60\p@ - } - } - -%%%%%%% REJNE DEF - -\DeclareOption{Rejne}{% - - \ChNameUpperCase - \ChTitleUpperCase - \ChNameVar{\centering\Large\rm} - \ChNumVar{\Huge} - \ChTitleVar{\centering\Huge\rm} - \ChRuleWidth{1pt} - \renewcommand{\DOCH}{% - \settoheight{\py}{\CNoV\thechapter} - \parskip=0pt plus 1pt % Set parskip to default, just in case v1.31 - \addtolength{\py}{-1pt} - \CNV\FmN{\@chapapp}\par\nobreak - \vskip 20\p@ - \setlength{\myhi}{2\baselineskip} - \setlength{\px}{\myhi} - \addtolength{\px}{-1\RW} - \rule[-1\px]{\RW}{\myhi}\mghrulefill{\RW}\hskip - 10pt\raisebox{-0.5\py}{\CNoV\thechapter}\hskip 10pt\mghrulefill{\RW}\rule[-1\px]{\RW}{\myhi}\par\nobreak - \vskip -3\p@% Added -2pt vskip to correct for streched text v1.31 - } - \renewcommand{\DOTI}[1]{% - \setlength{\mylen}{\textwidth} - \parskip=0pt plus 1pt % Set parskip to default, just in case v1.31 - \addtolength{\mylen}{-2\RW} - {\vrule width\RW}\parbox{\mylen}{\CTV\FmTi{#1}}{\vrule width\RW}\par\nobreak% - \vskip -3pt\rule{\RW}{2\baselineskip}\mghrulefill{\RW}\rule{\RW}{2\baselineskip}% - \vskip 60\p@% Added -2pt in vskip to correct for streched text v1.31 - } - \renewcommand{\DOTIS}[1]{% - \setlength{\py}{\fboxrule} - \setlength{\fboxrule}{\RW} - \setlength{\mylen}{\textwidth} - \addtolength{\mylen}{-2\RW} - \fbox{\parbox{\mylen}{\vskip 2\baselineskip\CTV\FmTi{#1}\par\nobreak\vskip \baselineskip}} - \setlength{\fboxrule}{\py} - \vskip 60\p@ - } - } - - -%%%%%%% BJARNE DEF - -\DeclareOption{Bjarne}{% - \ChNameUpperCase - \ChTitleUpperCase - \ChNameVar{\raggedleft\normalsize\rm} - \ChNumVar{\raggedleft \bfseries\Large} - \ChTitleVar{\raggedleft \Large\rm} - \ChRuleWidth{1pt} - - -%% Note thechapter -> c@chapter fix appendix bug -%% Fixed misspelled 12 - - \newcounter{AlphaCnt} - \newcounter{AlphaDecCnt} - \newcommand{\AlphaNo}{% - \ifcase\number\theAlphaCnt - \ifnum\c@chapter=0 - ZERO\else{}\fi - \or ONE\or TWO\or THREE\or FOUR\or FIVE - \or SIX\or SEVEN\or EIGHT\or NINE\or TEN - \or ELEVEN\or TWELVE\or THIRTEEN\or FOURTEEN\or FIFTEEN - \or SIXTEEN\or SEVENTEEN\or EIGHTEEN\or NINETEEN\fi -} - - \newcommand{\AlphaDecNo}{% - \setcounter{AlphaDecCnt}{0} - \@whilenum\number\theAlphaCnt>0\do - {\addtocounter{AlphaCnt}{-10} - \addtocounter{AlphaDecCnt}{1}} - \ifnum\number\theAlphaCnt=0 - \else - \addtocounter{AlphaDecCnt}{-1} - \addtocounter{AlphaCnt}{10} - \fi - - - \ifcase\number\theAlphaDecCnt\or TEN\or TWENTY\or THIRTY\or - FORTY\or FIFTY\or SIXTY\or SEVENTY\or EIGHTY\or NINETY\fi - } - \newcommand{\TheAlphaChapter}{% - - \ifinapp - \thechapter - \else - \setcounter{AlphaCnt}{\c@chapter} - \ifnum\c@chapter<20 - \AlphaNo - \else - \AlphaDecNo\AlphaNo - \fi - \fi - } - \renewcommand{\DOCH}{% - \mghrulefill{\RW}\par\nobreak - \CNV\FmN{\@chapapp}\par\nobreak - \CNoV\TheAlphaChapter\par\nobreak - \vskip -1\baselineskip\vskip 5pt\mghrulefill{\RW}\par\nobreak - \vskip 20\p@ - } - \renewcommand{\DOTI}[1]{% - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@ - } - \renewcommand{\DOTIS}[1]{% - \CTV\FmTi{#1}\par\nobreak - \vskip 40\p@ - } -} - -\DeclareOption*{% - \PackageWarning{fancychapter}{unknown style option} - } - -\ProcessOptions* \relax - -\ifusecolor - \RequirePackage{color} -\fi -\def\@makechapterhead#1{% - \vspace*{50\p@}% - {\parindent \z@ \raggedright \normalfont - \ifnum \c@secnumdepth >\m@ne - \if@mainmatter%%%%% Fix for frontmatter, mainmatter, and backmatter 040920 - \DOCH - \fi - \fi - \interlinepenalty\@M - \if@mainmatter%%%%% Fix for frontmatter, mainmatter, and backmatter 060424 - \DOTI{#1}% - \else% - \DOTIS{#1}% - \fi - }} - - -%%% Begin: To avoid problem with scrbook.cls (fncychap version 1.32) - -%%OUT: -%\def\@schapter#1{\if@twocolumn -% \@topnewpage[\@makeschapterhead{#1}]% -% \else -% \@makeschapterhead{#1}% -% \@afterheading -% \fi} - -%%IN: -\def\@schapter#1{% -\if@twocolumn% - \@makeschapterhead{#1}% -\else% - \@makeschapterhead{#1}% - \@afterheading% -\fi} - -%%% End: To avoid problem with scrbook.cls (fncychap version 1.32) - -\def\@makeschapterhead#1{% - \vspace*{50\p@}% - {\parindent \z@ \raggedright - \normalfont - \interlinepenalty\@M - \DOTIS{#1} - \vskip 40\p@ - }} - -\endinput - - diff --git a/docs/_build/latex/python.ist b/docs/_build/latex/python.ist deleted file mode 100644 index 9ffa0f95..00000000 --- a/docs/_build/latex/python.ist +++ /dev/null @@ -1,11 +0,0 @@ -line_max 100 -headings_flag 1 -heading_prefix " \\bigletter " - -preamble "\\begin{theindex} -\\def\\bigletter#1{{\\Large\\sffamily#1}\\nopagebreak\\vspace{1mm}} - -" - -symhead_positive "{Symbols}" -numhead_positive "{Numbers}" diff --git a/docs/_build/latex/sphinx.sty b/docs/_build/latex/sphinx.sty deleted file mode 100644 index 84c1ca1e..00000000 --- a/docs/_build/latex/sphinx.sty +++ /dev/null @@ -1,481 +0,0 @@ -% -% sphinx.sty -% -% Adapted from the old python.sty, mostly written by Fred Drake, -% by Georg Brandl. -% - -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{sphinx}[2010/01/15 LaTeX package (Sphinx markup)] - -\RequirePackage{textcomp} -\RequirePackage{fancyhdr} -\RequirePackage{fancybox} -\RequirePackage{titlesec} -\RequirePackage{tabulary} -\RequirePackage{amsmath} % for \text -\RequirePackage{makeidx} -\RequirePackage{framed} -\RequirePackage{ifthen} -\RequirePackage{color} -% For highlighted code. -\RequirePackage{fancyvrb} -% For table captions. -\RequirePackage{threeparttable} -% Handle footnotes in tables. -\RequirePackage{footnote} -\makesavenoteenv{tabulary} -% For floating figures in the text. -\RequirePackage{wrapfig} -% Separate paragraphs by space by default. -\RequirePackage{parskip} - -% Redefine these colors to your liking in the preamble. -\definecolor{TitleColor}{rgb}{0.126,0.263,0.361} -\definecolor{InnerLinkColor}{rgb}{0.208,0.374,0.486} -\definecolor{OuterLinkColor}{rgb}{0.216,0.439,0.388} -% Redefine these colors to something not white if you want to have colored -% background and border for code examples. -\definecolor{VerbatimColor}{rgb}{1,1,1} -\definecolor{VerbatimBorderColor}{rgb}{1,1,1} - -% Uncomment these two lines to ignore the paper size and make the page -% size more like a typical published manual. -%\renewcommand{\paperheight}{9in} -%\renewcommand{\paperwidth}{8.5in} % typical squarish manual -%\renewcommand{\paperwidth}{7in} % O'Reilly ``Programmming Python'' - -% For graphicx, check if we are compiling under latex or pdflatex. -\ifx\pdftexversion\undefined - \usepackage{graphicx} -\else - \usepackage[pdftex]{graphicx} -\fi - -% for PDF output, use colors and maximal compression -\newif\ifsphinxpdfoutput\sphinxpdfoutputfalse -\ifx\pdfoutput\undefined\else\ifcase\pdfoutput - \let\py@NormalColor\relax - \let\py@TitleColor\relax -\else - \sphinxpdfoutputtrue - \input{pdfcolor} - \def\py@NormalColor{\color[rgb]{0.0,0.0,0.0}} - \def\py@TitleColor{\color{TitleColor}} - \pdfcompresslevel=9 -\fi\fi - -% XeLaTeX can do colors, too -\ifx\XeTeXrevision\undefined\else - \def\py@NormalColor{\color[rgb]{0.0,0.0,0.0}} - \def\py@TitleColor{\color{TitleColor}} -\fi - -% Increase printable page size (copied from fullpage.sty) -\topmargin 0pt -\advance \topmargin by -\headheight -\advance \topmargin by -\headsep - -% attempt to work a little better for A4 users -\textheight \paperheight -\advance\textheight by -2in - -\oddsidemargin 0pt -\evensidemargin 0pt -%\evensidemargin -.25in % for ``manual size'' documents -\marginparwidth 0.5in - -\textwidth \paperwidth -\advance\textwidth by -2in - - -% Style parameters and macros used by most documents here -\raggedbottom -\sloppy -\hbadness = 5000 % don't print trivial gripes - -\pagestyle{empty} % start this way; change for -\pagenumbering{roman} % ToC & chapters - -% Use this to set the font family for headers and other decor: -\newcommand{\py@HeaderFamily}{\sffamily\bfseries} - -% Redefine the 'normal' header/footer style when using "fancyhdr" package: -\@ifundefined{fancyhf}{}{ - % Use \pagestyle{normal} as the primary pagestyle for text. - \fancypagestyle{normal}{ - \fancyhf{} - \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}} - \fancyfoot[LO]{{\py@HeaderFamily\nouppercase{\rightmark}}} - \fancyfoot[RE]{{\py@HeaderFamily\nouppercase{\leftmark}}} - \fancyhead[LE,RO]{{\py@HeaderFamily \@title, \py@release}} - \renewcommand{\headrulewidth}{0.4pt} - \renewcommand{\footrulewidth}{0.4pt} - } - % Update the plain style so we get the page number & footer line, - % but not a chapter or section title. This is to keep the first - % page of a chapter and the blank page between chapters `clean.' - \fancypagestyle{plain}{ - \fancyhf{} - \fancyfoot[LE,RO]{{\py@HeaderFamily\thepage}} - \renewcommand{\headrulewidth}{0pt} - \renewcommand{\footrulewidth}{0.4pt} - } -} - -% Some custom font markup commands. -% -\newcommand{\strong}[1]{{\bf #1}} -\newcommand{\code}[1]{\texttt{#1}} -\newcommand{\bfcode}[1]{\code{\bfseries#1}} -\newcommand{\email}[1]{\textsf{#1}} - -% Redefine the Verbatim environment to allow border and background colors. -% The original environment is still used for verbatims within tables. -\let\OriginalVerbatim=\Verbatim -\let\endOriginalVerbatim=\endVerbatim - -% Play with vspace to be able to keep the indentation. -\newlength\distancetoright -\def\mycolorbox#1{% - \setlength\distancetoright{\linewidth}% - \advance\distancetoright -\@totalleftmargin % - \fcolorbox{VerbatimBorderColor}{VerbatimColor}{% - \begin{minipage}{\distancetoright}% - #1 - \end{minipage}% - }% -} -\def\FrameCommand{\mycolorbox} - -\renewcommand{\Verbatim}[1][1]{% - % list starts new par, but we don't want it to be set apart vertically - \bgroup\parskip=0pt% - \smallskip% - % The list environement is needed to control perfectly the vertical - % space. - \list{}{% - \setlength\parskip{0pt}% - \setlength\itemsep{0ex}% - \setlength\topsep{0ex}% - \setlength\partopsep{0pt}% - \setlength\leftmargin{0pt}% - }% - \item\MakeFramed {\FrameRestore}% - \small% - \OriginalVerbatim[#1]% -} -\renewcommand{\endVerbatim}{% - \endOriginalVerbatim% - \endMakeFramed% - \endlist% - % close group to restore \parskip - \egroup% -} - - -% \moduleauthor{name}{email} -\newcommand{\moduleauthor}[2]{} - -% \sectionauthor{name}{email} -\newcommand{\sectionauthor}[2]{} - -% Augment the sectioning commands used to get our own font family in place, -% and reset some internal data items: -\titleformat{\section}{\Large\py@HeaderFamily}% - {\py@TitleColor\thesection}{0.5em}{\py@TitleColor}{\py@NormalColor} -\titleformat{\subsection}{\large\py@HeaderFamily}% - {\py@TitleColor\thesubsection}{0.5em}{\py@TitleColor}{\py@NormalColor} -\titleformat{\subsubsection}{\py@HeaderFamily}% - {\py@TitleColor\thesubsubsection}{0.5em}{\py@TitleColor}{\py@NormalColor} -\titleformat{\paragraph}{\small\py@HeaderFamily}% - {\py@TitleColor}{0em}{\py@TitleColor}{\py@NormalColor} - -% {fulllineitems} is the main environment for object descriptions. -% -\newcommand{\py@itemnewline}[1]{% - \@tempdima\linewidth% - \advance\@tempdima \leftmargin\makebox[\@tempdima][l]{#1}% -} - -\newenvironment{fulllineitems}{ - \begin{list}{}{\labelwidth \leftmargin \labelsep 0pt - \rightmargin 0pt \topsep -\parskip \partopsep \parskip - \itemsep -\parsep - \let\makelabel=\py@itemnewline} -}{\end{list}} - -% \optional is used for ``[, arg]``, i.e. desc_optional nodes. -\newcommand{\optional}[1]{% - {\textnormal{\Large[}}{#1}\hspace{0.5mm}{\textnormal{\Large]}}} - -\newlength{\py@argswidth} -\newcommand{\py@sigparams}[2]{% - \parbox[t]{\py@argswidth}{#1\code{)}#2}} -\newcommand{\pysigline}[1]{\item[#1]\nopagebreak} -\newcommand{\pysiglinewithargsret}[3]{% - \settowidth{\py@argswidth}{#1\code{(}}% - \addtolength{\py@argswidth}{-2\py@argswidth}% - \addtolength{\py@argswidth}{\linewidth}% - \item[#1\code{(}\py@sigparams{#2}{#3}]} - -% Production lists -% -\newenvironment{productionlist}{ -% \def\optional##1{{\Large[}##1{\Large]}} - \def\production##1##2{\\\code{##1}&::=&\code{##2}} - \def\productioncont##1{\\& &\code{##1}} - \parindent=2em - \indent - \begin{tabular}{lcl} -}{% - \end{tabular} -} - -% Notices / Admonitions -% -\newlength{\py@noticelength} - -\newcommand{\py@heavybox}{ - \setlength{\fboxrule}{1pt} - \setlength{\fboxsep}{6pt} - \setlength{\py@noticelength}{\linewidth} - \addtolength{\py@noticelength}{-2\fboxsep} - \addtolength{\py@noticelength}{-2\fboxrule} - %\setlength{\shadowsize}{3pt} - \Sbox - \minipage{\py@noticelength} -} -\newcommand{\py@endheavybox}{ - \endminipage - \endSbox - \fbox{\TheSbox} -} - -\newcommand{\py@lightbox}{{% - \setlength\parskip{0pt}\par - \rule[0ex]{\linewidth}{0.5pt}% - \par\vspace{-0.5ex}% - }} -\newcommand{\py@endlightbox}{{% - \setlength{\parskip}{0pt}% - \par\rule[0.5ex]{\linewidth}{0.5pt}% - \par\vspace{-0.5ex}% - }} - -% Some are quite plain: -\newcommand{\py@noticestart@note}{\py@lightbox} -\newcommand{\py@noticeend@note}{\py@endlightbox} -\newcommand{\py@noticestart@hint}{\py@lightbox} -\newcommand{\py@noticeend@hint}{\py@endlightbox} -\newcommand{\py@noticestart@important}{\py@lightbox} -\newcommand{\py@noticeend@important}{\py@endlightbox} -\newcommand{\py@noticestart@tip}{\py@lightbox} -\newcommand{\py@noticeend@tip}{\py@endlightbox} - -% Others gets more visible distinction: -\newcommand{\py@noticestart@warning}{\py@heavybox} -\newcommand{\py@noticeend@warning}{\py@endheavybox} -\newcommand{\py@noticestart@caution}{\py@heavybox} -\newcommand{\py@noticeend@caution}{\py@endheavybox} -\newcommand{\py@noticestart@attention}{\py@heavybox} -\newcommand{\py@noticeend@attention}{\py@endheavybox} -\newcommand{\py@noticestart@danger}{\py@heavybox} -\newcommand{\py@noticeend@danger}{\py@endheavybox} -\newcommand{\py@noticestart@error}{\py@heavybox} -\newcommand{\py@noticeend@error}{\py@endheavybox} - -\newenvironment{notice}[2]{ - \def\py@noticetype{#1} - \csname py@noticestart@#1\endcsname - \strong{#2} -}{\csname py@noticeend@\py@noticetype\endcsname} - -% Allow the release number to be specified independently of the -% \date{}. This allows the date to reflect the document's date and -% release to specify the release that is documented. -% -\newcommand{\py@release}{} -\newcommand{\version}{} -\newcommand{\shortversion}{} -\newcommand{\releaseinfo}{} -\newcommand{\releasename}{Release} -\newcommand{\release}[1]{% - \renewcommand{\py@release}{\releasename\space\version}% - \renewcommand{\version}{#1}} -\newcommand{\setshortversion}[1]{% - \renewcommand{\shortversion}{#1}} -\newcommand{\setreleaseinfo}[1]{% - \renewcommand{\releaseinfo}{#1}} - -% Allow specification of the author's address separately from the -% author's name. This can be used to format them differently, which -% is a good thing. -% -\newcommand{\py@authoraddress}{} -\newcommand{\authoraddress}[1]{\renewcommand{\py@authoraddress}{#1}} - -% This sets up the fancy chapter headings that make the documents look -% at least a little better than the usual LaTeX output. -% -\@ifundefined{ChTitleVar}{}{ - \ChNameVar{\raggedleft\normalsize\py@HeaderFamily} - \ChNumVar{\raggedleft \bfseries\Large\py@HeaderFamily} - \ChTitleVar{\raggedleft \rm\Huge\py@HeaderFamily} - % This creates chapter heads without the leading \vspace*{}: - \def\@makechapterhead#1{% - {\parindent \z@ \raggedright \normalfont - \ifnum \c@secnumdepth >\m@ne - \DOCH - \fi - \interlinepenalty\@M - \DOTI{#1} - } - } -} - -% Redefine description environment so that it is usable inside fulllineitems. -% -\renewcommand{\description}{% - \list{}{\labelwidth\z@% - \itemindent-\leftmargin% - \labelsep5pt% - \let\makelabel=\descriptionlabel}} - -% Definition lists; requested by AMK for HOWTO documents. Probably useful -% elsewhere as well, so keep in in the general style support. -% -\newenvironment{definitions}{% - \begin{description}% - \def\term##1{\item[##1]\mbox{}\\*[0mm]} -}{% - \end{description}% -} - -% Tell TeX about pathological hyphenation cases: -\hyphenation{Base-HTTP-Re-quest-Hand-ler} - - -% The following is stuff copied from docutils' latex writer. -% -\newcommand{\optionlistlabel}[1]{\bf #1 \hfill} -\newenvironment{optionlist}[1] -{\begin{list}{} - {\setlength{\labelwidth}{#1} - \setlength{\rightmargin}{1cm} - \setlength{\leftmargin}{\rightmargin} - \addtolength{\leftmargin}{\labelwidth} - \addtolength{\leftmargin}{\labelsep} - \renewcommand{\makelabel}{\optionlistlabel}} -}{\end{list}} - -\newlength{\lineblockindentation} -\setlength{\lineblockindentation}{2.5em} -\newenvironment{lineblock}[1] -{\begin{list}{} - {\setlength{\partopsep}{\parskip} - \addtolength{\partopsep}{\baselineskip} - \topsep0pt\itemsep0.15\baselineskip\parsep0pt - \leftmargin#1} - \raggedright} -{\end{list}} - -% Redefine includgraphics for avoiding images larger than the screen size -% If the size is not specified. -\let\py@Oldincludegraphics\includegraphics - -\newbox\image@box% -\newdimen\image@width% -\renewcommand\includegraphics[2][\@empty]{% - \ifx#1\@empty% - \setbox\image@box=\hbox{\py@Oldincludegraphics{#2}}% - \image@width\wd\image@box% - \ifdim \image@width>\linewidth% - \setbox\image@box=\hbox{\py@Oldincludegraphics[width=\linewidth]{#2}}% - \box\image@box% - \else% - \py@Oldincludegraphics{#2}% - \fi% - \else% - \py@Oldincludegraphics[#1]{#2}% - \fi% -} - - -% Fix the index and bibliography environments to add an entry to the Table of -% Contents; this is much nicer than just having to jump to the end of the book -% and flip around, especially with multiple indexes. -% -\let\py@OldTheindex=\theindex -\renewcommand{\theindex}{ - \cleardoublepage - \phantomsection - \py@OldTheindex - \addcontentsline{toc}{chapter}{\indexname} -} - -\let\py@OldThebibliography=\thebibliography -\renewcommand{\thebibliography}[1]{ - \cleardoublepage - \phantomsection - \py@OldThebibliography{1} - \addcontentsline{toc}{chapter}{\bibname} -} - -% Include hyperref last. -\RequirePackage[colorlinks,breaklinks, - linkcolor=InnerLinkColor,filecolor=OuterLinkColor, - menucolor=OuterLinkColor,urlcolor=OuterLinkColor, - citecolor=InnerLinkColor]{hyperref} -% Fix anchor placement for figures with captions. -% (Note: we don't use a package option here; instead, we give an explicit -% \capstart for figures that actually have a caption.) -\RequirePackage{hypcap} - -% From docutils.writers.latex2e -\providecommand{\DUspan}[2]{% - {% group ("span") to limit the scope of styling commands - \@for\node@class@name:=#1\do{% - \ifcsname docutilsrole\node@class@name\endcsname% - \csname docutilsrole\node@class@name\endcsname% - \fi% - }% - {#2}% node content - }% close "span" -} - -\providecommand*{\DUprovidelength}[2]{ - \ifthenelse{\isundefined{#1}}{\newlength{#1}\setlength{#1}{#2}}{} -} - -\DUprovidelength{\DUlineblockindent}{2.5em} -\ifthenelse{\isundefined{\DUlineblock}}{ - \newenvironment{DUlineblock}[1]{% - \list{}{\setlength{\partopsep}{\parskip} - \addtolength{\partopsep}{\baselineskip} - \setlength{\topsep}{0pt} - \setlength{\itemsep}{0.15\baselineskip} - \setlength{\parsep}{0pt} - \setlength{\leftmargin}{#1}} - \raggedright - } - {\endlist} -}{} - - -% From footmisc.sty: allows footnotes in titles -\let\FN@sf@@footnote\footnote -\def\footnote{\ifx\protect\@typeset@protect - \expandafter\FN@sf@@footnote - \else - \expandafter\FN@sf@gobble@opt - \fi -} -\edef\FN@sf@gobble@opt{\noexpand\protect - \expandafter\noexpand\csname FN@sf@gobble@opt \endcsname} -\expandafter\def\csname FN@sf@gobble@opt \endcsname{% - \@ifnextchar[%] - \FN@sf@gobble@twobracket - \@gobble -} -\def\FN@sf@gobble@twobracket[#1]#2{} diff --git a/docs/_build/latex/sphinxhowto.cls b/docs/_build/latex/sphinxhowto.cls deleted file mode 100644 index 1ebdd434..00000000 --- a/docs/_build/latex/sphinxhowto.cls +++ /dev/null @@ -1,81 +0,0 @@ -% -% sphinxhowto.cls for Sphinx (http://sphinx.pocoo.org/) -% - -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{sphinxhowto}[2009/06/02 Document class (Sphinx HOWTO)] - -% 'oneside' option overriding the 'twoside' default -\newif\if@oneside -\DeclareOption{oneside}{\@onesidetrue} -% Pass remaining document options to the parent class. -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\sphinxdocclass}} -\ProcessOptions\relax - -% Default to two-side document -\if@oneside -% nothing to do (oneside is the default) -\else -\PassOptionsToClass{twoside}{\sphinxdocclass} -\fi - -\LoadClass{\sphinxdocclass} - -% Set some sane defaults for section numbering depth and TOC depth. You can -% reset these counters in your preamble. -% -\setcounter{secnumdepth}{2} - -% Change the title page to look a bit better, and fit in with the fncychap -% ``Bjarne'' style a bit better. -% -\renewcommand{\maketitle}{ - \rule{\textwidth}{1pt} - \ifsphinxpdfoutput - \begingroup - % These \defs are required to deal with multi-line authors; it - % changes \\ to ', ' (comma-space), making it pass muster for - % generating document info in the PDF file. - \def\\{, } - \def\and{and } - \pdfinfo{ - /Author (\@author) - /Title (\@title) - } - \endgroup - \fi - \begin{flushright} - \sphinxlogo% - {\rm\Huge\py@HeaderFamily \@title} \par - {\em\large\py@HeaderFamily \py@release\releaseinfo} \par - \vspace{25pt} - {\Large\py@HeaderFamily - \begin{tabular}[t]{c} - \@author - \end{tabular}} \par - \vspace{25pt} - \@date \par - \py@authoraddress \par - \end{flushright} - \@thanks - \setcounter{footnote}{0} - \let\thanks\relax\let\maketitle\relax - %\gdef\@thanks{}\gdef\@author{}\gdef\@title{} -} - -\let\py@OldTableofcontents=\tableofcontents -\renewcommand{\tableofcontents}{ - \begingroup - \parskip = 0mm - \py@OldTableofcontents - \endgroup - \rule{\textwidth}{1pt} - \vspace{12pt} -} - -\@ifundefined{fancyhf}{ - \pagestyle{plain}}{ - \pagestyle{normal}} % start this way; change for -\pagenumbering{arabic} % ToC & chapters - -\thispagestyle{empty} diff --git a/docs/_build/latex/sphinxmanual.cls b/docs/_build/latex/sphinxmanual.cls deleted file mode 100644 index 57517798..00000000 --- a/docs/_build/latex/sphinxmanual.cls +++ /dev/null @@ -1,122 +0,0 @@ -% -% sphinxmanual.cls for Sphinx (http://sphinx.pocoo.org/) -% - -\NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesClass{sphinxmanual}[2009/06/02 Document class (Sphinx manual)] - -% chapters starting at odd pages (overridden by 'openany' document option) -\PassOptionsToClass{openright}{\sphinxdocclass} - -% 'oneside' option overriding the 'twoside' default -\newif\if@oneside -\DeclareOption{oneside}{\@onesidetrue} -% Pass remaining document options to the parent class. -\DeclareOption*{\PassOptionsToClass{\CurrentOption}{\sphinxdocclass}} -\ProcessOptions\relax - -% Defaults two-side document -\if@oneside -% nothing to do (oneside is the default) -\else -\PassOptionsToClass{twoside}{\sphinxdocclass} -\fi - -\LoadClass{\sphinxdocclass} - -% Set some sane defaults for section numbering depth and TOC depth. You can -% reset these counters in your preamble. -% -\setcounter{secnumdepth}{2} -\setcounter{tocdepth}{1} - -% Change the title page to look a bit better, and fit in with the fncychap -% ``Bjarne'' style a bit better. -% -\renewcommand{\maketitle}{% - \begin{titlepage}% - \let\footnotesize\small - \let\footnoterule\relax - \rule{\textwidth}{1pt}% - \ifsphinxpdfoutput - \begingroup - % These \defs are required to deal with multi-line authors; it - % changes \\ to ', ' (comma-space), making it pass muster for - % generating document info in the PDF file. - \def\\{, } - \def\and{and } - \pdfinfo{ - /Author (\@author) - /Title (\@title) - } - \endgroup - \fi - \begin{flushright}% - \sphinxlogo% - {\rm\Huge\py@HeaderFamily \@title \par}% - {\em\LARGE\py@HeaderFamily \py@release\releaseinfo \par} - \vfill - {\LARGE\py@HeaderFamily - \begin{tabular}[t]{c} - \@author - \end{tabular} - \par} - \vfill\vfill - {\large - \@date \par - \vfill - \py@authoraddress \par - }% - \end{flushright}%\par - \@thanks - \end{titlepage}% - \cleardoublepage% - \setcounter{footnote}{0}% - \let\thanks\relax\let\maketitle\relax - %\gdef\@thanks{}\gdef\@author{}\gdef\@title{} -} - - -% Catch the end of the {abstract} environment, but here make sure the abstract -% is followed by a blank page if the 'openright' option is used. -% -\let\py@OldEndAbstract=\endabstract -\renewcommand{\endabstract}{ - \if@openright - \ifodd\value{page} - \typeout{Adding blank page after the abstract.} - \vfil\pagebreak - \fi - \fi - \py@OldEndAbstract -} - -% This wraps the \tableofcontents macro with all the magic to get the spacing -% right and have the right number of pages if the 'openright' option has been -% used. This eliminates a fair amount of crud in the individual document files. -% -\let\py@OldTableofcontents=\tableofcontents -\renewcommand{\tableofcontents}{% - \setcounter{page}{1}% - \pagebreak% - \pagestyle{plain}% - {% - \parskip = 0mm% - \py@OldTableofcontents% - \if@openright% - \ifodd\value{page}% - \typeout{Adding blank page after the table of contents.}% - \pagebreak\hspace{0pt}% - \fi% - \fi% - \cleardoublepage% - }% - \pagenumbering{arabic}% - \@ifundefined{fancyhf}{}{\pagestyle{normal}}% -} - -% This is needed to get the width of the section # area wide enough in the -% library reference. Doing it here keeps it the same for all the manuals. -% -\renewcommand*\l@section{\@dottedtocline{1}{1.5em}{2.6em}} -\renewcommand*\l@subsection{\@dottedtocline{2}{4.1em}{3.5em}} diff --git a/docs/_build/latex/tabulary.sty b/docs/_build/latex/tabulary.sty deleted file mode 100644 index ba83c0af..00000000 --- a/docs/_build/latex/tabulary.sty +++ /dev/null @@ -1,452 +0,0 @@ -%% -%% This is file `tabulary.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% tabulary.dtx (with options: `package') -%% DRAFT VERSION -%% -%% File `tabulary.dtx'. -%% Copyright (C) 1995 1996 2003 David Carlisle -%% This file may be distributed under the terms of the LPPL. -%% See 00readme.txt for details. -%% -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tabulary} - [2007/10/02 v0.9 tabulary package (DPC)] -\RequirePackage{array} -\catcode`\Z=14 -\DeclareOption{debugshow}{\catcode`\Z=9\relax} -\ProcessOptions -\def\arraybackslash{\let\\=\@arraycr} -\def\@finalstrut#1{% - \unskip\ifhmode\nobreak\fi\vrule\@width\z@\@height\z@\@depth\dp#1} -\newcount\TY@count -\def\tabulary{% - \let\TY@final\tabular - \let\endTY@final\endtabular - \TY@tabular} -\def\TY@tabular#1{% - \edef\TY@{\@currenvir}% - {\ifnum0=`}\fi - \@ovxx\TY@linewidth - \@ovyy\TY@tablewidth - \count@\z@ - \@tempswatrue - \@whilesw\if@tempswa\fi{% - \advance\count@\@ne - \expandafter\ifx\csname TY@F\the\count@\endcsname\relax - \@tempswafalse - \else - \expandafter\let\csname TY@SF\the\count@\expandafter\endcsname - \csname TY@F\the\count@\endcsname - \global\expandafter\let\csname TY@F\the\count@\endcsname\relax - \expandafter\let\csname TY@S\the\count@\expandafter\endcsname - \csname TY@\the\count@\endcsname - \fi}% - \global\TY@count\@ne - \TY@width\xdef{0pt}% - \global\TY@tablewidth\z@ - \global\TY@linewidth#1\relax -Z\message{^^J^^JTable^^J% -Z Target Width: \the\TY@linewidth^^J% -Z \string\tabcolsep: \the\tabcolsep\space -Z \string\arrayrulewidth: \the\arrayrulewidth\space -Z \string\doublerulesep: \the\doublerulesep^^J% -Z \string\tymin: \the\tymin\space -Z \string\tymax: \the\tymax^^J}% - \let\@classz\TY@classz - \let\verb\TX@verb - \toks@{}\TY@get@body} -\let\TY@@mkpream\@mkpream -\def\TY@mkpream{% - \def\@addamp{% - \if@firstamp \@firstampfalse \else - \global\advance\TY@count\@ne - \edef\@preamble{\@preamble &}\fi - \TY@width\xdef{0pt}}% - \def\@acol{% - \TY@subwidth\col@sep - \@addtopreamble{\hskip\col@sep}}% - \let\@arrayrule\TY@arrayrule - \let\@classvi\TY@classvi - \def\@classv{\save@decl - \expandafter\NC@ecs\@nextchar\extracolsep{}\extracolsep\@@@ - \sbox\z@{\d@llarbegin\@nextchar\d@llarend}% - \TY@subwidth{\wd\z@}% - \@addtopreamble{\d@llarbegin\the@toks\the\count@\relax\d@llarend}% - \prepnext@tok}% - \global\let\@mkpream\TY@@mkpream - \TY@@mkpream} -\def\TY@arrayrule{% - \TY@subwidth\arrayrulewidth - \@addtopreamble \vline} -\def\TY@classvi{\ifcase \@lastchclass - \@acol \or - \TY@subwidth\doublerulesep - \@addtopreamble{\hskip \doublerulesep}\or - \@acol \or - \@classvii - \fi} -\def\TY@tab{% - \setbox\z@\hbox\bgroup - \let\[$\let\]$% - \let\equation$\let\endequation$% - \col@sep\tabcolsep - \let\d@llarbegin\begingroup\let\d@llarend\endgroup - \let\@mkpream\TY@mkpream - \def\multicolumn##1##2##3{\multispan##1\relax}% - \CT@start\TY@tabarray} -\def\TY@tabarray{\@ifnextchar[{\TY@array}{\@array[t]}} -\def\TY@array[#1]{\@array[t]} -\def\TY@width#1{% - \expandafter#1\csname TY@\the\TY@count\endcsname} -\def\TY@subwidth#1{% - \TY@width\dimen@ - \advance\dimen@-#1\relax - \TY@width\xdef{\the\dimen@}% - \global\advance\TY@linewidth-#1\relax} -\def\endtabulary{% - \gdef\@halignto{}% - \let\TY@footnote\footnote% - \def\footnote{}% prevent footnotes from doing anything - \expandafter\TY@tab\the\toks@ - \crcr\omit - {\xdef\TY@save@row{}% - \loop - \advance\TY@count\m@ne - \ifnum\TY@count>\z@ - \xdef\TY@save@row{\TY@save@row&\omit}% - \repeat}\TY@save@row - \endarray\global\setbox1=\lastbox\setbox0=\vbox{\unvbox1 - \unskip\global\setbox1=\lastbox}\egroup - \dimen@\TY@linewidth - \divide\dimen@\TY@count - \ifdim\dimen@<\tymin - \TY@warn{tymin too large (\the\tymin), resetting to \the\dimen@}% - \tymin\dimen@ - \fi - \setbox\tw@=\hbox{\unhbox\@ne - \loop -\@tempdima=\lastskip -\ifdim\@tempdima>\z@ -Z \message{ecs=\the\@tempdima^^J}% - \global\advance\TY@linewidth-\@tempdima -\fi - \unskip - \setbox\tw@=\lastbox - \ifhbox\tw@ -Z \message{Col \the\TY@count: Initial=\the\wd\tw@\space}% - \ifdim\wd\tw@>\tymax - \wd\tw@\tymax -Z \message{> max\space}% -Z \else -Z \message{ \@spaces\space}% - \fi - \TY@width\dimen@ -Z \message{\the\dimen@\space}% - \advance\dimen@\wd\tw@ -Z \message{Final=\the\dimen@\space}% - \TY@width\xdef{\the\dimen@}% - \ifdim\dimen@<\tymin -Z \message{< tymin}% - \global\advance\TY@linewidth-\dimen@ - \expandafter\xdef\csname TY@F\the\TY@count\endcsname - {\the\dimen@}% - \else - \expandafter\ifx\csname TY@F\the\TY@count\endcsname\z@ -Z \message{***}% - \global\advance\TY@linewidth-\dimen@ - \expandafter\xdef\csname TY@F\the\TY@count\endcsname - {\the\dimen@}% - \else -Z \message{> tymin}% - \global\advance\TY@tablewidth\dimen@ - \global\expandafter\let\csname TY@F\the\TY@count\endcsname - \maxdimen - \fi\fi - \advance\TY@count\m@ne - \repeat}% - \TY@checkmin - \TY@checkmin - \TY@checkmin - \TY@checkmin - \TY@count\z@ - \let\TY@box\TY@box@v - \let\footnote\TY@footnote % restore footnotes - {\expandafter\TY@final\the\toks@\endTY@final}% - \count@\z@ - \@tempswatrue - \@whilesw\if@tempswa\fi{% - \advance\count@\@ne - \expandafter\ifx\csname TY@SF\the\count@\endcsname\relax - \@tempswafalse - \else - \global\expandafter\let\csname TY@F\the\count@\expandafter\endcsname - \csname TY@SF\the\count@\endcsname - \global\expandafter\let\csname TY@\the\count@\expandafter\endcsname - \csname TY@S\the\count@\endcsname - \fi}% - \TY@linewidth\@ovxx - \TY@tablewidth\@ovyy - \ifnum0=`{\fi}} -\def\TY@checkmin{% - \let\TY@checkmin\relax -\ifdim\TY@tablewidth>\z@ - \Gscale@div\TY@ratio\TY@linewidth\TY@tablewidth - \ifdim\TY@tablewidth <\linewidth - \def\TY@ratio{1}% - \fi -\else - \TY@warn{No suitable columns!}% - \def\TY@ratio{1}% -\fi -\count@\z@ -Z \message{^^JLine Width: \the\TY@linewidth, -Z Natural Width: \the\TY@tablewidth, -Z Ratio: \TY@ratio^^J}% -\@tempdima\z@ -\loop -\ifnum\count@<\TY@count -\advance\count@\@ne - \ifdim\csname TY@F\the\count@\endcsname>\tymin - \dimen@\csname TY@\the\count@\endcsname - \dimen@\TY@ratio\dimen@ - \ifdim\dimen@<\tymin -Z \message{Column \the\count@\space ->}% - \global\expandafter\let\csname TY@F\the\count@\endcsname\tymin - \global\advance\TY@linewidth-\tymin - \global\advance\TY@tablewidth-\csname TY@\the\count@\endcsname - \let\TY@checkmin\TY@@checkmin - \else - \expandafter\xdef\csname TY@F\the\count@\endcsname{\the\dimen@}% - \advance\@tempdima\csname TY@F\the\count@\endcsname - \fi - \fi -Z \dimen@\csname TY@F\the\count@\endcsname\message{\the\dimen@, }% -\repeat -Z \message{^^JTotal:\the\@tempdima^^J}% -} -\let\TY@@checkmin\TY@checkmin -\newdimen\TY@linewidth -\def\tyformat{\everypar{{\nobreak\hskip\z@skip}}} -\newdimen\tymin -\tymin=10pt -\newdimen\tymax -\tymax=2\textwidth -\def\@testpach{\@chclass - \ifnum \@lastchclass=6 \@ne \@chnum \@ne \else - \ifnum \@lastchclass=7 5 \else - \ifnum \@lastchclass=8 \tw@ \else - \ifnum \@lastchclass=9 \thr@@ - \else \z@ - \ifnum \@lastchclass = 10 \else - \edef\@nextchar{\expandafter\string\@nextchar}% - \@chnum - \if \@nextchar c\z@ \else - \if \@nextchar l\@ne \else - \if \@nextchar r\tw@ \else - \if \@nextchar C7 \else - \if \@nextchar L8 \else - \if \@nextchar R9 \else - \if \@nextchar J10 \else - \z@ \@chclass - \if\@nextchar |\@ne \else - \if \@nextchar !6 \else - \if \@nextchar @7 \else - \if \@nextchar <8 \else - \if \@nextchar >9 \else - 10 - \@chnum - \if \@nextchar m\thr@@\else - \if \@nextchar p4 \else - \if \@nextchar b5 \else - \z@ \@chclass \z@ \@preamerr \z@ \fi \fi \fi \fi\fi \fi \fi\fi \fi - \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi \fi} -\def\TY@classz{% - \@classx - \@tempcnta\count@ - \ifx\TY@box\TY@box@v - \global\advance\TY@count\@ne - \fi - \let\centering c% - \let\raggedright\noindent - \let\raggedleft\indent - \let\arraybackslash\relax - \prepnext@tok - \ifnum\@chnum<4 - \global\expandafter\let\csname TY@F\the\TY@count\endcsname\z@ - \fi - \ifnum\@chnum=6 - \global\expandafter\let\csname TY@F\the\TY@count\endcsname\z@ - \fi - \@addtopreamble{% - \ifcase\@chnum - \hfil \d@llarbegin\insert@column\d@llarend \hfil \or - \kern\z@ - \d@llarbegin \insert@column \d@llarend \hfil \or - \hfil\kern\z@ \d@llarbegin \insert@column \d@llarend \or - $\vcenter\@startpbox{\@nextchar}\insert@column \@endpbox $\or - \vtop \@startpbox{\@nextchar}\insert@column \@endpbox \or - \vbox \@startpbox{\@nextchar}\insert@column \@endpbox \or - \d@llarbegin \insert@column \d@llarend \or% dubious "s" case - \TY@box\centering\or - \TY@box\raggedright\or - \TY@box\raggedleft\or - \TY@box\relax - \fi}\prepnext@tok} -\def\TY@box#1{% - \ifx\centering#1% - \hfil \d@llarbegin\insert@column\d@llarend \hfil \else - \ifx\raggedright#1% - \kern\z@%<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - \d@llarbegin \insert@column \d@llarend \hfil \else - \ifx\raggedleft#1% - \hfil\kern\z@ \d@llarbegin \insert@column \d@llarend \else - \ifx\relax#1% - \d@llarbegin \insert@column \d@llarend - \fi \fi \fi \fi} -\def\TY@box@v#1{% - \vtop \@startpbox{\csname TY@F\the\TY@count\endcsname}% - #1\arraybackslash\tyformat - \insert@column\@endpbox} -\newdimen\TY@tablewidth -\def\Gscale@div#1#2#3{% - \setlength\dimen@{#3}% - \ifdim\dimen@=\z@ - \PackageError{graphics}{Division by 0}\@eha - \dimen@#2% - \fi - \edef\@tempd{\the\dimen@}% - \setlength\dimen@{#2}% - \count@65536\relax - \ifdim\dimen@<\z@ - \dimen@-\dimen@ - \count@-\count@ - \fi - \loop - \ifdim\dimen@<8192\p@ - \dimen@\tw@\dimen@ - \divide\count@\tw@ - \repeat - \dimen@ii=\@tempd\relax - \divide\dimen@ii\count@ - \divide\dimen@\dimen@ii - \edef#1{\strip@pt\dimen@}} -\long\def\TY@get@body#1\end - {\toks@\expandafter{\the\toks@#1}\TY@find@end} -\def\TY@find@end#1{% - \def\@tempa{#1}% - \ifx\@tempa\TY@\def\@tempa{\end{#1}}\expandafter\@tempa - \else\toks@\expandafter - {\the\toks@\end{#1}}\expandafter\TY@get@body\fi} -\def\TY@warn{% - \PackageWarning{tabulary}} -\catcode`\Z=11 -\AtBeginDocument{ -\@ifpackageloaded{colortbl}{% -\expandafter\def\expandafter\@mkpream\expandafter#\expandafter1% - \expandafter{% - \expandafter\let\expandafter\CT@setup\expandafter\relax - \expandafter\let\expandafter\CT@color\expandafter\relax - \expandafter\let\expandafter\CT@do@color\expandafter\relax - \expandafter\let\expandafter\color\expandafter\relax - \expandafter\let\expandafter\CT@column@color\expandafter\relax - \expandafter\let\expandafter\CT@row@color\expandafter\relax - \@mkpream{#1}} -\let\TY@@mkpream\@mkpream -\def\TY@classz{% - \@classx - \@tempcnta\count@ - \ifx\TY@box\TY@box@v - \global\advance\TY@count\@ne - \fi - \let\centering c% - \let\raggedright\noindent - \let\raggedleft\indent - \let\arraybackslash\relax - \prepnext@tok -\expandafter\CT@extract\the\toks\@tempcnta\columncolor!\@nil - \ifnum\@chnum<4 - \global\expandafter\let\csname TY@F\the\TY@count\endcsname\z@ - \fi - \ifnum\@chnum=6 - \global\expandafter\let\csname TY@F\the\TY@count\endcsname\z@ - \fi - \@addtopreamble{% - \setbox\z@\hbox\bgroup\bgroup - \ifcase\@chnum - \hskip\stretch{.5}\kern\z@ - \d@llarbegin\insert@column\d@llarend\hskip\stretch{.5}\or - \kern\z@%<<<<<<<<<<<<<<<<<<<<<<<<<<< - \d@llarbegin \insert@column \d@llarend \hfill \or - \hfill\kern\z@ \d@llarbegin \insert@column \d@llarend \or - $\vcenter\@startpbox{\@nextchar}\insert@column \@endpbox $\or - \vtop \@startpbox{\@nextchar}\insert@column \@endpbox \or - \vbox \@startpbox{\@nextchar}\insert@column \@endpbox \or - \d@llarbegin \insert@column \d@llarend \or% dubious s case - \TY@box\centering\or - \TY@box\raggedright\or - \TY@box\raggedleft\or - \TY@box\relax - \fi - \egroup\egroup -\begingroup - \CT@setup - \CT@column@color - \CT@row@color - \CT@do@color -\endgroup - \@tempdima\ht\z@ - \advance\@tempdima\minrowclearance - \vrule\@height\@tempdima\@width\z@ -\unhbox\z@ -}\prepnext@tok}% - \def\TY@arrayrule{% - \TY@subwidth\arrayrulewidth - \@addtopreamble{{\CT@arc@\vline}}}% - \def\TY@classvi{\ifcase \@lastchclass - \@acol \or - \TY@subwidth\doublerulesep - \ifx\CT@drsc@\relax - \@addtopreamble{\hskip\doublerulesep}% - \else - \@addtopreamble{{\CT@drsc@\vrule\@width\doublerulesep}}% - \fi\or - \@acol \or - \@classvii - \fi}% -}{% -\let\CT@start\relax -} -} -{\uccode`\*=`\ % -\uppercase{\gdef\TX@verb{% - \leavevmode\null\TX@vwarn - {\ifnum0=`}\fi\ttfamily\let\\\ignorespaces - \@ifstar{\let~*\TX@vb}{\TX@vb}}}} -\def\TX@vb#1{\def\@tempa##1#1{\toks@{##1}\edef\@tempa{\the\toks@}% - \expandafter\TX@v\meaning\@tempa\\ \\\ifnum0=`{\fi}}\@tempa!} -\def\TX@v#1!{\afterassignment\TX@vfirst\let\@tempa= } -\begingroup -\catcode`\*=\catcode`\# -\catcode`\#=12 -\gdef\TX@vfirst{% - \if\@tempa#% - \def\@tempb{\TX@v@#}% - \else - \let\@tempb\TX@v@ - \if\@tempa\space~\else\@tempa\fi - \fi - \@tempb} -\gdef\TX@v@*1 *2{% - \TX@v@hash*1##\relax\if*2\\\else~\expandafter\TX@v@\fi*2} -\gdef\TX@v@hash*1##*2{*1\ifx*2\relax\else#\expandafter\TX@v@hash\fi*2} -\endgroup -\def\TX@vwarn{% - \@warning{\noexpand\verb may be unreliable inside tabularx/y}% - \global\let\TX@vwarn\@empty} -\endinput -%% -%% End of file `tabulary.sty'. diff --git a/docs/_build/man/bedtools.1 b/docs/_build/man/bedtools.1 deleted file mode 100644 index 3ea61585..00000000 --- a/docs/_build/man/bedtools.1 +++ /dev/null @@ -1,5506 +0,0 @@ -.TH "BEDTOOLS" "1" "July 21, 2012" "2.16.2" "bedtools" -.SH NAME -bedtools \- Bedtools Documentation -. -.nr rst2man-indent-level 0 -. -.de1 rstReportMargin -\\$1 \\n[an-margin] -level \\n[rst2man-indent-level] -level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] -- -\\n[rst2man-indent0] -\\n[rst2man-indent1] -\\n[rst2man-indent2] -.. -.de1 INDENT -.\" .rstReportMargin pre: -. RS \\$1 -. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] -. nr rst2man-indent-level +1 -.\" .rstReportMargin post: -.. -.de UNINDENT -. RE -.\" indent \\n[an-margin] -.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] -.nr rst2man-indent-level -1 -.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] -.in \\n[rst2man-indent\\n[rst2man-indent-level]]u -.. -.\" Man page generated from reStructeredText. -. -.sp -Brief paragraph of the software. -.SH OVERVIEW -.SS 1.1 Background -.sp -The development of BEDTools was motivated by a need for fast, flexible tools with which to compare large sets of genomic -features. Answering fundamental research questions with existing tools was either too slow or required modifications to the -way they reported or computed their results. We were aware of the utilities on the UCSC Genome Browser and Galaxy websites, as -well as the elegant tools available as part of Jim Kent’s monolithic suite of tools (“Kent sourceâ€). However, we found that -the web\-based tools were too cumbersome when working with large datasets generated by current sequencing technologies. -Similarly, we found that the Kent source command line tools often required a local installation of the UCSC Genome Browser. -These limitations, combined with the fact that we often wanted an extra option here or there that wasn’t available with -existing tools, led us to develop our own from scratch. The initial version of BEDTools was publicly released in the spring of -2009. The current version has evolved from our research experiences and those of the scientists using the suite over the last -year. The BEDTools suite enables one to answer common questions of genomic data in a fast and reliable manner. The fact that -almost all the utilities accept input from “stdin†allows one to “stream / pipe†several commands together to facilitate more -complicated analyses. Also, the tools allow fine control over how output is reported. The initial version of BEDTools -supported solely 6\-column \fI\%BED\fP files. \fIHowever, we have subsequently added support for sequence alignments in\fP \fI\%BAM\fP -\fIformat, as well as for features in\fP \fI\%GFF\fP , \fI“blocked†BED format, and\fP -\fI\%VCF\fP \fIformat\fP. -The tools are quite fast and typically finish in a matter of a few seconds, even for large datasets. This manual seeks to describe the behavior and -available functionality for each BEDTool. Usage examples are scattered throughout the text, and formal examples are -provided in the last two sections, we hope that this document will give you a sense of the flexibility of -the toolkit and the types of analyses that are possible with BEDTools. If you have further questions, please join the BEDTools -discussion group, visit the Usage Examples on the Google Code site (usage, advanced usage), or take a look at the nascent -“Usage From the Wild†page. -.SS 1.2 Summary of available tools. -.sp -BEDTools support a wide range of operations for interrogating and manipulating genomic features. The table below summarizes -the tools available in the suite. -.TS -center; -|l|l|. -_ -T{ -Utility -T} T{ -Description -T} -_ -T{ -\fBintersectBed\fP -T} T{ -Returns overlaps between two BED/GFF/VCF files. -T} -_ -T{ -\fBpairToBed\fP -T} T{ -Returns overlaps between a paired\-end BED file and a regular BED/VCF/GFF file. -T} -_ -T{ -\fBbamToBed\fP -T} T{ -Converts BAM alignments to BED6, BED12, or BEDPE format. -T} -_ -T{ -\fBbedToBam\fP -T} T{ -Converts BED/GFF/VCF features to BAM format. -T} -_ -T{ -\fBbed12ToBed6\fP -T} T{ -Converts "blocked" BED12 features to discrete BED6 features. -T} -_ -T{ -\fBbedToIgv\fP -T} T{ -Creates IGV batch scripts for taking multiple snapshots from BED/GFF/VCF features. -T} -_ -T{ -\fBcoverageBed\fP -T} T{ -Summarizes the depth and breadth of coverage of features in one BED versus features (e.g, windows, exons, etc.) defined in another BED/GFF/VCF file. -T} -_ -T{ -\fBmultiBamCov\fP -T} T{ -Counts sequence coverage for multiple position\-sorted bams at specific loci defined in a BED/GFF/VCF file -T} -_ -T{ -\fBtagBam\fP -T} T{ -Annotates a BAM file with custom tag fields based on overlaps with BED/GFF/VCF files -T} -_ -T{ -\fBnuclBed\fP -T} T{ -Profiles the nucleotide content of intervals in a fasta file -T} -_ -T{ -\fBgenomeCoverageBed\fP -T} T{ -Creates either a histogram, BEDGRAPH, or a "per base" report of genome coverage. -T} -_ -T{ -\fBunionBedGraphs\fP -T} T{ -Combines multiple BedGraph? files into a single file, allowing coverage/other comparisons between them. -T} -_ -T{ -\fBannotateBed\fP -T} T{ -Annotates one BED/VCF/GFF file with overlaps from many others. -T} -_ -T{ -\fBgroupBy\fP -T} T{ -Deprecated. Now in the filo package. -T} -_ -T{ -\fBoverlap\fP -T} T{ -Returns the number of bases pairs of overlap b/w two features on the same line. -T} -_ -T{ -\fBpairToPair\fP -T} T{ -Returns overlaps between two paired\-end BED files. -T} -_ -T{ -\fBclosestBed\fP -T} T{ -Returns the closest feature to each entry in a BED/GFF/VCF file. -T} -_ -T{ -\fBsubtractBed\fP -T} T{ -Removes the portion of an interval that is overlapped by another feature. -T} -_ -T{ -\fBwindowBed\fP -T} T{ -Returns overlaps between two BED/VCF/GFF files based on a user\-defined window. -T} -_ -T{ -\fBmergeBed\fP -T} T{ -Merges overlapping features into a single feature. -T} -_ -T{ -\fBcomplementBed\fP -T} T{ -Returns all intervals not spanned by the features in a BED/GFF/VCF file. -T} -_ -T{ -\fBfastaFromBed\fP -T} T{ -Creates FASTA sequences based on intervals in a BED/GFF/VCF file. -T} -_ -T{ -\fBmaskFastaFromBed\fP -T} T{ -Masks a FASTA file based on BED coordinates. -T} -_ -T{ -\fBshuffleBed\fP -T} T{ -Randomly permutes the locations of a BED file among a genome. -T} -_ -T{ -\fBslopBed\fP -T} T{ -Adjusts each BED entry by a requested number of base pairs. -T} -_ -T{ -\fBflankBed\fP -T} T{ -Creates flanking intervals for each feature in a BED/GFF/VCF file. -T} -_ -T{ -\fBsortBed\fP -T} T{ -Sorts a BED file by chrom, then start position. Other ways as well. -T} -_ -T{ -\fBlinksBed\fP -T} T{ -Creates an HTML file of links to the UCSC or a custom browser. -T} -_ -.TE -.SS 1.3 Fundamental concepts. -.SS 1.3.1 What are genome features and how are they represented? -.sp -Throughout this manual, we will discuss how to use BEDTools to manipulate, compare and ask questions of genome “featuresâ€. Genome features can be functional elements (e.g., genes), genetic polymorphisms (e.g. -SNPs, INDELs, or structural variants), or other annotations that have been discovered or curated by genome sequencing groups or genome browser groups. In addition, genome features can be custom annotations that -an individual lab or researcher defines (e.g., my novel gene or variant). -.sp -The basic characteristics of a genome feature are the chromosome or scaffold on which the feature “residesâ€, the base pair on which the -feature starts (i.e. the “startâ€), the base pair on which feature ends (i.e. the “endâ€), the strand on which the feature exists (i.e. “+†or “\-“), and the name of the feature if one is applicable. -.sp -The two most widely used formats for representing genome features are the BED (Browser Extensible Data) and GFF (General Feature Format) formats. BEDTools was originally written to work exclusively with genome features -described using the BED format, but it has been recently extended to seamlessly work with BED, GFF and VCF files. -.sp -Existing annotations for the genomes of many species can be easily downloaded in BED and GFF -format from the UCSC Genome Browser’s “Table Browser†(\fI\%http://genome.ucsc.edu/cgi-bin/hgTables?command=start\fP) or from the “Bulk Downloads†page (\fI\%http://hgdownload.cse.ucsc.edu/downloads.html\fP). In addition, the -Ensemble Genome Browser contains annotations in GFF/GTF format for many species (\fI\%http://www.ensembl.org/info/data/ftp/index.html\fP) -.SS 1.3.2 Overlapping / intersecting features. -.sp -Two genome features (henceforth referred to as “featuresâ€) are said to overlap or intersect if they share at least one base in common. -In the figure below, Feature A intersects/overlaps Feature B, but it does not intersect/overlap Feature C. -.sp -\fBTODO: place figure here\fP -.SS 1.3.3 Comparing features in file “A†and file “Bâ€. -.sp -The previous section briefly introduced a fundamental naming convention used in BEDTools. Specifically, all BEDTools that compare features contained in two distinct files refer to one file as feature set “A†and the other file as feature set “Bâ€. This is mainly in the interest of brevity, but it also has its roots in set theory. -As an example, if one wanted to look for SNPs (file A) that overlap with exons (file B), one would use intersectBed in the following manner: -.sp -.nf -.ft C -intersectBed –a snps.bed –b exons.bed -.ft P -.fi -.sp -There are two exceptions to this rule: 1) When the “A†file is in BAM format, the “\-abam†option must bed used. For example: -.sp -.nf -.ft C -intersectBed –abam alignedReads.bam –b exons.bed -.ft P -.fi -.sp -And 2) For tools where only one input feature file is needed, the “\-i†option is used. For example: -.sp -.nf -.ft C -mergeBed –i repeats.bed -.ft P -.fi -.SS 1.3.4 BED starts are zero\-based and BED ends are one\-based. -.sp -BEDTools users are sometimes confused by the way the start and end of BED features are represented. Specifically, BEDTools uses the UCSC Genome Browser’s internal database convention of making the start position 0\-based and the end position 1\-based: (\fI\%http://genome.ucsc.edu/FAQ/FAQtracks#tracks1\fP) -In other words, BEDTools interprets the “start†column as being 1 basepair higher than what is represented in the file. For example, the following BED feature represents a single base on chromosome 1; namely, the 1st base: -.sp -.nf -.ft C -chr1 0 1 first_base -.ft P -.fi -.sp -Why, you might ask? The advantage of storing features this way is that when computing the length of a feature, one must simply subtract the start from the end. Were the start position 1\-based, -the calculation would be (slightly) more complex (i.e. (end\-start)+1). Thus, storing BED features this way reduces the computational burden. -.SS 1.3.5 GFF starts and ends are one\-based. -.sp -In contrast, the GFF format uses 1\-based coordinates for both the start and the end positions. BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your GFF features for them to work correctly with BEDTools. -.SS 1.3.6 VCF coordinates are one\-based. -.sp -The VCF format uses 1\-based coordinates. As in GFF, BEDTools is aware of this and adjusts the positions accordingly. -In other words, you don’t need to subtract 1 from the start positions of your VCF features for them to work correctly with BEDTools. -.SS 1.3.7 File B is loaded into memory (most of the time). -.sp -Whenever a BEDTool compares two files of features, the “B†file is loaded into memory. By contrast, the “A†file is processed line by line and compared with the features from B. -Therefore to minimize memory usage, one should set the smaller of the two files as the B file. One salient example is the comparison of aligned sequence reads from a -current DNA sequencer to gene annotations. In this case, the aligned sequence file (in BED format) may have tens of millions of features (the sequence alignments), -while the gene annotation file will have tens of thousands of features. In this case, it is wise to sets the reads as file A and the genes as file B. -.SS 1.3.8 Feature files \fImust\fP be tab\-delimited. -.sp -This is rather self\-explanatory. While it is possible to allow BED files to be space\-delimited, we have decided to require tab delimiters for three reasons: -.INDENT 0.0 -.IP 1. 3 -By requiring one delimiter type, the processing time is minimized. -.IP 2. 3 -Tab\-delimited files are more amenable to other UNIX utilities. -.IP 3. 3 -GFF files can contain spaces within attribute columns. This complicates the use of space\-delimited files as spaces must therefore be treated specially depending on the context. -.UNINDENT -.SS 1.3.9 All BEDTools allow features to be “piped†via standard input. -.sp -In an effort to allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, all BEDTools allow features -to be passed to them via standard input. Only one feature file may be passed to a BEDTool via standard input. -The convention used by all BEDTools is to set either file A or file B to “stdin†or "\-". For example: -.sp -.nf -.ft C -cat snps.bed | intersectBed –a stdin –b exons.bed -cat snps.bed | intersectBed –a \- –b exons.bed -.ft P -.fi -.sp -In addition, all BEDTools that simply require one main input file (the \-i file) will assume that input is -coming from standard input if the \-i parameter is ignored. For example, the following are equivalent: -.sp -.nf -.ft C -cat snps.bed | sortBed –i stdin -cat snps.bed | sortBed -.ft P -.fi -.SS 1.3.10 Most BEDTools write their results to standard output. -.sp -To allow one to combine multiple BEDTools and other UNIX utilities into more complicated “pipelinesâ€, -most BEDTools report their output to standard output, rather than to a named file. If one wants to write the output to a named file, one can use the UNIX “file redirection†symbol “>†to do so. -Writing to standard output (the default): -.sp -.nf -.ft C -intersectBed –a snps.bed –b exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678 -.ft P -.fi -.sp -Writing to a file: -.sp -.nf -.ft C -intersectBed –a snps.bed –b exons.bed > snps.in.exons.bed - -cat snps.in.exons.bed -chr1 100100 100101 rs233454 -chr1 200100 200101 rs446788 -chr1 300100 300101 rs645678 -.ft P -.fi -.SS 1.3.11 What is a “genome†file? -.sp -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which species / genome build you are working. -The way you do this for BEDTools is to create a “genome†file, which simply lists the names of the -chromosomes (or scaffolds, etc.) and their size (in basepairs). -Genome files must be tab\-delimited and are structured as follows (this is an example for C. elegans): -.sp -.nf -.ft C -chrI 15072421 -chrII 15279323 -\&... -chrX 17718854 -chrM 13794 -.ft P -.fi -.sp -BEDTools includes predefined genome files for human and mouse in the /genomes directory included -in the BEDTools distribution. Additionally, the “chromInfo†files/tables available from the UCSC -Genome Browser website are acceptable. For example, one can download the hg19 chromInfo file here: -\fI\%http://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/chromInfo.txt.gz\fP -.SS 1.3.12 Paired\-end BED files (BEDPE files). -.sp -We have defined a new file format (BEDPE) to concisely describe disjoint genome features, such as -structural variations or paired\-end sequence alignments. We chose to define a new format because the -existing BED block format (i.e. BED12) does not allow inter\-chromosomal feature definitions. Moreover, -the BED12 format feels rather bloated when one want to describe events with only two blocks. -.SS 1.3.13 Use “\-h†for help with any BEDTool. -.sp -Rather straightforward. If you use the “\-h†option with any BEDTool, a full menu of example usage -and available options (when applicable) will be reported. -.SS 1.3.14 BED features must not contain negative positions. -.sp -BEDTools will typically reject BED features that contain negative positions. In special cases, however, -BEDPE positions may be set to \-1 to indicate that one or more ends of a BEDPE feature is unaligned. -.SS 1.3.15 The start position must be <= to the end position. -.sp -BEDTools will reject BED features where the start position is greater than the end position. -.SS 1.3.16 Headers are allowed in GFF and BED files -.sp -BEDTools will ignore headers at the beginning of BED and GFF files. Valid header lines begin with a -“#†symbol, the work “trackâ€, or the word “browserâ€. For example, the following examples are valid -headers for BED or GFF files: -.sp -.nf -.ft C -track name=aligned_read description="Illumina aligned reads†-chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 \- - -#This is a fascinating dataset -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 \- - -browser position chr22:1\-20000 -chr5 100000 500000 read1 50 + -chr5 2380000 2386000 read2 60 \- -.ft P -.fi -.SS 1.3.17 GZIP support: BED, GFF, VCF, and BEDPE file can be “gzipped†-.sp -BEDTools will process gzipped BED, GFF, VCF and BEDPE files in the same manner as -uncompressed files. Gzipped files are auto\-detected thanks to a helpful contribution from Gordon -Assaf. -.SS 1.3.18 Support for “split†or “spliced†BAM alignments and “blocked†BED features -.sp -As of Version 2.8.0, five BEDTools (\fBintersectBed\fP, \fBcoverageBed\fP, \fBgenomeCoverageBed\fP, -\fBbamToBed\fP, and \fBbed12ToBed6\fP) can properly handle “splitâ€/â€spliced†BAM alignments (i.e., having an -“N†CIGAR operation) and/or “blocked†BED (aka BED12) features. -.sp -\fBintersectBed\fP, \fBcoverageBed\fP, and \fBgenomeCoverageBed\fP will optionally handle “split†BAM and/or -“blocked†BED by using the \fB\-split\fP option. This will cause intersects or coverage to be computed only -for the alignment or feature blocks. In contrast, without this option, the intersects/coverage would be -computed for the entire “span†of the alignment or feature, regardless of the size of the gaps between -each alignment or feature block. For example, imagine you have a RNA\-seq read that originates from -the junction of two exons that were spliced together in a mRNA. In the genome, these two exons -happen to be 30Kb apart. Thus, when the read is aligned to the reference genome, one portion of the -read will align to the first exon, while another portion of the read will align ca. 30Kb downstream to the -other exon. The corresponding CIGAR string would be something like (assuming a 76bp read): -30M*3000N*46M. In the genome, this alignment “spans†3076 bp, yet the nucleotides in the sequencing -read only align “cover†76bp. Without the \fB\-split\fP option, coverage or overlaps would be reported for the -entire 3076bp span of the alignment. However, with the \fB\-split\fP option, coverage or overlaps will only -be reported for the portions of the read that overlap the exons (i.e. 30bp on one exon, and -46bp on the other). -.sp -Using the \-split option with bamToBed causes “spliced/split†alignments to be reported in BED12 -format. Using the \-split option with bed12ToBed6 causes “blocked†BED12 features to be reported in -BED6 format. -.SS 1.3.19 Writing uncompressed BAM output. -.sp -When working with a large BAM file using a complex set of tools in a pipe/stream, it is advantageous -to pass uncompressed BAM output to each downstream program. This minimizes the amount of time -spent compressing and decompressing output from one program to the next. All BEDTools that create -BAM output (e.g. \fBintersectBed\fP, \fBwindowBed\fP) will now optionally create uncompressed BAM output -using the \fB\-ubam\fP option. -.SS 1.4 Implementation and algorithmic notes. -.sp -BEDTools was implemented in C++ and makes extensive use of data structures and fundamental -algorithms from the Standard Template Library (STL). Many of the core algorithms are based upon the -genome binning algorithm described in the original UCSC Genome Browser paper (Kent et al, 2002). -The tools have been designed to inherit core data structures from central source files, thus allowing -rapid tool development and deployment of improvements and corrections. Support for BAM files is -made possible through Derek Barnett’s elegant C++ API called BamTools. -.SS 1.5 License and availability. -.sp -BEDTools is freely available under a GNU Public License (Version 2) at: -\fI\%http://bedtools.googlecode.com\fP -.SS 1.6 Mailing list. -.sp -A discussion group for reporting bugs, asking questions of the developer and of the user community, as -well as for requesting new features is available at: -\fI\%http://groups.google.com/group/bedtools-discuss\fP -.SS 1.7 Contributors. -.sp -As open\-source software, BEDTools greatly benefits from contributions made by other developers and -users of the tools. We encourage and welcome suggestions, contributions and complaints. This is how -software matures, improves and stays on top of the needs of its user community. The Google Code -(GC) site maintains a list of individuals who have contributed either source code or useful ideas for -improving the tools. In the near future, we hope to maintain a source repository on the GC site in -order to facilitate further contributions. We are currently unable to do so because we use Git for -version control, which is not yet supported by GC. -.SH INSTALLATION -.sp -BEDTools is intended to run in a "command line" environment on UNIX, LINUX and Apple OS X -operating systems. Installing BEDTools involves downloading the latest source code archive followed by -compiling the source code into binaries on your local system. The following commands will install -BEDTools in a local directory on a NIX or OS X machine. Note that the \fB"<version>"\fP refers to the -latest posted version number on \fI\%http://bedtools.googlecode.com/\fP. -.sp -Note: \fIThe BEDTools "makefiles" use the GCC compiler. One should edit the Makefiles accordingly if -one wants to use a different compiler.\fP: -.sp -.nf -.ft C -curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz -tar \-zxvf BEDTools.tar.gz -cd BEDTools\-<version> -make clean -make all -ls bin -.ft P -.fi -.sp -At this point, one should copy the binaries in BEDTools/bin/ to either usr/local/bin/ or some -other repository for commonly used UNIX tools in your environment. You will typically require -administrator (e.g. "root" or "sudo") privileges to copy to usr/local/bin/. If in doubt, contact you -system administrator for help. -.SH QUICK START -.SS Install BEDTools -.sp -.nf -.ft C -curl http://bedtools.googlecode.com/files/BEDTools.<version>.tar.gz > BEDTools.tar.gz -tar \-zxvf BEDTools.tar.gz -cd BEDTools -make clean -make all -sudo cp bin/* /usr/local/bin/ -.ft P -.fi -.SS Use BEDTools -.sp -Below are examples of typical BEDTools usage. \fBAdditional usage examples are described in -section 6 of this manual.\fP Using the "\-h" option with any BEDTools will report a list of all command -line options. -.sp -A. Report the base\-pair overlap between the features in two BED files. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed -.ft P -.fi -.sp -B. Report those entries in A that overlap NO entries in B. Like "grep \-v" -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed ?Cv -.ft P -.fi -.sp -C. Read BED A from stdin. Useful for stringing together commands. For example, find genes that overlap LINEs -but not SINEs. -.sp -.nf -.ft C -intersectBed \-a genes.bed \-b LINES.bed | intersectBed \-a stdin \-b SINEs.bed ?Cv -.ft P -.fi -.sp -D. Find the closest ALU to each gene. -.sp -.nf -.ft C -closestBed \-a genes.bed \-b ALUs.bed -.ft P -.fi -.sp -E. Merge overlapping repetitive elements into a single entry, returning the number of entries merged. -.sp -.nf -.ft C -mergeBed \-i repeatMasker.bed \-n -.ft P -.fi -.sp -F. Merge nearby repetitive elements into a single entry, so long as they are within 1000 bp of one another. -.sp -.nf -.ft C -mergeBed \-i repeatMasker.bed \-d 1000 -.ft P -.fi -.SH GENERAL USAGE -.SS 4.1 Supported file formats -.SS 4.1.1 BED format -.sp -As described on the UCSC Genome Browser website (see link below), the BED format is a concise and -flexible way to represent genomic features and annotations. The BED format description supports up to -12 columns, but only the first 3 are required for the UCSC browser, the Galaxy browser and for -BEDTools. BEDTools allows one to use the "BED12" format (that is, all 12 fields listed below). -However, only intersectBed, coverageBed, genomeCoverageBed, and bamToBed will obey the BED12 -"blocks" when computing overlaps, etc., via the \fB"\-split"\fP option. For all other tools, the last six columns -are not used for any comparisons by the BEDTools. Instead, they will use the entire span (start to end) -of the BED12 entry to perform any relevant feature comparisons. The last six columns will be reported -in the output of all comparisons. -.sp -The file description below is modified from: \fI\%http://genome.ucsc.edu/FAQ/FAQformat#format1\fP. -.INDENT 0.0 -.IP 1. 3 -\fBchrom\fP \- The name of the chromosome on which the genome feature exists. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "chr1", "III", "myChrom", "contig1112.23". -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 2. 3 -\fBstart\fP \- The zero\-based starting position of the feature in the chromosome. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe first base in a chromosome is numbered 0\fP. -.IP \(bu 2 -\fIThe start position in each BED feature is therefore interpreted to be 1 greater than the start position listed in the feature. For example, start=9, end=20 is interpreted to span bases 10 through 20,inclusive\fP. -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 3. 3 -\fBend\fP \- The one\-based ending position of the feature in the chromosome. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe end position in each BED feature is one\-based. See example above\fP. -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 4. 3 -\fBname\fP \- Defines the name of the BED feature. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "LINE", "Exon3", "HWIEAS_0001:3:1:0:266#0/1", or "my_Feature". -.IP \(bu 2 -\fIThis column is optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 5. 3 -\fBscore\fP \- The UCSC definition requires that a BED score range from 0 to 1000, inclusive. However, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. For example, strings allow scientific notation for p\-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, 7.31E\-05 (p\-value), 0.33456 (mean enrichment value), "up", "down", etc. -.IP \(bu 2 -\fIThis column is optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 6. 3 -\fBstrand\fP \- Defines the strand \- either \(aq+\(aq or \(aq\-\(aq. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 7. 3 -\fBthickStart\fP \- The starting position at which the feature is drawn thickly. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 8. 3 -\fBthickEnd\fP \- The ending position at which the feature is drawn thickly. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 9. 3 -\fBitemRgb\fP \- An RGB value of the form R,G,B (e.g. 255,0,0). -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 10. 3 -\fBblockCount\fP \- The number of blocks (exons) in the BED line. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 11. 4 -\fBblockSizes\fP \- A comma\-separated list of the block sizes. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 12. 4 -\fBblockStarts\fP \- A comma\-separated list of block starts. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAllowed yet ignored by BEDTools\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -BEDTools requires that all BED input files (and input received from stdin) are \fBtab\-delimited\fP. The following types of BED files are supported by BEDTools: -.INDENT 0.0 -.IP 1. 3 -.nf -\fBBED3\fP: A BED file where each feature is described by \fBchrom\fP, \fBstart\fP, and \fBend\fP. -For example: chr1 11873 14409 -.fi -.sp -.IP 2. 3 -.nf -\fBBED4\fP: A BED file where each feature is described by \fBchrom\fP, \fBstart\fP, \fBend\fP, and \fBname\fP. -For example: chr1 11873 14409 uc001aaa.3 -.fi -.sp -.IP 3. 3 -.nf -\fBBED5\fP: A BED file where each feature is described by \fBchrom\fP, \fBstart\fP, \fBend\fP, \fBname\fP, and \fBscore\fP. -For example: chr1 11873 14409 uc001aaa.3 0 -.fi -.sp -.IP 4. 3 -.nf -\fBBED6\fP: A BED file where each feature is described by \fBchrom\fP, \fBstart\fP, \fBend\fP, \fBname\fP, \fBscore\fP, and \fBstrand\fP. -For example: chr1 11873 14409 uc001aaa.3 0 + -.fi -.sp -.IP 5. 3 -.nf -\fBBED12\fP: A BED file where each feature is described by all twelve columns listed above. -For example: chr1 11873 14409 uc001aaa.3 0 + 11873 -11873 0 3 354,109,1189, 0,739,1347, -.fi -.sp -.UNINDENT -.SS 4.1.2 BEDPE format -.sp -We have defined a new file format (BEDPE) in order to concisely describe disjoint genome features, -such as structural variations or paired\-end sequence alignments. We chose to define a new format -because the existing "blocked" BED format (a.k.a. BED12) does not allow inter\-chromosomal feature -definitions. In addition, BED12 only has one strand field, which is insufficient for paired\-end sequence -alignments, especially when studying structural variation. -.sp -The BEDPE format is described below. The description is modified from: \fI\%http://genome.ucsc.edu/FAQ/FAQformat#format1\fP. -.INDENT 0.0 -.IP 1. 3 -\fBchrom1\fP \- The name of the chromosome on which the \fBfirst\fP end of the feature exists. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "chr1", "III", "myChrom", "contig1112.23". -.IP \(bu 2 -\fIThis column is required\fP. -.IP \(bu 2 -\fIUse "." for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 2. 3 -\fBstart1\fP \- The zero\-based starting position of the \fBfirst\fP end of the feature on \fBchrom1\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe first base in a chromosome is numbered 0\fP. -.IP \(bu 2 -\fIAs with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required\fP. -.IP \(bu 2 -\fIUse \-1 for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 3. 3 -\fBend1\fP \- The one\-based ending position of the first end of the feature on \fBchrom1\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe end position in each BEDPE feature is one\-based\fP. -.IP \(bu 2 -\fIThis column is required\fP. -.IP \(bu 2 -\fIUse \-1 for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 4. 3 -\fBchrom2\fP \- The name of the chromosome on which the \fBsecond\fP end of the feature exists. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "chr1", "III", "myChrom", "contig1112.23". -.IP \(bu 2 -\fIThis column is required\fP. -.IP \(bu 2 -\fIUse "." for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 5. 3 -\fBstart2\fP \- The zero\-based starting position of the \fBsecond\fP end of the feature on \fBchrom2\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe first base in a chromosome is numbered 0\fP. -.IP \(bu 2 -\fIAs with BED format, the start position in each BEDPE feature is therefore interpreted to be 1 greater than the start position listed in the feature. This column is required\fP. -.IP \(bu 2 -\fIUse \-1 for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 6. 3 -\fBend2\fP \- The one\-based ending position of the \fBsecond\fP end of the feature on \fBchrom2\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThe end position in each BEDPE feature is one\-based\fP. -.IP \(bu 2 -\fIThis column is required\fP. -.IP \(bu 2 -\fIUse \-1 for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 7. 3 -\fBname\fP \- Defines the name of the BEDPE feature. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "LINE", "Exon3", "HWIEAS_0001:3:1:0:266#0/1", or "my_Feature". -.IP \(bu 2 -\fIThis column is optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 8. 3 -\fBscore\fP \- The UCSC definition requires that a BED score range from 0 to 1000, inclusive. \fIHowever, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features\fP. For example, strings allow scientific notation for p\-values, mean enrichment values, etc. It should be noted that this flexibility could prevent such annotations from being correctly displayed on the UCSC browser. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, 7.31E\-05 (p\-value), 0.33456 (mean enrichment value), "up", "down", etc. -.IP \(bu 2 -\fIThis column is optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 9. 3 -\fBstrand1\fP \- Defines the strand for the first end of the feature. Either \(aq+\(aq or \(aq\-\(aq. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is optional\fP. -.IP \(bu 2 -\fIUse "." for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 10. 3 -\fBstrand2\fP \- Defines the strand for the second end of the feature. Either \(aq+\(aq or \(aq\-\(aq. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is optional\fP. -.IP \(bu 2 -\fIUse "." for unknown\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 11. 4 -\fBAny number of additional, user\-defined fields\fP \- BEDTools allows one to add as many additional fields to the normal, 10\-column BEDPE format as necessary. These columns are merely "passed through" \fBpairToBed\fP and \fBpairToPair\fP and are not part of any analysis. One would use these additional columns to add extra information (e.g., edit distance for each end of an alignment, or "deletion", "inversion", etc.) to each BEDPE feature. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThese additional columns are optional\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -Entries from an typical BEDPE file: -.sp -.nf -.ft C -chr1 100 200 chr5 5000 5100 bedpe_example1 30 + \- -chr9 1000 5000 chr9 3000 3800 bedpe_example2 100 + \- -.ft P -.fi -.sp -Entries from a BEDPE file with two custom fields added to each record: -.sp -.nf -.ft C -chr1 10 20 chr5 50 60 a1 30 + \- 0 1 -chr9 30 40 chr9 80 90 a2 100 + \- 2 1 -.ft P -.fi -.SS 4.1.3 GFF format -.sp -The GFF format is described on the Sanger Institute\(aqs website (\fI\%http://www.sanger.ac.uk/resources/software/gff/spec.html\fP). The GFF description below is modified from the definition at this URL. All nine columns in the GFF format description are required by BEDTools. -.INDENT 0.0 -.IP 1. 3 -\fBseqname\fP \- The name of the sequence (e.g. chromosome) on which the feature exists. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "chr1", "III", "myChrom", "contig1112.23". -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 2. 3 -\fBsource\fP \- The source of this feature. This field will normally be used to indicate the program making the prediction, or if it comes from public database annotation, or is experimentally verified, etc. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 3. 3 -\fBfeature\fP \- The feature type name. Equivalent to BED\(aqs \fBname\fP field. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIAny string can be used\fP. For example, "exon", etc. -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 4. 3 -\fBstart\fP \- The one\-based starting position of feature on \fBseqname\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.IP \(bu 2 -\fIBEDTools accounts for the fact the GFF uses a one\-based position and BED uses a zero\-based start position\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 5. 3 -\fBend\fP \- The one\-based ending position of feature on \fBseqname\fP. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 6. 3 -\fBscore\fP \- A score assigned to the GFF feature. Like BED format, BEDTools allows any string to be stored in this field in order to allow greater flexibility in annotation features. We note that this differs from the GFF definition in the interest of flexibility. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 7. 3 -\fBstrand\fP \- Defines the strand. Use \(aq+\(aq, \(aq\-\(aq or \(aq.\(aq -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 8. 3 -\fBframe\fP \- The frame of the coding sequence. Use \(aq0\(aq, \(aq1\(aq, \(aq2\(aq, or \(aq.\(aq. -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.INDENT 0.0 -.IP 9. 3 -\fBattribute\fP \- Taken from \fI\%http://www.sanger.ac.uk/resources/software/gff/spec.html\fP: From version 2 onwards, the attribute field must have an tag value structure following the syntax used within objects in a .ace file, flattened onto one line by semicolon separators. Tags must be standard identifiers ([A\-Za\-z][ -.nf -AZa\-z0\-9_ -.fi -]*). Free text values must be quoted with double quotes. \fINote: all non\-printing characters in such free text value strings (e.g. newlines, tabs, control characters, etc) must be explicitly represented by their C (UNIX) style backslash\-escaped representation (e.g. newlines as \(aqn\(aq, tabs as \(aqt\(aq)\fP. As in ACEDB, multiple values can follow a specific tag. The aim is to establish consistent use of particular tags, corresponding to an underlying implied ACEDB model if you want to think that way (but acedb is not required). -.UNINDENT -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -\fIThis column is required\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -An entry from an example GFF file : -.sp -.nf -.ft C -seq1 BLASTX similarity 101 235 87.1 + 0 Target "HBA_HUMAN" 11 55 ; -E_value 0.0003 dJ102G20 GD_mRNA coding_exon 7105 7201 . \- 2 Sequence -"dJ102G20.C1.1" -.ft P -.fi -.SS 4.1.3 GFF format -.sp -Some of the BEDTools (e.g., genomeCoverageBed, complementBed, slopBed) need to know the size of -the chromosomes for the organism for which your BED files are based. When using the UCSC Genome -Browser, Ensemble, or Galaxy, you typically indicate which which species/genome build you are -working. The way you do this for BEDTools is to create a "genome" file, which simply lists the names of -the chromosomes (or scaffolds, etc.) and their size (in basepairs). -.sp -Genome files must be \fBtab\-delimited\fP and are structured as follows (this is an example for \fIC. elegans\fP): -.sp -.nf -.ft C -chrI 15072421 -chrII 15279323 -\&... -chrX 17718854 -chrM 13794 -.ft P -.fi -.sp -BEDTools includes pre\-defined genome files for human and mouse in the \fB/genomes\fP directory included -in the BEDTools distribution. -.SS 4.1.5 SAM/BAM format -.sp -The SAM / BAM format is a powerful and widely\-used format for storing sequence alignment data (see -\fI\%http://samtools.sourceforge.net/\fP for more details). It has quickly become the standard format to which -most DNA sequence alignment programs write their output. Currently, the following BEDTools -support inout in BAM format: \fIintersectBed, windowBed, coverageBed, genomeCoverageBed, -pairToBed, bamToBed\fP. Support for the BAM format in BEDTools allows one to (to name a few): -compare sequence alignments to annotations, refine alignment datasets, screen for potential mutations -and compute aligned sequence coverage. -.sp -The details of how these tools work with BAM files are addressed in \fBSection 5\fP of this manual. -.SS 4.1.6 VCF format -.sp -The Variant Call Format (VCF) was conceived as part of the 1000 Genomes Project as a standardized -means to report genetic variation calls from SNP, INDEL and structural variant detection programs -(see \fI\%http://www.1000genomes.org/wiki/doku.php?id=1000_genomes:analysis:vcf4.0\fP for details). -BEDTools now supports the latest version of this format (i.e, Version 4.0). As a result, BEDTools can -be used to compare genetic variation calls with other genomic features. -.SH THE BEDTOOLS SUITE -.sp -This section covers the functionality and default / optional usage for each of the available BEDTools. -Example "figures" are provided in some cases in an effort to convey the purpose of the tool. The -behavior of each available parameter is discussed for each tool in abstract terms. More concrete usage -examples are provided in \fBSection 6\fP. -.SS Table of contents -.SS 5.1 intersectBed -.sp -By far, the most common question asked of two sets of genomic features is whether or not any of the -features in the two sets "overlap" with one another. This is known as feature intersection. \fBintersectBed\fP -allows one to screen for overlaps between two sets of genomic features. Moreover, it allows one to have -fine control as to how the intersections are reported. \fBintersectBed\fP works with both BED/GFF/VCF -and BAM files as input. -.SS 5.1.1 Usage and option summary -.sp -\fBUsage\fP: -.sp -.nf -.ft C -intersectBed [OPTIONS] [\-a <BED/GFF/VCF> || \-abam <BAM>] \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-a\fP -T} T{ -BED/GFF/VCF file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. -T} -_ -T{ -\fB\-b\fP -T} T{ -BED/GFF/VCF file B. Use "stdin" if passing B with a UNIX pipe. -T} -_ -T{ -\fB\-abam\fP -T} T{ -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view \-b <BAM> | intersectBed \-abam stdin \-b genes.bed -T} -_ -T{ -\fB\-ubam\fP -T} T{ -Write uncompressed BAM output. The default is write compressed BAM output. -T} -_ -T{ -\fB\-bed\fP -T} T{ -When using BAM input (\-abam), write output as BED. The default is to write output in BAM when using \-abam. For example: intersectBed \-abam reads.bam \-b genes.bed \-bed -T} -_ -T{ -\fB\-wa\fP -T} T{ -Write the original entry in A for each overlap. -T} -_ -T{ -\fB\-wb\fP -T} T{ -Write the original entry in B for each overlap. Useful for knowing what A overlaps. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-wo\fP -T} T{ -Write the original A and B entries plus the number of base pairs of overlap between the two features. Only A features with overlap are reported. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-wao\fP -T} T{ -Write the original A and B entries plus the number of base pairs of overlap between the two features. However, A features w/o overlap are also reported with a NULL B feature and overlap = 0. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-u\fP -T} T{ -Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-c\fP -T} T{ -For each entry in A, report the number of hits in B while restricting to \-f. Reports 0 for A entries that have no overlap with B. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-v\fP -T} T{ -Only report those entries in A that have no overlap in B. Restricted by \-f and \-r. -T} -_ -T{ -\fB\-f\fP -T} T{ -Minimum overlap required as a fraction of A. Default is 1E\-9 (i.e. 1bp). -T} -_ -T{ -\fB\-r\fP -T} T{ -Require that the fraction of overlap be reciprocal for A and B. In other words, if \-f is 0.90 and \-r is used, this requires that B overlap at least 90% of A and that A also overlaps at least 90% of B. -T} -_ -T{ -\fB\-s\fP -T} T{ -Force "strandedness". That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -T} -_ -T{ -\fB\-split\fP -T} T{ -Treat "split" BAM (i.e., having an "N" CIGAR operation) or BED12 entries as distinct BED intervals. -T} -_ -.TE -.SS 5.1.2 Default behavior -.sp -By default, if an overlap is found, \fBintersectBed\fP reports the shared interval between the two -overlapping features. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED/BAM A ******************* ************* - -BED File B ^^^^^^^^ - -Result ======== -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed \-a A.bed \-b B.bed -chr1 150 200 -.ft P -.fi -.SS 5.1.3 (\-wa)Reporting the original A feature -.sp -Instead, one can force \fBintersectBed\fP to report the \fIoriginal\fP \fB"A"\fP feature when an overlap is found. As -shown below, the entire "A" feature is reported, not just the portion that overlaps with the "B" feature. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED/BAM A ******************* ************* - -BED File B ^^^^^^^^ - -Result =================== -.ft P -.fi -.sp -For example (compare with example from default behavior): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed \-a A.bed \-b B.bed \-wa -chr1 100 200 -.ft P -.fi -.SS 5.1.4 (\-wb)Reporting the original B feature -.sp -Similarly, one can force \fBintersectBed\fP to report the \fIoriginal\fP \fB"B"\fP feature when an overlap is found. If -just \-wb is used, the overlapping portion of A will be reported followed by the \fIoriginal\fP \fB"B"\fP. If both \-wa -and \-wb are used, the \fIoriginals\fP of both \fB"A"\fP and \fB"B"\fP will be reported. -.sp -For example (\-wb alone): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed \-a A.bed \-b B.bed \-wb -chr1 150 200 chr1 150 250 -.ft P -.fi -.sp -Now \-wa and \-wb: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 150 250 - -intersectBed \-a A.bed \-b B.bed \-wa \-wb -chr1 100 200 chr1 150 250 -.ft P -.fi -.SS 5.1.5 (\-u)Reporting the presence of \fIat least one\fP overlapping feature -.sp -Frequently a feature in "A" will overlap with multiple features in "B". By default, \fBintersectBed\fP will -report each overlap as a separate output line. However, one may want to simply know that there is at -least one overlap (or none). When one uses the \-u option, "A" features that overlap with one or more -"B" features are reported once. Those that overlap with no "B" features are not reported at all. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed \-a A.bed \-b B.bed \-u -chr1 100 200 -.ft P -.fi -.SS 5.1.6 (\-c)Reporting the number of overlapping features -.sp -The \-c option reports a column after each "A" feature indicating the \fInumber\fP (0 or more) of overlapping -features found in "B". Therefore, \fIeach feature in A is reported once\fP. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed \-a A.bed \-b B.bed \-c -chr1 100 200 2 -chr1 1000 2000 0 -.ft P -.fi -.SS 5.1.6 (\-c)Reporting the number of overlapping features -.sp -The \-c option reports a column after each "A" feature indicating the \fInumber\fP (0 or more) of overlapping -features found in "B". Therefore, \fIeach feature in A is reported once\fP. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed \-a A.bed \-b B.bed \-c -chr1 100 200 2 -chr1 1000 2000 0 -.ft P -.fi -.SS 5.1.7 (\-v)Reporting the absence of any overlapping features -.sp -There will likely be cases where you\(aqd like to know which "A" features do not overlap with any of the -"B" features. Perhaps you\(aqd like to know which SNPs don\(aqt overlap with any gene annotations. The \-v -(an homage to "grep \-v") option will only report those "A" features that have no overlaps in "B". -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 1000 2000 - -cat B.bed -chr1 101 201 -chr1 120 220 - -intersectBed \-a A.bed \-b B.bed \-v -chr1 1000 2000 -.ft P -.fi -.SS 5.1.8 (\-f)Requiring a minimal overlap fraction -.sp -By default, \fBintersectBed\fP will report an overlap between A and B so long as there is at least one base -pair is overlapping. Yet sometimes you may want to restrict reported overlaps between A and B to cases -where the feature in B overlaps at least X% (e.g. 50%) of the A feature. The \-f option does exactly -this. -.sp -For example (note that the second B entry is not reported): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 180 220 - -intersectBed \-a A.bed \-b B.bed \-f 0.50 \-wa \-wb -chr1 100 200 chr1 130 201 -.ft P -.fi -.SS 5.1.9 (\-r, combined with \-f)Requiring reciprocal minimal overlap fraction -.sp -Similarly, you may want to require that a minimal fraction of both the A and the B features is -overlapped. For example, if feature A is 1kb and feature B is 1Mb, you might not want to report the -overlap as feature A can overlap at most 1% of feature B. If one set \-f to say, 0.02, and one also -enable the \-r (reciprocal overlap fraction required), this overlap would not be reported. -.sp -For example (note that the second B entry is not reported): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 130 201 -chr1 130 200000 - -intersectBed \-a A.bed \-b B.bed \-f 0.50 \-r \-wa \-wb -chr1 100 200 chr1 130 201 -.ft P -.fi -.SS 5.1.10 (\-s)Enforcing "strandedness" -.sp -By default, \fBintersectBed\fP will report overlaps between features even if the features are on opposite -strands. However, if strand information is present in both BED files and the "\-s" option is used, overlaps -will only be reported when features are on the same strand. -.sp -For example (note that the second B entry is not reported): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 a1 100 + - -cat B.bed -chr1 130 201 b1 100 \- -chr1 130 201 b2 100 + - -intersectBed \-a A.bed \-b B.bed \-wa \-wb \-s -chr1 100 200 a1 100 + chr1 130 201 b2 100 + -.ft P -.fi -.SS 5.1.11 (\-abam)Default behavior when using BAM input -.sp -When comparing alignments in BAM format (\fB\-abam\fP) to features in BED format (\fB\-b\fP), \fBintersectBed\fP -will, \fBby default\fP, write the output in BAM format. That is, each alignment in the BAM file that meets -the user\(aqs criteria will be written (to standard output) in BAM format. This serves as a mechanism to -create subsets of BAM alignments are of biological interest, etc. Note that only the mate in the BAM -alignment is compared to the BED file. Thus, if only one end of a paired\-end sequence overlaps with a -feature in B, then that end will be written to the BAM output. By contrast, the other mate for the -pair will not be written. One should use \fBpairToBed(Section 5.2)\fP if one wants each BAM alignment -for a pair to be written to BAM output. -.sp -For example: -.sp -.nf -.ft C -intersectBed \-abam reads.unsorted.bam \-b simreps.bed | samtools view \- | head \-3 - -BERTHA_0001:3:1:15:1362#0 99 chr4 9236904 0 50M = 9242033 5 1 7 9 -AGACGTTAACTTTACACACCTCTGCCAAGGTCCTCATCCTTGTATTGAAG W c T U ] b \e g c e g X g f c b f c c b d d g g V Y P W W _ -\ec\(gadcdabdfW^a^gggfgd XT:A:R NM:i:0 SM:i:0 AM:i:0 X0:i:19 X1:i:2 XM:i:0 XO:i:0 XG:i:0 MD:Z:50 -BERTHA _0001:3:1:16:994#0 83 chr6 114221672 37 25S6M1I11M7S = -114216196 \-5493 G A A A G G C C A G A G T A T A G A A T A A A C A C A A C A A T G T C C A A G G T A C A C T G T T A -gffeaaddddggggggedgcgeggdegggggffcgggggggegdfggfgf XT:A:M NM:i:3 SM:i:37 AM:i:37 XM:i:2 X O : i : -1 XG:i:1 MD:Z:6A6T3 -BERTHA _0001:3:1:16:594#0 147 chr8 43835330 0 50M = -43830893 \-4487 CTTTGGGAGGGCTTTGTAGCCTATCTGGAAAAAGGAAATATCTTCCCATG U -\ee^bgeTdg_Kgcg\(gaggeggg_gggggggggddgdggVg\egWdfgfgff XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:10 X1:i:7 X M : i : -2 XO:i:0 XG:i:0 MD:Z:1A2T45 -.ft P -.fi -.SS 5.1.12 (\-bed)Output BED format when using BAM input -.sp -When comparing alignments in BAM format (\fB\-abam\fP) to features in BED format (\fB\-b\fP), \fBintersectBed\fP -will \fBoptionally\fP write the output in BED format. That is, each alignment in the BAM file is converted -to a 6 column BED feature and if overlaps are found (or not) based on the user\(aqs criteria, the BAM -alignment will be reported in BED format. The BED "name" field is comprised of the RNAME field in -the BAM alignment. If mate information is available, the mate (e.g., "/1" or "/2") field will be -appended to the name. The "score" field is the mapping quality score from the BAM alignment. -.sp -For example: -.sp -.nf -.ft C -intersectBed \-abam reads.unsorted.bam \-b simreps.bed \-bed | head \-20 - -chr4 9236903 9236953 BERTHA_0001:3:1:15:1362#0/1 0 + -chr6 114221671 114221721 BERTHA_0001:3:1:16:994#0/1 37 \- -chr8 43835329 43835379 BERTHA_0001:3:1:16:594#0/2 0 \- -chr4 49110668 49110718 BERTHA_0001:3:1:31:487#0/1 23 + -chr19 27732052 27732102 BERTHA_0001:3:1:32:890#0/2 46 + -chr19 27732012 27732062 BERTHA_0001:3:1:45:1135#0/1 37 + -chr10 117494252 117494302 BERTHA_0001:3:1:68:627#0/1 37 \- -chr19 27731966 27732016 BERTHA_0001:3:1:83:931#0/2 9 + -chr8 48660075 48660125 BERTHA_0001:3:1:86:608#0/2 37 \- -chr9 34986400 34986450 BERTHA_0001:3:1:113:183#0/2 37 \- -chr10 42372771 42372821 BERTHA_0001:3:1:128:1932#0/1 3 \- -chr19 27731954 27732004 BERTHA_0001:3:1:130:1402#0/2 0 + -chr10 42357337 42357387 BERTHA_0001:3:1:137:868#0/2 9 + -chr1 159720631 159720681 BERTHA_0001:3:1:147:380#0/2 37 \- -chrX 58230155 58230205 BERTHA_0001:3:1:151:656#0/2 37 \- -chr5 142612746 142612796 BERTHA_0001:3:1:152:1893#0/1 37 \- -chr9 71795659 71795709 BERTHA_0001:3:1:177:387#0/1 37 + -chr1 106240854 106240904 BERTHA_0001:3:1:194:928#0/1 37 \- -chr4 74128456 74128506 BERTHA_0001:3:1:221:724#0/1 37 \- -chr8 42606164 42606214 BERTHA_0001:3:1:244:962#0/1 37 + -.ft P -.fi -.SS 5.1.13 (\-split)Reporting overlaps with spliced alignments or blocked BED features -.sp -As described in section 1.3.19, intersectBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA\-seq reads, for -example, one typically wants to only screen for overlaps for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The \fB\-split\fP command allows for such overlaps to be -performed. -.sp -For example, the diagram below illustrates the \fIdefault\fP behavior. The blue dots represent the "split/ -spliced" portion of the alignment (i.e., CIGAR "N" operation). In this case, the two exon annotations -are reported as overlapping with the "split" BAM alignment, but in addition, a third feature that -overlaps the "split" portion of the alignment is also reported. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons \-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\- - -BED/BAM A ************.......................................**** - -BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - -Result =============== ======== ========== -.ft P -.fi -.sp -In contrast, when using the \fB\-split\fP option, only the exon overlaps are reported. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons \-\-\-\-\-\-\-\-\-\-\-\-\-\-\- \-\-\-\-\-\-\-\-\-\- - -BED/BAM A ************.......................................**** - -BED File B ^^^^^^^^^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ - -Result =============== ========== -.ft P -.fi -.SS 5.2 pairToBed -.sp -\fBpairToBed\fP compares each end of a BEDPE feature or a paired\-end BAM alignment to a feature file in -search of overlaps. -.sp -\fBNOTE: pairToBed requires that the BAM file is sorted/grouped by the read name. This -allows pairToBed to extract correct alignment coordinates for each end based on their -respective CIGAR strings. It also assumes that the alignments for a given pair come in -groups of twos. There is not yet a standard method for reporting multiple alignments -using BAM. pairToBed will fail if an aligner does not report alignments in pairs.\fP -.SS 5.2.1 Usage and option summary -.sp -\fBUsage:\fP -.sp -.nf -.ft C -pairToBed [OPTIONS] [\-a <BEDPE> || \-abam <BAM>] \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-a\fP -T} T{ -BEDPE file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. Output will be in BEDPE format. -T} -_ -T{ -\fB\-b\fP -T} T{ -BED file B. Use "stdin" if passing B with a UNIX pipe. -T} -_ -T{ -\fB\-abam\fP -T} T{ -BAM file A. Each end of each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view ?Cb <BAM> | pairToBed ?Cabam stdin ?Cb genes.bed | samtools view \- -T} -_ -T{ -\fB\-ubam\fP -T} T{ -Write uncompressed BAM output. The default is write compressed BAM output. -T} -_ -T{ -\fB\-bedpe\fP -T} T{ -When using BAM input (\-abam), write output as BEDPE. The default is to write output in BAM when using \-abam. For example: pairToBed ?Cabam reads.bam ?Cb genes.bed ?Cbedpe -T} -_ -T{ -\fB\-ed\fP -T} T{ -Use BAM total edit distance (NM tag) for BEDPE score. Default for BEDPE is to use the \fIminimum\fP of the two mapping qualities for the pair. When \-ed is used the \fItotal\fP edit distance from the two mates is reported as the score. -T} -_ -T{ -\fB\-f\fP -T} T{ -Minimum overlap required as a fraction of A. Default is 1E\-9 (i.e. 1bp). -T} -_ -T{ -\fB\-s\fP -T} T{ -Force "strandedness". That is, only report hits in B that overlap A on the \fBsame\fP strand. By default, overlaps are reported without respect to strand. -T} -_ -T{ -\fB\-type\fP -T} T{ -Approach to reporting overlaps between BEDPE and BED. -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.INDENT 3.5 -\fBeither\-\fP Report overlaps if either end of A overlaps B. -.INDENT 0.0 -.IP \(bu 2 -\fIDefault\fP -.UNINDENT -.sp -\fBneither\-\fP Report A if neither end of A overlaps B. -.sp -\fBxor\-\fP Report overlaps if one and only one end of A overlaps B. -.sp -\fBboth\-\fP Report overlaps if both ends of A overlap B. -.sp -\fBnotboth\-\fP Report overlaps if neither end or one and only one end of A overlap B. -.sp -\fBispan\-\fP Report overlaps between [end1, start2] of A and B. -.INDENT 0.0 -.IP \(bu 2 -Note: If chrom1 <> chrom2, entry is ignored. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -\fBospan\-\fP Report overlaps between [start1, end2] of A and B. -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.IP \(bu 2 -Note: If chrom1 <> chrom2, entry is ignored. -.UNINDENT -.sp -\fBnotispan\-\fP Report A if ispan of A doesn\(aqt overlap B. -\- Note: If chrom1 <> chrom2, entry is ignored. -.sp -\fBnotospan\-\fP Report A if ospan of A doesn\(aqt overlap B. -\- Note: If chrom1 <> chrom2, entry is ignored. -.UNINDENT -.UNINDENT -.UNINDENT -.UNINDENT -T} -_ -.TE -.SS 5.2.2 Default behavior -.sp -By default, a BEDPE / BAM feature will be reported if \fIeither\fP end overlaps a feature in the BED file. -In the example below, the left end of the pair overlaps B yet the right end does not. Thus, BEDPE/ -BAM A is reported since the default is to report A if either end overlaps B. -.sp -Default: Report A if \fIeither\fP end overlaps B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== -.ft P -.fi -.SS 5.2.3 (\-type)Optional overlap requirements -.sp -Using then \fB\-type\fP option, \fBpairToBed\fP provides several other overlap requirements for controlling how -overlaps between BEDPE/BAM A and BED B are reported. The examples below illustrate how each -option behaves. -.sp -\fB\-type both\fP: Report A only if \fIboth\fP ends overlap B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== -.ft P -.fi -.sp -\fB\-type neither\fP: Report A only if \fIneither\fP end overlaps B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result =====.................................===== -.ft P -.fi -.sp -\fB\-type xor\fP: Report A only if \fIone and only one\fP end overlaps B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result -.ft P -.fi -.sp -\fB\-type notboth\fP: Report A only if \fIneither end\fP \fBor\fP \fIone and only one\fP end overlaps B. Thus "notboth" -includes what would be reported by "neither" and by "xor". -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^ ^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result -.ft P -.fi -.sp -\fB\-type ispan\fP: Report A if it\(aqs "\fIinner span\fP" overlaps B. Applicable only to intra\-chromosomal features. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A =====.................................===== - -BED File B ==== - -Result -.ft P -.fi -.sp -\fB\-type ospan\fP: Report A if it\(aqs "\fIouter span\fP" overlaps B. Applicable only to intra\-chromosomal features. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^^^^^ - -Result =====.................................===== - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result -.ft P -.fi -.sp -\fB\-type notispan\fP: Report A only if it\(aqs "\fIinner span\fP" does not overlap B. Applicable only to intrachromosomal -features. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Inner span |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result =====.................................===== -.ft P -.fi -.sp -\fB\-type notospan\fP: Report A if it\(aqs "\fIouter span\fP" overlaps B. Applicable only to intra\-chromosomal -features. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - Outer span |\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-| - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ - -Result =====.................................===== -.ft P -.fi -.SS 5.2.4 (\-f)Requiring a minimum overlap fraction -.sp -By default, \fBpairToBed\fP will report an overlap between A and B so long as there is at least one base -pair is overlapping on either end. Yet sometimes you may want to restrict reported overlaps between A -and B to cases where the feature in B overlaps at least X% (e.g. 50%) of A. The \fB?Cf\fP option does exactly -this. The \fB\-f\fP option may also be combined with the \-type option for additional control. For example, -combining \fB\-f 0.50\fP with \fB\-type both\fP requires that both ends of A have at least 50% overlap with a -feature in B. -.sp -For example, report A only at least 50% of one of the two ends is overlapped by B. -.sp -.nf -.ft C -pairToBed \-a A.bedpe \-b B.bed \-f 0.5 - - -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^ ^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^ ^^^^^^ - -Result =====.................................===== -.ft P -.fi -.SS 5.2.5 (\-s)Enforcing "strandedness" -.sp -By default, \fBpairToBed\fP will report overlaps between features even if the features are on opposing -strands. However, if strand information is present in both files and the \fB"\-s"\fP option is used, overlaps will -only be reported when features are on the same strand. -.sp -For example, report A only at least 50% of one of the two ends is overlapped by B. -.sp -.nf -.ft C -pairToBed \-a A.bedpe \-b B.bed \-s - - - -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A >>>>>.................................<<<<< - -BED File B << >>>>> - -Result - - - -BEDPE/BAM A >>>>>.................................<<<<< - -BED File B >> >>>>> - -Result >>>>>.................................<<<<< -.ft P -.fi -.SS 5.2.6 (\-abam)Default is to write BAM output when using BAM input -.sp -When comparing \fIpaired\fP alignments in BAM format (\fB\-abam\fP) to features in BED format (\fB\-b\fP), -\fBpairToBed\fP will , by default, write the output in BAM format. That is, each alignment in the BAM -file that meets the user\(aqs criteria will be written (to standard output) in BAM format. This serves as a -mechanism to create subsets of BAM alignments are of biological interest, etc. Note that both -alignments for each aligned pair will be written to the BAM output. -.sp -For example: -.sp -.nf -.ft C -pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed | samtools view \- | head \-4 - -JOBU_0001:3:1:4:1060#0 99 chr10 42387928 29 50M = 42393091 5 2 1 3 -AA A A A C G G A A T T A T C G A A T G G A A T C G A A G A G A A T C T T C G A A C G G A C C C G A -dcgggggfbgfgdgggggggfdfgggcggggfcggcggggggagfgbggc XT:A:R NM:i:5 SM:i:0 AM:i:0 X0:i:3 X 1 : i : -3 XM:i:5 XO:i:0 XG:i:0 MD:Z:0T0C33A5T4T3 -JOBU_0001:3:1:4:1060#0 147 chr10 42393091 0 50M = 42387928 \- 5 2 1 3 -AAATGGAATCGAATGGAATCAACATCAAATGGAATCAAATGGAATCATTG K g d c g g d e c d g -\ed\(gaggfcgcggffcgggc^cgfgccgggfc^gcdgg\ebg XT:A:R NM:i:2 SM:i:0 AM:i:0 X0:i:3 X1:i:13 XM:i:2 X O : i : -0 XG:i:0 MD:Z:21T14G13 -JOBU_0001:3:1:8:446#0 99 chr10 42388091 9 50M = 42392738 4 6 9 7 -GAATCGACTGGAATCATCATCGGATGGAAATGAATGGAATAATCATCGAA f _ O f f \(ga ] I e Y f f \(ga f f e d d c f e f c P \(ga c _ W \e \e R _ ] -_BBBBBBBBBBBBBBBB XT:A:U NM:i:4 SM:i:0 AM:i:0 X0:i:1 X1:i:3 XM:i:4 XO:i:0 XG:i:0 M D : Z : -7A22C9C2T6 -JOBU_0001:3:1:8:446#0 147 chr10 42392738 9 50M = 42388091 \- 4 6 9 7 -TTATCGAATGCAATCGAATGGAATTATCGAATGCAATCGAATAGAATCAT df^ffec_JW[\(gaMWceRec\(ga\(gafee\(gadcecfeeZae\(gac] -f^cNeecfccf^ XT:A:R NM:i:1 SM:i:0 AM:i:0 X0:i:2 X1:i:2 XM:i:1 XO:i:0 XG:i:0 MD:Z:38A11 -.ft P -.fi -.SS 5.2.7 (\-bedpe)Output BEDPE format when using BAM input -.sp -When comparing \fIpaired\fP alignments in BAM format (\fB\-abam\fP) to features in BED format (\fB\-b\fP), -\fBpairToBed\fP will optionally write the output in BEDPE format. That is, each alignment in the BAM -file is converted to a 10 column BEDPE feature and if overlaps are found (or not) based on the user\(aqs -criteria, the BAM alignment will be reported in BEDPE format. The BEDPE "name" field is comprised -of the RNAME field in the BAM alignment. The "score" field is the mapping quality score from the -BAM alignment. -.sp -For example: -.sp -.nf -.ft C -pairToBed ?Cabam pairedReads.bam ?Cb simreps.bed \-bedpe | head \-5 -chr10 42387927 42387977 chr10 42393090 42393140 - JOBU_0001:3:1:4:1060#0 29 + \- -chr10 42388090 42388140 chr10 42392737 42392787 - JOBU_0001:3:1:8:446#0 9 + \- -chr10 42390552 42390602 chr10 42396045 42396095 - JOBU_0001:3:1:10:1865#0 9 + \- -chrX 139153741 139153791 chrX 139159018 139159068 - JOBU_0001:3:1:14:225#0 37 + \- -chr4 9236903 9236953 chr4 9242032 9242082 - JOBU_0001:3:1:15:1362#0 0 + \- -.ft P -.fi -.SS 5.3 pairToPair -.sp -\fBpairToPair\fP compares two BEDPE files in search of overlaps where each end of a BEDPE feature in A -overlaps with the ends of a feature in B. For example, using pairToPair, one could screen for the exact -same discordant paired\-end alignment in two files. This could suggest (among other things) that the -discordant pair suggests the same structural variation in each file/sample. -.SS 5.3.1 Usage and option summary -.sp -\fBUsage:\fP -.sp -.nf -.ft C -pairToPair [OPTIONS] \-a <BEDPE> \-b <BEDPE> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-a\fP -T} T{ -BEDPE file A. Each feature in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe. -T} -_ -T{ -\fB\-b\fP -T} T{ -BEDPE file B. Use "stdin" if passing B with a UNIX pipe. -T} -_ -T{ -\fB\-f\fP -T} T{ -Minimum overlap required as a fraction of A. Default is 1E\-9 (i.e. 1bp). -T} -_ -T{ -\fB\-is\fP -T} T{ -Force "strandedness". That is, only report hits in B that overlap A on the same strand. By default, overlaps are reported without respect to strand. -T} -_ -T{ -\fB\-type\fP -T} T{ -.INDENT 0.0 -.INDENT 3.5 -Approach to reporting overlaps between BEDPE and BED. -.UNINDENT -.UNINDENT -.nf -\fBeither\fP Report overlaps if either ends of A overlap B. -.fi -.sp -.INDENT 0.0 -.INDENT 3.5 -.nf -\fBneither\fP Report A if neither end of A overlaps B. -.fi -.sp -.nf -\fBboth\fP Report overlaps if both ends of A overlap B. \-\fIDefault behavior.\fP -.fi -.sp -.UNINDENT -.UNINDENT -T} -_ -.TE -.SS 5.3.2 Default behavior -.sp -By default, a BEDPE feature from A will be reported if \fIboth\fP ends overlap a feature in the BEDPE B -file. If strand information is present for the two BEDPE files, it will be further required that the -overlaps on each end be on the same strand. This way, an otherwise overlapping (in terms of genomic -locations) F/R alignment will not be matched with a R/R alignment. -.sp -Default: Report A if \fIboth\fP ends overlaps B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^ ^^^^^^ - -Result =====.................................===== -.ft P -.fi -.sp -Default when strand information is present in both BEDPE files: Report A if \fIboth\fP ends overlaps B \fIon -the same strands\fP. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE A >>>>>.................................>>>>> - -BEDPE B <<<<<.............................>>>>> - -Result - - - -BEDPE A >>>>>.................................>>>>> - -BEDPE B >>>>>.............................>>>>> - -Result >>>>>.................................>>>>> -.ft P -.fi -.SS 5.3.3 (\-type neither)Optional overlap requirements -.sp -Using then \fB\-type neither, pairToPair\fP will only report A if \fIneither\fP end overlaps with a BEDPE -feature in B. -.sp -\fB\-type neither\fP: Report A only if \fIneither\fP end overlaps B. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^^^^^......................................^^^^^^ - -Result - - - -BEDPE/BAM A *****.................................***** - -BED File B ^^^^................................................^^^^^^ - -Result =====.................................===== -.ft P -.fi -.SS 5.4 bamToBed -.sp -\fBbamToBed\fP is a general purpose tool that will convert sequence alignments in BAM format to either -BED6, BED12 or BEDPE format. This enables one to convert BAM files for use with all of the other -BEDTools. The CIGAR string is used to compute the alignment end coordinate in an "ungapped" -fashion. That is, match ("M"), deletion ("D"), and splice ("N") operations are observed when computing -alignment ends. -.SS 5.4.1 Usage and option summary -.sp -\fBUsage:\fP -.sp -.nf -.ft C -bamToBed [OPTIONS] \-i <BAM> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-bedpe\fP -T} T{ -.INDENT 0.0 -.INDENT 3.5 -.INDENT 0.0 -.TP -.B Write BAM alignments in BEDPE format. Only one alignment from paired\-end reads will be reported. Specifically, it each mate is aligned to the same chromosome, the BAM alignment reported will be the one where the BAM insert size is greater than zero. When the mate alignments are interchromosomal, the lexicographically lower chromosome will be reported first. Lastly, when an end is unmapped, the chromosome and strand will be set to "." and the start and end coordinates will be set to \-1. \fIBy default, this is disabled and the output will be reported in BED format\fP. -\fBNOTE: When using this option, it is required that the BAM file is sorted/grouped by the read name. This allows bamToBed to extract correct alignment coordinates for each end based on their respective CIGAR strings. It also assumes that the alignments for a given pair come in groups of twos. There is not yet a standard method for reporting multiple alignments using BAM. bamToBed will fail if an aligner does not report alignments in pairs\fP. -.UNINDENT -.UNINDENT -.UNINDENT -.sp -BAM files may be piped to bamToBed by specifying "\-i stdin". See example below. -T} -_ -T{ -\fB\-bed12\fP -T} T{ -Write "blocked" BED (a.k.a. BED12) format. This will convert "spliced" BAM alignments (denoted by the "N" CIGAR operation) to BED12. -T} -_ -T{ -\fB\-ed\fP -T} T{ -Use the "edit distance" tag (NM) for the BED score field. Default for BED is to use mapping quality. Default for BEDPE is to use the \fIminimum\fP of the two mapping qualities for the pair. When \-ed is used with \-bedpe, the total edit distance from the two mates is reported. -T} -_ -T{ -\fB\-tag\fP -T} T{ -Use other \fInumeric\fP BAM alignment tag for BED score. Default for BED is to use mapping quality. Disallowed with BEDPE output. -T} -_ -T{ -\fB\-color\fP -T} T{ -An R,G,B string for the color used with BED12 format. Default is (255,0,0). -T} -_ -T{ -\fB\-split\fP -T} T{ -Report each portion of a "split" BAM (i.e., having an "N" CIGAR operation) alignment as a distinct BED intervals. -T} -_ -.TE -.sp -By default, each alignment in the BAM file is converted to a 6 column BED. The BED "name" field is -comprised of the RNAME field in the BAM alignment. If mate information is available, the mate (e.g., -"/1" or "/2") field will be appended to the name. The "score" field is the mapping quality score from the -BAM alignment, unless the \fB\-ed\fP option is used. -.sp -Examples: -.sp -.nf -.ft C -bamToBed \-i reads.bam | head \-5 -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 \- -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 \- - -bamToBed \-i reads.bam \-tag NM | head \-5 -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 1 \- -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 3 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 1 \- - -bamToBed \-i reads.bam \-bedpe | head \-3 -chr7 118965072 118965122 chr7 118970079 118970129 - TUPAC_0001:3:1:0:1452#0 37 + \- -chr11 46765606 46765656 chr11 46769934 46769984 - TUPAC_0001:3:1:0:1472#0 37 + \- -chr20 54704674 54704724 chr20 54708987 54709037 - TUPAC_0001:3:1:1:1833#0 37 + -.ft P -.fi -.sp -One can easily use samtools and bamToBed together as part of a UNIX pipe. In this example, we will -only convert properly\-paired (BAM flag == 0x2) reads to BED format. -.sp -.nf -.ft C -samtools view \-bf 0x2 reads.bam | bamToBed \-i stdin | head -chr7 118970079 118970129 TUPAC_0001:3:1:0:1452#0/1 37 \- -chr7 118965072 118965122 TUPAC_0001:3:1:0:1452#0/2 37 + -chr11 46769934 46769984 TUPAC_0001:3:1:0:1472#0/1 37 \- -chr11 46765606 46765656 TUPAC_0001:3:1:0:1472#0/2 37 + -chr20 54704674 54704724 TUPAC_0001:3:1:1:1833#0/1 37 + -chr20 54708987 54709037 TUPAC_0001:3:1:1:1833#0/2 37 \- -chrX 9380413 9380463 TUPAC_0001:3:1:1:285#0/1 0 \- -chrX 9375861 9375911 TUPAC_0001:3:1:1:285#0/2 0 + -chrX 131756978 131757028 TUPAC_0001:3:1:2:523#0/1 37 + -chrX 131761790 131761840 TUPAC_0001:3:1:2:523#0/2 37 \- -.ft P -.fi -.SS 5.4.2 (\-split)Creating BED12 features from "spliced" BAM entries. -.sp -bamToBed will, by default, create a BED6 feature that represents the entire span of a spliced/split -BAM alignment. However, when using the \fB\-split\fP command, a BED12 feature is reported where BED -blocks will be created for each aligned portion of the sequencing read. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Exons *************** ********** - -BED/BAM A ^^^^^^^^^^^^....................................^^^^ - -Result =============== ==== -.ft P -.fi -.SS 5.5 windowBed -.sp -Similar to \fBintersectBed\fP, \fBwindowBed\fP searches for overlapping features in A and B. However, -\fBwindowBed\fP adds a specified number (1000, by default) of base pairs upstream and downstream of -each feature in A. In effect, this allows features in B that are "near" features in A to be detected. -.SS 5.5.1 Usage and option summary -.sp -\fBUsage:\fP -.sp -.nf -.ft C -windowBed [OPTIONS] \-a <BED/GFF/VCF> \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-abam\fP -T} T{ -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: samtools view \-b <BAM> | windowBed \-abam stdin \-b genes.bed -T} -_ -T{ -\fB\-ubam\fP -T} T{ -Write uncompressed BAM output. The default is write compressed BAM output. -T} -_ -T{ -\fB\-bed\fP -T} T{ -When using BAM input (\-abam), write output as BED. The default is to write output in BAM when using \-abam. For example: windowBed \-abam reads.bam \-b genes.bed \-bed -T} -_ -T{ -\fB\-w\fP -T} T{ -Base pairs added upstream and downstream of each entry in A when searching for overlaps in B. \fIDefault is 1000 bp\fP. -T} -_ -T{ -\fB\-l\fP -T} T{ -Base pairs added upstream (left of) of each entry in A when searching for overlaps in B. \fIAllows one to create assymetrical "windows". Default is 1000bp\fP. -T} -_ -T{ -\fB\-r\fP -T} T{ -Base pairs added downstream (right of) of each entry in A when searching for overlaps in B. \fIAllows one to create assymetrical "windows". Default is 1000bp\fP. -T} -_ -T{ -\fB\-sw\fP -T} T{ -Define \-l and \-r based on strand. For example if used, \-l 500 for a negative\-stranded feature will add 500 bp downstream. \fIBy default, this is disabled\fP. -T} -_ -T{ -\fB\-sm\fP -T} T{ -Only report hits in B that overlap A on the same strand. \fIBy default, overlaps are reported without respect to strand\fP. -T} -_ -T{ -\fB\-u\fP -T} T{ -Write original A entry once if any overlaps found in B. In other words, just report the fact at least one overlap was found in B. -T} -_ -T{ -\fB\-c\fP -T} T{ -For each entry in A, report the number of hits in B while restricting to \-f. Reports 0 for A entries that have no overlap with B. -T} -_ -.TE -.SS 5.5.2 Default behavior -.sp -By default, \fBwindowBed\fP adds 1000 bp upstream and downstream of each A feature and searches for -features in B that overlap this "window". If an overlap is found in B, both the \fIoriginal\fP A feature and the -\fIoriginal\fP B feature are reported. For example, in the figure below, feature B1 would be found, but B2 -would not. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - "window" = 10 -BED File A <\-\-\-\-\-\-\-\-\-\-*************\-\-\-\-\-\-\-\-\-\-> - -BED File B ^^^^^^^^ ^^^^^^ - -Result ======== -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed \-a A.bed \-b B.bed -chr1 100 200 chr1 500 1000 -.ft P -.fi -.SS 5.5.3 (\-w)Defining a custom window size -.sp -Instead of using the default window size of 1000bp, one can define a custom, \fIsymmetric\fP window around -each feature in A using the \fB\-w\fP option. One should specify the window size in base pairs. For example, -a window of 5kb should be defined as \fB\-w 5000\fP. -.sp -For example (note that in contrast to the default behavior, the second B entry is reported): -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -windowBed \-a A.bed \-b B.bed \-w 5000 -chr1 100 200 chr1 500 1000 -chr1 100 200 chr1 1300 2000 -.ft P -.fi -.SS 5.5.4 (\-l and \-r)Defining assymteric windows -.sp -One can also define asymmetric windows where a differing number of bases are added upstream and -downstream of each feature using the \fB\-l (upstream)\fP and \fB\-r (downstream)\fP options. -.sp -For example (note the difference between \-l 200 and \-l 300): -.sp -.nf -.ft C -cat A.bed -chr1 1000 2000 - -cat B.bed -chr1 500 800 -chr1 10000 20000 - -windowBed \-a A.bed \-b B.bed \-l 200 \-r 20000 -chr1 100 200 chr1 10000 20000 - -windowBed \-a A.bed \-b B.bed \-l 300 \-r 20000 -chr1 100 200 chr1 500 800 -chr1 100 200 chr1 10000 20000 -.ft P -.fi -.SS 5.5.5 (\-sw)Defining assymteric windows based on strand -.sp -Especially when dealing with gene annotations or RNA\-seq experiments, you may want to define -asymmetric windows based on "strand". For example, you may want to screen for overlaps that occur -within 5000 bp upstream of a gene (e.g. a promoter region) while screening only 1000 bp downstream of -the gene. By enabling the \fB\-sw\fP ("stranded" windows) option, the windows are added upstream or -downstream according to strand. For example, imagine one specifies \fB\-l 5000 \-r 1000\fP as well as the \fB\- -sw\fP option. In this case, forward stranded ("+") features will screen 5000 bp to the \fIleft\fP (that is, \fIlower\fP -genomic coordinates) and 1000 bp to the \fIright\fP (that is, \fIhigher\fP genomic coordinates). By contrast, -reverse stranded ("\-") features will screen 5000 bp to the \fIright\fP (that is, \fIhigher\fP genomic coordinates) and -1000 bp to the \fIleft\fP (that is, \fIlower\fP genomic coordinates). -.sp -For example (note the difference between \-l 200 and \-l 300): -.sp -.nf -.ft C -cat A.bed -chr1 10000 20000 A.forward 1 + -chr1 10000 20000 A.reverse 1 \- - -cat B.bed -chr1 1000 8000 B1 -chr1 24000 32000 B2 - -windowBed \-a A.bed \-b B.bed \-l 5000 \-r 1000 \-sw -chr1 10000 20000 A.forward 1 + chr1 1000 8000 B1 -chr1 10000 20000 A.reverse 1 \- chr1 24000 32000 B2 -.ft P -.fi -.SS 5.5.6 (\-sm)Enforcing "strandedness" -.sp -This option behaves the same as the \-s option for intersectBed while scanning for overlaps within the -"window" surrounding A. See the discussion in the intersectBed section for details. -.SS 5.5.7 (\-u)Reporting the presence of at least one overlapping feature -.sp -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. -.SS 5.5.8 (\-c)Reporting the number of overlapping features -.sp -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. -.SS 5.5.9 (\-v)Reporting the absence of any overlapping features -.sp -This option behaves the same as for intersectBed while scanning for overlaps within the "window" -surrounding A. See the discussion in the intersectBed section for details. -.SS 5.6 closestBed -.sp -Similar to \fBintersectBed, closestBed\fP searches for overlapping features in A and B. In the event that -no feature in B overlaps the current feature in A, \fBclosestBed\fP will report the \fIclosest\fP (that is, least -genomic distance from the start or end of A) feature in B. For example, one might want to find which -is the closest gene to a significant GWAS polymorphism. Note that \fBclosestBed\fP will report an -overlapping feature as the closest\-\-\-that is, it does not restrict to closest \fInon\-overlapping\fP feature. -.SS 5.6.1 Usage and option summary -.sp -\fBUsage:\fP -.sp -.nf -.ft C -closestBed [OPTIONS] \-a <BED/GFF/VCF> \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. That is, find the closest feature in B overlaps A on the same strand. \fIBy default, this is disabled\fP. -T} -_ -T{ -\fB\-d\fP -T} T{ -In addition to the closest feature in B, report its distance to A as an extra column. The reported distance for overlapping features will be 0. -T} -_ -T{ -\fB\-t\fP -T} T{ -How ties for closest feature should be handled. This occurs when two features in B have exactly the same overlap with a feature in A. \fIBy default, all such features in B are reported\fP. -.INDENT 0.0 -.INDENT 3.5 -Here are the other choices controlling how ties are handled: -.sp -\fIall\-\fP Report all ties (default). -.sp -\fIfirst\-\fP Report the first tie that occurred in the B file. -.sp -\fIlast\-\fP Report the last tie that occurred in the B file. -.UNINDENT -.UNINDENT -T} -_ -.TE -.SS 5.6.2 Default behavior -.sp -\fBclosestBed\fP first searches for features in B that overlap a feature in A. If overlaps are found, the feature -in B that overlaps the highest fraction of A is reported. If no overlaps are found, \fBclosestBed\fP looks for -the feature in B that is \fIclosest\fP (that is, least genomic distance to the start or end of A) to A. For -example, in the figure below, feature B1 would be reported as the closest feature to A1. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* - -BED File B ^^^^^^^^ ^^^^^^ - -Result ====== -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed \-a A.bed \-b B.bed -chr1 100 200 chr1 500 1000 -.ft P -.fi -.SS 5.6.3 (\-s)Enforcing "strandedness" -.sp -This option behaves the same as the \-s option for intersectBed while scanning for the closest -(overlapping or not) feature in B. See the discussion in the intersectBed section for details. -.SS 5.6.4 (\-t)Controlling how ties for "closest" are broken -.sp -When there are two or more features in B that overlap the \fIsame fraction\fP of A, \fBclosestBed\fP will, by -default, report both features in B. Imagine feature A is a SNP and file B contains genes. It can often -occur that two gene annotations (e.g. opposite strands) in B will overlap the SNP. As mentioned, the -default behavior is to report both such genes in B. However, the \-t option allows one to optionally -choose the just first or last feature (in terms of where it occurred in the input file, not chromosome -position) that occurred in B. -.sp -For example (note the difference between \-l 200 and \-l 300): -.sp -.nf -.ft C -cat A.bed -chr1 100 101 rs1234 - -cat B.bed -chr1 0 1000 geneA 100 + -chr1 0 1000 geneB 100 \- - -closestBed \-a A.bed \-b B.bed -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 \- - -closestBed \-a A.bed \-b B.bed \-t all -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + -chr1 100 101 rs1234 chr1 0 1000 geneB 100 \- - -closestBed \-a A.bed \-b B.bed \-t first -chr1 100 101 rs1234 chr1 0 1000 geneA 100 + - -closestBed \-a A.bed \-b B.bed \-t last -chr1 100 101 rs1234 chr1 0 1000 geneB 100 \- -.ft P -.fi -.SS 5.6.5 (\-d)Reporting the distance to the closest feature in base pairs -.sp -ClosestBed will optionally report the distance to the closest feature in the B file using the \fB\-d\fP option. -When a feature in B overlaps a feature in A, a distance of 0 is reported. -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 500 600 - -cat B.bed -chr1 500 1000 -chr1 1300 2000 - -closestBed \-a A.bed \-b B.bed \-d -chr1 100 200 chr1 500 1000 300 -chr1 500 600 chr1 500 1000 0 -.ft P -.fi -.SS 5.7 subtractBed -.sp -\fBsubtractBed\fP searches for features in B that overlap A. If an overlapping feature is found in B, the -overlapping portion is removed from A and the remaining portion of A is reported. If a feature in B -overlaps all of a feature in A, the A feature will not be reported. -.SS 5.7.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -subtractBed [OPTIONS] \-a <BED/GFF/VCF> \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-f\fP -T} T{ -Minimum overlap required as a fraction of A. Default is 1E\-9 (i.e. 1bp). -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. That is, find the closest feature in B overlaps A on the same strand. \fIBy default, this is disabled\fP. -T} -_ -.TE -.SS 5.7.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* ****** - -BED File B ^^^^^^^^ ^^^^^^^^^^^ - -Result ========= -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 10 20 - -cat B.bed -chr1 0 30 -chr1 180 300 - -subtractBed \-a A.bed \-b B.bed -chr1 100 180 -.ft P -.fi -.SS 5.7.3 (\-f)Requiring a minimal overlap fraction before subtracting -.sp -This option behaves the same as the \-f option for intersectBed. In this case, subtractBed will only -subtract an overlap with B if it covers at least the fraction of A defined by \-f. If an overlap is found, -but it does not meet the overlap fraction, the original A feature is reported without subtraction. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 - -cat B.bed -chr1 180 300 - -subtractBed \-a A.bed \-b B.bed \-f 0.10 -chr1 100 180 - -subtractBed \-a A.bed \-b B.bed \-f 0.80 -chr1 100 200 -.ft P -.fi -.SS 5.7.4 (\-s)Enforcing "strandedness" -.sp -This option behaves the same as the \-s option for intersectBed while scanning for features in B that -should be subtracted from A. See the discussion in the intersectBed section for details. -.SS 5.8 mergeBed -.sp -\fBmergeBed\fP combines overlapping or "book\-ended" (that is, one base pair away) features in a feature file -into a single feature which spans all of the combined features. -.SS 5.8.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -mergeBed [OPTIONS] \-i <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. That is, only merge features that are the same strand. \fIBy default, this is disabled\fP. -T} -_ -T{ -\fB\-n\fP -T} T{ -Report the number of BED entries that were merged. \fI1 is reported if no merging occurred\fP. -T} -_ -T{ -\fB\-d\fP -T} T{ -Maximum distance between features allowed for features to be merged. \fIDefault is 0. That is, overlapping and/or book\-ended features are merged\fP. -T} -_ -T{ -\fB\-nms\fP -T} T{ -Report the names of the merged features separated by semicolons. -T} -_ -.TE -.SS 5.8.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE ************* *************** ********************** - ******** - -Result =============================== ====================== -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed \-i A.bed -chr1 100 500 -chr1 501 1000 -.ft P -.fi -.SS 5.8.3 (\-s)Enforcing "strandedness" -.sp -This option behaves the same as the \-s option for intersectBed while scanning for features that should -be merged. Only features on the same strand will be merged. See the discussion in the intersectBed -section for details. -.SS 5.8.4 (\-n)Reporting the number of features that were merged -.sp -The \-n option will report the number of features that were combined from the original file in order to -make the newly merged feature. If a feature in the original file was not merged with any other features, -a "1" is reported. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 180 250 -chr1 250 500 -chr1 501 1000 - -mergeBed \-i A.bed \-n -chr1 100 500 3 -chr1 501 1000 1 -.ft P -.fi -.SS 5.8.5 (\-d)Controlling how close two features must be in order to merge -.sp -By default, only overlapping or book\-ended features are combined into a new feature. However, one can -force mergeBed to combine more distant features with the \-d option. For example, were one to set \-d to -1000, any features that overlap or are within 1000 base pairs of one another will be combined. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed \-i A.bed -chr1 100 200 -chr1 501 1000 - -mergeBed \-i A.bed \-d 1000 -chr1 100 200 1000 -.ft P -.fi -.SS 5.8.6 (\-nms)Reporting the names of the features that were merged -.sp -Occasionally, one might like to know that names of the features that were merged into a new feature. -The \-nms option will add an extra column to the mergeBed output which lists (separated by -semicolons) the names of the merged features. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 A1 -chr1 150 300 A2 -chr1 250 500 A3 - -mergeBed \-i A.bed \-nms -chr1 100 500 A1;A2;A3 -.ft P -.fi -.SS 5.9 coverageBed -.sp -\fBcoverageBed\fP computes both the \fIdepth\fP and \fIbreadth\fP of coverage of features in file A across the features -in file B. For example, \fBcoverageBed\fP can compute the coverage of sequence alignments (file A) across 1 -kilobase (arbitrary) windows (file B) tiling a genome of interest. One advantage that \fBcoverageBed\fP -offers is that it not only \fIcounts\fP the number of features that overlap an interval in file B, it also -computes the fraction of bases in B interval that were overlapped by one or more features. Thus, -\fBcoverageBed\fP also computes the \fIbreadth\fP of coverage for each interval in B. -.SS 5.9.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -coverageBed [OPTIONS] \-a <BED/GFF/VCF> \-b <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-abam\fP -T} T{ -.INDENT 0.0 -.INDENT 3.5 -BAM file A. Each BAM alignment in A is compared to B in search of overlaps. Use "stdin" if passing A with a UNIX pipe: For example: -.UNINDENT -.UNINDENT -.nf -samtools view \-b <BAM> | intersectBed \-abam stdin \-b genes.bed -.fi -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. That is, only features in A are only counted towards coverage in B if they are the same strand. \fIBy default, this is disabled and coverage is counted without respect to strand\fP. -T} -_ -T{ -\fB\-hist\fP -T} T{ -Report a histogram of coverage for each feature in B as well as a summary histogram for _all_ features in B. -.nf -Output (tab delimited) after each feature in B: -.fi -.sp -.INDENT 0.0 -.INDENT 3.5 -.nf -1) depth -2) # bases at depth -3) size of B -4) % of B at depth -.fi -.sp -.UNINDENT -.UNINDENT -T} -_ -T{ -\fB\-d\fP -T} T{ -Report the depth at each position in each B feature. Positions reported are one based. Each position and depth follow the complete B feature. -T} -_ -T{ -\fB\-split\fP -T} T{ -Treat "split" BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR "N" and "D" operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -T} -_ -.TE -.SS 5.9.2 Default behavior -.sp -After each interval in B, \fBcoverageBed\fP will report: -.INDENT 0.0 -.IP 1. 3 -The number of features in A that overlapped (by at least one base pair) the B interval. -.IP 2. 3 -The number of bases in B that had non\-zero coverage from features in A. -.IP 3. 3 -The length of the entry in B. -.IP 4. 3 -The fraction of bases in B that had non\-zero coverage from features in A. -.UNINDENT -.sp -Below are the number of features in A (N=...) overlapping B and fraction of bases in B with coverage. -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE B *************** *************** ****** ************** - -BED File A ^^^^ ^^^^ ^^ ^^^^^^^^^ ^^^ ^^ ^^^^ - ^^^^^^^^ ^^^^^ ^^^^^ ^^ - -Result [ N=3, 10/15 ] [ N=1, 2/16 ] [N=1,6/6] [N=5, 11/12 ] -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 10 20 -chr1 20 30 -chr1 30 40 -chr1 100 200 - -cat B.bed -chr1 0 100 -chr1 100 200 -chr2 0 100 - -coverageBed \-a A.bed \-b B.bed -chr1 0 100 3 30 100 0.3000000 -chr1 100 200 1 100 100 1.0000000 -chr2 0 100 0 0 100 0.0000000 -.ft P -.fi -.SS 5.9.4 (\-s)Calculating coverage by strand -.sp -Use the "\fB\-s\fP" option if one wants to only count coverage if features in A are on the same strand as the -feature / window in B. This is especially useful for RNA\-seq experiments. -.sp -For example (note the difference in coverage with and without \fB\-s\fP: -.sp -.nf -.ft C -cat A.bed -chr1 10 20 a1 1 \- -chr1 20 30 a2 1 \- -chr1 30 40 a3 1 \- -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 \- -chr2 0 100 b3 1 + - -coverageBed \-a A.bed \-b B.bed -chr1 0 100 b1 1 + 3 30 100 0.3000000 -chr1 100 200 b2 1 \- 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000 - -coverageBed \-a A.bed \-b B.bed \-s -chr1 0 100 b1 1 + 0 0 100 0.0000000 -chr1 100 200 b2 1 \- 0 0 100 0.0000000 -chr2 0 100 b3 1 + 0 0 100 0.0000000 -.ft P -.fi -.SS 5.9.5 (\-hist)Creating a histogram of coverage for each feature in the B file -.sp -One should use the "\fB\-hist\fP" option to create, for each interval in B, a histogram of coverage of the -features in A across B. -.sp -In this case, each entire feature in B will be reported, followed by the depth of coverage, the number of -bases at that depth, the size of the feature, and the fraction covered. After all of the features in B have -been reported, a histogram summarizing the coverage among all features in B will be reported. -.sp -.nf -.ft C -cat A.bed -chr1 10 20 a1 1 \- -chr1 20 30 a2 1 \- -chr1 30 40 a3 1 \- -chr1 100 200 a4 1 + - -cat B.bed -chr1 0 100 b1 1 + -chr1 100 200 b2 1 \- -chr2 0 100 b3 1 + - -coverageBed \-a A.bed \-b B.bed \-hist -chr1 0 100 b1 1 + 0 70 100 0.7000000 -chr1 0 100 b1 1 + 1 30 100 0.3000000 -chr1 100 200 b2 1 \- 1 100 100 1.0000000 -chr2 0 100 b3 1 + 0 100 100 1.0000000 -all 0 170 300 0.5666667 -all 1 130 300 0.4333333 -.ft P -.fi -.SS 5.9.6 (\-hist)Reporting the per\-base of coverage for each feature in the B file -.sp -One should use the "\fB\-d\fP" option to create, for each interval in B, a detailed list of coverage at each of the -positions across each B interval. -.sp -The output will consist of a line for each one\-based position in each B feature, followed by the coverage -detected at that position. -.sp -.nf -.ft C -cat A.bed -chr1 0 5 -chr1 3 8 -chr1 4 8 -chr1 5 9 - -cat B.bed -chr1 0 10 - -coverageBed \-a A.bed \-b B.bed \-d -chr1 0 10 B 1 1 -chr1 0 10 B 2 1 -chr1 0 10 B 3 1 -chr1 0 10 B 4 2 -chr1 0 10 B 5 3 -chr1 0 10 B 6 3 -chr1 0 10 B 7 3 -chr1 0 10 B 8 3 -chr1 0 10 B 9 1 -chr1 0 10 B 10 0 -.ft P -.fi -.SS 5.9.7 (\-split)Reporting coverage with spliced alignments or blocked BED features -.sp -As described in section 1.3.19, coverageBed will, by default, screen for overlaps against the entire span -of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA\-seq reads, for -example, one typically wants to only tabulate coverage for the portions of the reads that come from -exons (and ignore the interstitial intron sequence). The \fB\-split\fP command allows for such coverage to be -performed. -.SS 5.10 genomeCoverageBed -.sp -\fBgenomeCoverageBed\fP computes a histogram of feature coverage (e.g., aligned sequences) for a given -genome. Optionally, by using the \fB\-d\fP option, it will report the depth of coverage at \fIeach base\fP on each -chromosome in the genome file (\fB\-g\fP). -.SS 5.10.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -genomeCoverageBed [OPTIONS] \-i <BED> \-g <GENOME> -.ft P -.fi -.sp -NOTE: genomeCoverageBed requires that the input BED file be sorted by -chromosome. A simple sort \-k1,1 will suffice. -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-ibam\fP -T} T{ -.INDENT 0.0 -.INDENT 3.5 -BAM file as input for coverage. Each BAM alignment in A added to the total coverage for the genome. Use "stdin" if passing it with a UNIX pipe: For example: -.UNINDENT -.UNINDENT -.nf -samtools view \-b <BAM> | genomeCoverageBed \-ibam stdin \-g hg18.genome -.fi -T} -_ -T{ -\fB\-d\fP -T} T{ -Report the depth at each genome position. \fIDefault behavior is to report a histogram\fP. -T} -_ -T{ -\fB\-max\fP -T} T{ -Combine all positions with a depth >= max into a single bin in the histogram. -T} -_ -T{ -\fB\-bg\fP -T} T{ -Report depth in BedGraph format. For details, see: \fI\%http://genome.ucsc.edu/goldenPath/help/bedgraph.html\fP -T} -_ -T{ -\fB\-bga\fP -T} T{ -Report depth in BedGraph format, as above (i.e., \-bg). However with this option, regions with zero coverage are also reported. This allows one to quickly extract all regions of a genome with 0 coverage by applying: "grep \-w 0$" to the output. -T} -_ -T{ -\fB\-split\fP -T} T{ -Treat "split" BAM or BED12 entries as distinct BED intervals when computing coverage. For BAM files, this uses the CIGAR "N" and "D" operations to infer the blocks for computing coverage. For BED12 files, this uses the BlockCount, BlockStarts, and BlockEnds fields (i.e., columns 10,11,12). -T} -_ -T{ -\fB\-strand\fP -T} T{ -Calculate coverage of intervals from a specific strand. With BED files, requires at least 6 columns (strand is column 6). -T} -_ -.TE -.SS 5.10.2 Default behavior -.sp -By default, \fBgenomeCoverageBed\fP will compute a histogram of coverage for the genome file provided. -The default output format is as follows: -1. chromosome (or entire genome) -2. depth of coverage from features in input file -3. number of bases on chromosome (or genome) with depth equal to column 2. -4. size of chromosome (or entire genome) in base pairs -5. fraction of bases on chromosome (or entire genome) with depth equal to column 2. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed \-i A.bed \-g my.genome -chr1 0 980 1000 0.98 -chr1 1 20 1000 0.02 -chr2 1 500 500 1 -genome 0 980 1500 0.653333 -genome 1 520 1500 0.346667 -.ft P -.fi -.SS 5.10.3 (\-max)Controlling the histogram\(aqs maximum depth -.sp -Using the \fB\-max\fP option, \fBgenomeCoverageBed\fP will "lump" all positions in the genome having feature -coverage greather than or equal to \fBmax\fP into the \fBmax\fP histogram bin. For example, if one sets \fB\-max\fP -equal to 50, the max depth reported in the output will be 50 and all positions with a depth >= 50 will -be represented in bin 50. -.SS 5.10.4 (\-d)Reporting "per\-base" genome coverage -.sp -Using the \fB\-d\fP option, \fBgenomeCoverageBed\fP will compute the depth of feature coverage for each base -on each chromosome in genome file provided. -.sp -The "per\-base" output format is as follows: -1. chromosome -2. chromosome position -3. depth (number) of features overlapping this chromosome position. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 10 20 -chr1 20 30 -chr2 0 500 - -cat my.genome -chr1 1000 -chr2 500 - -genomeCoverageBed \-i A.bed \-g my.genome \-d | head \-15 | tail \-n 10 -chr1 6 0 -chr1 7 0 -chr1 8 0 -chr1 9 0 -chr1 10 0 -chr1 11 1 -chr1 12 1 -chr1 13 1 -chr1 14 1 -chr1 15 1 -.ft P -.fi -.SS 5.1.13 (\-split)Reporting coverage with spliced alignments or blocked BED features -.sp -As described in section 1.3.19, genomeCoverageBed will, by default, screen for overlaps against the -entire span of a spliced/split BAM alignment or blocked BED12 feature. When dealing with RNA\-seq -reads, for example, one typically wants to only screen for overlaps for the portions of the reads that -come from exons (and ignore the interstitial intron sequence). The \fB\-split\fP command allows for such -overlaps to be performed. -.sp -For additional details, please visit the Usage From The Wild site and have a look at example 5, -contributed by Assaf Gordon. -.SS 5.11 fastaFromBed -.sp -\fBfastaFromBed\fP extracts sequences from a FASTA file for each of the intervals defined in a BED file. -The headers in the input FASTA file must exactly match the chromosome column in the BED file. -.SS 5.11.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -fastaFromBed [OPTIONS] \-fi <input FASTA> \-bed <BED/GFF/VCF> \-fo <output FASTA> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-name\fP -T} T{ -Use the "name" column in the BED file for the FASTA headers in the output FASTA file. -T} -_ -T{ -\fB\-tab\fP -T} T{ -Report extract sequences in a tab\-delimited format instead of in FASTA format. -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. If the feature occupies the antisense strand, the sequence will be reverse complemented. \fIDefault: strand information is ignored\fP. -T} -_ -.TE -.SS 5.11.2 Default behavior -.sp -\fBfastaFromBed\fP will extract the sequence defined by the coordinates in a BED interval and create a -new FASTA entry in the output file for each extracted sequence. By default, the FASTA header for each -extracted sequence will be formatted as follows: "<chrom>:<start>\-<end>". -.sp -For example: -.sp -.nf -.ft C -$ cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -fastaFromBed \-fi test.fa \-bed test.bed \-fo test.fa.out - -cat test.fa.out ->chr1:5\-10 -AAACC -.ft P -.fi -.SS 5.11.3 Using the BED "name" column as a FASTA header. -.sp -Using the \fB\-name\fP option, one can set the FASTA header for each extracted sequence to be the "name" -columns from the BED feature. -.sp -For example: -.sp -.nf -.ft C -cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed \-fi test.fa \-bed test.bed \-fo test.fa.out \-name - -cat test.fa.out ->myseq -AAACC -.ft P -.fi -.SS 5.11.4 Creating a tab\-delimited output file in lieu of FASTA output. -.sp -Using the \fB\-tab\fP option, the \fB\-fo\fP output file will be tab\-delimited instead of in FASTA format. -.sp -For example: -.sp -.nf -.ft C -cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 myseq - -fastaFromBed \-fi test.fa \-bed test.bed \-fo test.fa.out.tab \-name \-tab - -cat test.fa.out -myseq AAACC -.ft P -.fi -.SS 5.11.5 (\-s)Forcing the extracted sequence to reflect the requested strand -.sp -\fBfastaFromBed\fP will extract the sequence in the orientation defined in the strand column when the "\-s" -option is used. -.sp -For example: -.sp -.nf -.ft C -cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 20 25 forward 1 + -chr1 20 25 reverse 1 \- - -fastaFromBed \-fi test.fa \-bed test.bed \-s \-name \-fo test.fa.out - -cat test.fa.out ->forward -CGCTA ->reverse -TAGCG -.ft P -.fi -.SS 5.12 maskFastaFromBed -.sp -\fBmaskFastaFromBed\fP masks sequences in a FASTA file based on intervals defined in a feature file. The -headers in the input FASTA file must exactly match the chromosome column in the feature file. This -may be useful fro creating your own masked genome file based on custom annotations or for masking all -but your target regions when aligning sequence data from a targeted capture experiment. -.SS 5.12.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -maskFastaFromBed [OPTIONS] \-fi <input FASTA> \-bed <BED/GFF/VCF> \-fo <output FASTA> -.ft P -.fi -.sp -NOTE: The input and output FASTA files must be different. -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-soft\fP -T} T{ -Soft\-mask (that is, convert to lower\-case bases) the FASTA sequence. \fIBy default, hard\-masking (that is, conversion to Ns) is performed\fP. -T} -_ -.TE -.SS 5.12.2 Default behavior -.sp -\fBmaskFastaFromBed\fP will mask a FASTA file based on the intervals in a BED file. The newly masked -FASTA file is written to the output FASTA file. -.sp -For example: -.sp -.nf -.ft C -cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed \-fi test.fa \-bed test.bed \-fo test.fa.out - -cat test.fa.out ->chr1 -AAAAANNNNNCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG -.ft P -.fi -.SS 5.12.3 Soft\-masking the FASTA file. -.sp -Using the \fB\-soft\fP option, one can optionally "soft\-mask" the FASTA file. -.sp -For example: -.sp -.nf -.ft C -cat test.fa ->chr1 -AAAAAAAACCCCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG - -cat test.bed -chr1 5 10 - -maskFastaFromBed \-fi test.fa \-bed test.bed \-fo test.fa.out \-soft - -cat test.fa.out ->chr1 -AAAAAaaaccCCCCCCCCCCGCTACTGGGGGGGGGGGGGGGGGG -.ft P -.fi -.SS 5.13 shuffleBed -.sp -\fBshuffleBed\fP will randomly permute the genomic locations of a fearure file among a genome defined in a -genome file. One can also provide an "exclusions" BED/GFF/VCF file that lists regions where you do -not want the permuted features to be placed. For example, one might want to prevent features from -being placed in known genome gaps. \fBshuffleBed\fP is useful as a \fInull\fP basis against which to test the -significance of associations of one feature with another. -.SS 5.13.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -shuffleBed [OPTIONS] \-i <BED/GFF/VCF> \-g <GENOME> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-excl\fP -T} T{ -A BED file of coordinates in which features from \-i should \fInot\fP be placed (e.g., genome gaps). -T} -_ -T{ -\fB\-chrom\fP -T} T{ -Keep features in \-i on the same chromosome. Solely permute their location on the chromosome. \fIBy default, both the chromosome and position are randomly chosen\fP. -T} -_ -T{ -\fB\-seed\fP -T} T{ -Supply an integer seed for the shuffling. This will allow feature shuffling experiments to be recreated exactly as the seed for the pseudo\-random number generation will be constant. \fIBy default, the seed is chosen automatically\fP. -T} -_ -.TE -.SS 5.13.2 Default behavior -.sp -By default, \fBshuffleBed\fP will reposition each feature in the input BED file on a random chromosome at a -random position. The size and strand of each feature are preserved. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 \- - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed \-i A.bed \-g my.genome -chr4 1498 1598 a1 1 + -chr3 2156 3156 a2 2 \- -.ft P -.fi -.SS 5.13.3 (\-chrom)Requiring that features be shuffled on the same chromosome -.sp -The "\fB\-chrom\fP" option behaves the same as the default behavior except that features are randomly -placed on the same chromosome as defined in the BED file. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 \- - -cat my.genome -chr1 10000 -chr2 8000 -chr3 5000 -chr4 2000 - -shuffleBed \-i A.bed \-g my.genome \-chrom -chr1 9560 9660 a1 1 + -chr1 7258 8258 a2 2 \- -.ft P -.fi -.SS 5.13.4 Excluding certain genome regions from shuffleBed -.sp -One may want to prevent BED features from being placed in certain regions of the genome. For -example, one may want to exclude genome gaps from permutation experiment. The "\fB\-excl\fP" option -defines a BED file of regions that should be excluded. \fBshuffleBed\fP will attempt to permute the -locations of all features while adhering to the exclusion rules. However it will stop looking for an -appropriate location if it cannot find a valid spot for a feature after 1,000,000 tries. -.sp -For example (\fInote that the exclude file excludes all but 100 base pairs of the chromosome\fP): -.sp -.nf -.ft C -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 \- - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 100 10000 - -shuffleBed \-i A.bed \-g my.genome \-excl exclude.bed -chr1 0 100 a1 1 + -Error, line 2: tried 1000000 potential loci for entry, but could not avoid excluded -regions. Ignoring entry and moving on. -.ft P -.fi -.sp -For example (\fInow the exclusion file only excludes the first 100 bases of the chromosome\fP): -.sp -.nf -.ft C -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 \- - -cat my.genome -chr1 10000 - -cat exclude.bed -chr1 0 100 - -shuffleBed \-i A.bed \-g my.genome \-excl exclude.bed -chr1 147 247 a1 1 + -chr1 2441 3441 a2 2 \- -.ft P -.fi -.SS 5.13.5 Defining a "seed" for the random replacement. -.sp -\fBshuffleBed\fP uses a pseudo\-random number generator to permute the locations of BED features. -Therefore, each run should produce a different result. This can be problematic if one wants to exactly -recreate an experiment. By using the "\fB\-seed\fP" option, one can supply a custom integer seed for -\fBshuffleBed\fP. In turn, each execution of \fBshuffleBed\fP with the same seed and input files should produce -identical results. -.sp -For example (\fInote that the exclude file below excludes all but 100 base pairs of the chromosome\fP): -.sp -.nf -.ft C -cat A.bed -chr1 0 100 a1 1 + -chr1 0 1000 a2 2 \- - -cat my.genome -chr1 10000 - -shuffleBed \-i A.bed \-g my.genome \-seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 \- - -shuffleBed \-i A.bed \-g my.genome \-seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 \- - -\&. . . - -shuffleBed \-i A.bed \-g my.genome \-seed 927442958 -chr1 6177 6277 a1 1 + -chr1 8119 9119 a2 2 \- -.ft P -.fi -.SS 5.14 slopBed -.sp -\fBslopBed\fP will increase the size of each feature in a feature file be a user\-defined number of bases. While -something like this could be done with an "\fBawk \(aq{OFS="t" print $1,$2\-<slop>,$3+<slop>}\(aq\fP", -\fBslopBed\fP will restrict the resizing to the size of the chromosome (i.e. no start < 0 and no end > -chromosome size). -.SS 5.14.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -slopBed [OPTIONS] \-i <BED/GFF/VCF> \-g <GENOME> [\-b or (\-l and \-r)] -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-b\fP -T} T{ -Increase the BED/GFF/VCF entry by the same number base pairs in each direction. \fIInteger\fP. -T} -_ -T{ -\fB\-l\fP -T} T{ -The number of base pairs to subtract from the start coordinate. \fIInteger\fP. -T} -_ -T{ -\fB\-r\fP -T} T{ -The number of base pairs to add to the end coordinate. \fIInteger\fP. -T} -_ -T{ -\fB\-s\fP -T} T{ -Define \-l and \-r based on strand. For example. if used, \-l 500 for a negative\-stranded feature, it will add 500 bp to the \fIend\fP coordinate. -T} -_ -.TE -.SS 5.14.2 Default behavior -.sp -By default, \fBslopBed\fP will either add a fixed number of bases in each direction (\fB\-b\fP) or an asymmetric -number of bases in each direction (\fB\-l\fP and \fB\-r\fP). -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed \-i A.bed \-g my.genome \-b 5 -chr1 0 105 -chr1 795 985 - -slopBed \-i A.bed \-g my.genome \-l 2 \-r 3 -chr1 3 103 -chr1 798 983 -.ft P -.fi -.sp -However, if the requested number of bases exceeds the boundaries of the chromosome, \fBslopBed\fP will -"clip" the feature accordingly. -.sp -.nf -.ft C -cat A.bed -chr1 5 100 -chr1 800 980 - -cat my.genome -chr1 1000 - -slopBed \-i A.bed \-g my.genome \-b 5000 -chr1 0 1000 -chr1 0 1000 -.ft P -.fi -.SS 5.14.3 Resizing features according to strand -.sp -\fBslopBed\fP will optionally increase the size of a feature based on strand. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 a1 1 + -chr1 100 200 a2 2 \- - -cat my.genome -chr1 1000 - -slopBed \-i A.bed \-g my.genome \-l 50 \-r 80 \-s -chr1 50 280 a1 1 + -chr1 20 250 a2 2 \- -.ft P -.fi -.SS 5.15 sortBed -.sp -\fBsortBed\fP sorts a feature file by chromosome and other criteria. -.SS 5.15.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -sortBed [OPTIONS] \-i <BED/GFF/VCF> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-sizeA\fP -T} T{ -Sort by feature size in ascending order. -T} -_ -T{ -\fB\-sizeD\fP -T} T{ -Sort by feature size in descending order. -T} -_ -T{ -\fB\-chrThenSizeA\fP -T} T{ -Sort by chromosome, then by feature size (asc). -T} -_ -T{ -\fB\-chrThenSizeD\fP -T} T{ -Sort by chromosome, then by feature size (desc). -T} -_ -T{ -\fB\-chrThenScoreA\fP -T} T{ -Sort by chromosome, then by score (asc). -T} -_ -T{ -\fB\-chrThenScoreD\fP -T} T{ -Sort by chromosome, then by score (desc). -T} -_ -.TE -.SS 5.15.2 Default behavior -.sp -By default, \fBsortBed\fP sorts a BED file by chromosome and then by start position in ascending order. -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed \-i A.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000 -.ft P -.fi -.SS 5.15.3 Optional sorting behavior -.sp -\fBsortBed\fP will also sorts a BED file by chromosome and then by other criteria. -.sp -For example, to sort by chromosome and then by feature size (in descending order): -.sp -.nf -.ft C -cat A.bed -chr1 800 1000 -chr1 80 180 -chr1 1 10 -chr1 750 10000 - -sortBed \-i A.bed \-sizeD -chr1 750 10000 -chr1 800 1000 -chr1 80 180 -chr1 1 10 -.ft P -.fi -.sp -\fBDisclaimer:\fP it should be noted that \fBsortBed\fP is merely a convenience utility, as the UNIX sort utility -will sort BED files more quickly while using less memory. For example, UNIX sort will sort a BED file -by chromosome then by start position in the following manner: -.sp -.nf -.ft C -sort \-k 1,1 \-k2,2 \-n a.bed -chr1 1 10 -chr1 80 180 -chr1 750 10000 -chr1 800 1000 -.ft P -.fi -.SS 5.16 linksBed -.sp -Creates an HTML file with links to an instance of the UCSC Genome Browser for all features / -intervals in a file. This is useful for cases when one wants to manually inspect through a large set of -annotations or features. -.SS 5.16.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -linksBed [OPTIONS] \-i <BED/GFF/VCF> > <HTML file> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-base\fP -T} T{ -The "basename" for the UCSC browser. \fIDefault: http://genome.ucsc.edu\fP -T} -_ -T{ -\fB\-org\fP -T} T{ -The organism (e.g. mouse, human). \fIDefault: human\fP -T} -_ -T{ -\fB\-db\fP -T} T{ -The genome build. \fIDefault: hg18\fP -T} -_ -.TE -.SS 5.16.2 Default behavior -.sp -By default, \fBlinksBed\fP creates links to the public UCSC Genome Browser. -.sp -For example: -.sp -.nf -.ft C -head genes.bed -chr21 9928613 10012791 uc002yip.1 0 \- -chr21 9928613 10012791 uc002yiq.1 0 \- -chr21 9928613 10012791 uc002yir.1 0 \- -chr21 9928613 10012791 uc010gkv.1 0 \- -chr21 9928613 10061300 uc002yis.1 0 \- -chr21 10042683 10120796 uc002yit.1 0 \- -chr21 10042683 10120808 uc002yiu.1 0 \- -chr21 10079666 10120808 uc002yiv.1 0 \- -chr21 10080031 10081687 uc002yiw.1 0 \- -chr21 10081660 10120796 uc002yix.2 0 \- - -linksBed \-i genes.bed > genes.html -.ft P -.fi -.sp -When genes.html is opened in a web browser, one should see something like the following, where each -link on the page is built from the features in genes.bed: -.SS 5.16.3 Creating HTML links to a local UCSC Browser installation -.sp -Optionally, \fBlinksBed\fP will create links to a local copy of the UCSC Genome Browser. -.sp -For example: -.sp -.nf -.ft C -head \-3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 \- -chr21 9928613 10012791 uc002yiq.1 0 \- - -linksBed \-i genes.bed \-base http://mirror.uni.edu > genes.html -.ft P -.fi -.sp -One can point the links to the appropriate organism and genome build as well: -.sp -.nf -.ft C -head \-3 genes.bed -chr21 9928613 10012791 uc002yip.1 0 \- -chr21 9928613 10012791 uc002yiq.1 0 \- - -linksBed \-i genes.bed \-base http://mirror.uni.edu \-org mouse \-db mm9 > genes.html -.ft P -.fi -.SS 5.17 complementBed -.sp -\fBcomplementBed\fP returns the intervals in a genome that are not by the features in a feature file. An -example usage of this tool would be to return the intervals of the genome that are not annotated as a -repeat. -.SS 5.17.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -complementBed [OPTIONS] \-i <BED/GFF/VCF> \-g <GENOME> -.ft P -.fi -.sp -\fBNo additional options.\fP -.SS 5.17.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -Chromosome ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -BED FILE A ************* *************** ****************** - -Result === === ===== ======= -.ft P -.fi -.sp -For example: -.sp -.nf -.ft C -cat A.bed -chr1 100 200 -chr1 400 500 -chr1 500 800 - -cat my.genome -chr1 1000 - -complementBed \-i A.bed \-g my.genome -chr1 0 100 -chr1 200 400 -chr1 800 1000 -.ft P -.fi -.SS 5.18 bedToBam -.sp -\fBbedToBam\fP converts features in a feature file to BAM format. This is useful as an efficient means of -storing large genome annotations in a compact, indexed format for visualization purposes. -.SS 5.18.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -bedToBam [OPTIONS] \-i <BED/GFF/VCF> \-g <GENOME> > <BAM> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-mapq\fP -T} T{ -Set a mapping quality (SAM MAPQ field) value for all BED entries. \fIDefault: 255\fP -T} -_ -T{ -\fB\-ubam\fP -T} T{ -Write uncompressed BAM output. The default is write compressed BAM output. -T} -_ -T{ -\fB\-bed12\fP -T} T{ -Indicate that the input BED file is in BED12 (a.k.a "blocked" BED) format. In this case, bedToBam will convert blocked BED features (e.g., gene annotaions) into "spliced" BAM alignments by creating an appropriate CIGAR string. -T} -_ -.TE -.SS 5.18.2 Default behavior -.sp -The default behavior is to assume that the input file is in unblocked format. For example: -.sp -.nf -.ft C -head \-5 rmsk.hg18.chr21.bed -chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9725582 9725977 L1PA3 3288 + -chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729320 9729809 L1PA3 3897 \- - -bedToBam \-i rmsk.hg18.chr21.bed \-g human.hg18.genome > rmsk.hg18.chr21.bam - -samtools view rmsk.hg18.chr21.bam | head \-5 -ALR/Alpha 0 chr21 9719769 255 2124M * 0 0 * * -ALR/Alpha 0 chr21 9721906 255 3677M * 0 0 * * -L1PA3 0 chr21 9725583 255 395M * 0 0 * * -ALR/Alpha 0 chr21 9726022 255 3288M * 0 0 * * -L1PA3 16 chr21 9729321 255 489M * 0 0 * * -.ft P -.fi -.SS 5.18.3 Creating "spliced" BAM entries from "blocked" BED features -.sp -Optionally, \fBbedToBam\fP will create spliced BAM entries from "blocked" BED features by using the -\-bed12 option. This will create CIGAR strings in the BAM output that will be displayed as "spliced" -alignments. The image illustrates this behavior, as the top track is a BAM representation (using -bedToBam) of a BED file of UCSC genes. -.sp -For example: -.sp -.nf -.ft C -bedToBam \-i knownGene.hg18.chr21.bed \-g human.hg18.genome \-bed12 > knownGene.bam - -samtools view knownGene.bam | head \-2 -uc002yip.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M9274N54M880N54M1229N54M2377N54M112 -68N58M2666N109M2885N158M * 0 0 * * -uc002yiq.1 16 chr21 9928614 2 5 5 - -298M1784N71M1411N93M3963N80M1927N106M3608N81M1769N62M11856N89M98N82M816N61M6910N65M -738N64M146N100M1647N120M6478N162M1485N51M6777N60M10208N54M1229N54M2377N54M11268N58M -2666N109M2885N158M * 0 0 * * -.ft P -.fi -.SS 5.19 overlap -.sp -\fBoverlap\fP computes the amount of overlap (in the case of positive values) or distance (in the case of -negative values) between feature coordinates occurring on the same input line and reports the result at -the end of the same line. In this way, it is a useful method for computing custom overlap scores from -the output of other BEDTools. -.SS 5.19.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -overlap [OPTIONS] \-i <input> \-cols s1,e1,s2,e2 -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-i\fP -T} T{ -Input file. Use "stdin" for pipes. -T} -_ -T{ -\fB\-cols\fP -T} T{ -Specify the columns (1\-based) for the starts and ends of the features for which you\(aqd like to compute the overlap/distance. The columns must be listed in the following order: \fIstart1,end1,start2,end2\fP -T} -_ -.TE -.SS 5.19.2 Default behavior -.sp -The default behavior is to compute the amount of overlap between the features you specify based on the -start and end coordinates. For example: -.sp -.nf -.ft C -windowBed \-a A.bed \-b B.bed \-w 10 -chr1 10 20 A chr1 15 25 B -chr1 10 20 C chr1 25 35 D -.ft P -.fi -.sp -# Now let\(aqs say we want to compute the number of base pairs of overlap -# between the overlapping features from the output of windowBed. -.sp -.nf -.ft C -windowBed \-a A.bed \-b B.bed \-w 10 | overlap \-i stdin \-cols 2,3,6,7 -chr1 10 20 A chr1 15 25 B 5 -chr1 10 20 C chr1 25 35 D \-5 -.ft P -.fi -.SS 5.20 bedToIgv -.sp -\fBbedToIgv\fP creates an IGV (\fI\%http://www.broadinstitute.org/igv/\fP) batch script (see: \fI\%http://\fP -www.broadinstitute.org/igv/batch for details) such that a ??snapshot?? will be taken at each features in a -feature file. This is useful as an efficient means for quickly collecting images of primary data at several -loci for subsequent screening, etc. -.sp -\fBNOTE: One must use IGV version 1.5 or higher.\fP -.SS 5.20.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -bedToIgv [OPTIONS] \-i <BED/GFF/VCF> > <igv.batch> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-path\fP -T} T{ -The full path to which the IGV snapshots should be written. \fIDefault: ./\fP -T} -_ -T{ -\fB\-sess\fP -T} T{ -The full path to an existing IGV session file to be loaded prior to taking snapshots. \fIDefault is for no session to be loaded and the assumption is that you already have IGV open and loaded with your relevant data prior to running the batch script\fP. -T} -_ -T{ -\fB\-sort\fP -T} T{ -The type of BAM sorting you would like to apply to each image. \fBValid sorting options\fP: \fIbase, position, strand, quality, sample, and readGroup Default is to apply no sorting at all\fP. -T} -_ -T{ -\fB\-clps\fP -T} T{ -Collapse the aligned reads prior to taking a snapshot. \fIDefault is to not collapse\fP. -T} -_ -T{ -\fB\-name\fP -T} T{ -Use the "name" field (column 4) for each image\(aqs filename. \fIDefault is to use the "chr:start\-pos.ext"\fP. -T} -_ -T{ -\fB\-slop\fP -T} T{ -Number of flanking base pairs on the left & right of the image. -T} -_ -T{ -\fB\-img\fP -T} T{ -The type of image to be created. \fBValid options\fP: \fIpng, eps, svg Default is png\fP. -T} -_ -.TE -.SS 5.20.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -bedToIgv \-i data/rmsk.hg18.chr21.bed | head \-9 -snapshotDirectory ./ -goto chr21:9719768\-9721892 -snapshot chr21:9719768\-9721892.png -goto chr21:9721905\-9725582 -snapshot chr21:9721905\-9725582.png -goto chr21:9725582\-9725977 -snapshot chr21:9725582\-9725977.png -goto chr21:9726021\-9729309 -snapshot chr21:9726021\-9729309.png -.ft P -.fi -.SS 5.20.3 Using a bedToIgv batch script within IGV. -.sp -Once an IGV batch script has been created with \fBbedToIgv\fP, it is simply a matter of running it from -within IGV. -.sp -For example, first create the batch script: -.sp -.nf -.ft C -bedToIgv \-i data/rmsk.hg18.chr21.bed > rmsk.igv.batch -.ft P -.fi -.sp -Then, open and launch the batch script from within IGV. This will immediately cause IGV to begin -taking snapshots of your requested regions. -.SS 5.21 bed12ToBed6 -.sp -\fBbed12ToBed6\fP is a convenience tool that converts BED features in BED12 (a.k.a. "blocked" BED -features such as genes) to discrete BED6 features. For example, in the case of a gene with six exons, -bed12ToBed6 would create six separate BED6 features (i.e., one for each exon). -.SS 5.21.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -bed12ToBed6 [OPTIONS] \-i <BED12> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-i\fP -T} T{ -The BED12 file that should be split into discrete BED6 features. \fIUse "stdin" when using piped input\fP. -T} -_ -.TE -.SS 5.21.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -head data/knownGene.hg18.chr21.bed | tail \-n 3 -chr21 10079666 10120808 uc002yiv.1 0 \- 10081686 1 0 1 2 0 6 0 8 - 0 4 528,91,101,215, 0,1930,39750,40927, -chr21 10080031 10081687 uc002yiw.1 0 \- 10080031 1 0 0 8 0 0 3 1 - 0 2 200,91, 0,1565, -chr21 10081660 10120796 uc002yix.2 0 \- 10081660 1 0 0 8 1 6 6 0 - 0 3 27,101,223,0,37756,38913, - -head data/knownGene.hg18.chr21.bed | tail \-n 3 | bed12ToBed6 \-i stdin -chr21 10079666 10080194 uc002yiv.1 0 \- -chr21 10081596 10081687 uc002yiv.1 0 \- -chr21 10119416 10119517 uc002yiv.1 0 \- -chr21 10120593 10120808 uc002yiv.1 0 \- -chr21 10080031 10080231 uc002yiw.1 0 \- -chr21 10081596 10081687 uc002yiw.1 0 \- -chr21 10081660 10081687 uc002yix.2 0 \- -chr21 10119416 10119517 uc002yix.2 0 \- -chr21 10120573 10120796 uc002yix.2 0 \- -.ft P -.fi -.SS 5.22 groupBy -.sp -\fBgroupBy\fP is a useful tool that mimics the "groupBy" clause in database systems. Given a file or stream -that is sorted by the appropriate "grouping columns", groupBy will compute summary statistics on -another column in the file or stream. This will work with output from all BEDTools as well as any other -tab\-delimited file or stream. -.sp -\fBNOTE: When using groupBy, the input data must be ordered by the same -columns as specified with the \-grp argument. For example, if \-grp is 1,2,3, the the -data should be pre\-grouped accordingly. When groupBy detects changes in the -group columns it then summarizes all lines with that group\fP. -.SS 5.22.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -groupBy [OPTIONS] \-i <input> \-opCol <input column> -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-i\fP -T} T{ -.INDENT 0.0 -.INDENT 3.5 -The input file that should be grouped and summarized. \fIUse "stdin" when using piped input\fP. -.UNINDENT -.UNINDENT -.sp -\fBNote: if \-i is omitted, input is assumed to come from standard input (stdin)\fP -T} -_ -T{ -\fB\-g OR \-grp\fP -T} T{ -Specifies which column(s) (1\-based) should be used to group the input. The columns must be comma\-separated and each column must be explicitly listed. No ranges (e.g. 1\-4) yet allowed. \fIDefault: 1,2,3\fP -T} -_ -T{ -\fB\-c OR \-opCol\fP -T} T{ -Specify the column (1\-based) that should be summarized. \fIRequired\fP. -T} -_ -T{ -\fB\-o OR \-op\fP -T} T{ -Specify the operation that should be applied to \fBopCol\fP. -.nf -Valid operations: -.fi -.sp -.INDENT 0.0 -.INDENT 3.5 -.nf -\fBsum\fP \- \fInumeric only\fP -\fBcount\fP \- \fInumeric or text\fP -\fBmin\fP \- \fInumeric only\fP -\fBmax\fP \- \fInumeric only\fP -\fBmean\fP \- \fInumeric only\fP -\fBstdev\fP \- \fInumeric only\fP -\fBmedian\fP \- \fInumeric only\fP -\fBmode\fP \- \fInumeric or text\fP -\fBantimode\fP \- \fInumeric or text\fP -\fBcollapse\fP (i.e., print a comma separated list) \- \fInumeric or text\fP -\fBfreqasc\fP \- \fIprint a comma separated list of values observed and the number of times they were observed. Reported in ascending order of frequency\fP -.fi -.sp -.UNINDENT -.UNINDENT -.nf -\fBfreqdesc\fP \- \fIprint a comma separated list of values observed and the number of times they were observed. Reported in descending order of frequency\fP -.fi -.sp -.INDENT 0.0 -.INDENT 3.5 -.nf -\fIDefault: sum\fP -.fi -.sp -.UNINDENT -.UNINDENT -T} -_ -.TE -.SS 5.22.2 Default behavior. -.sp -Let\(aqs imagine we have three incredibly interesting genetic variants that we are studying and we are -interested in what annotated repeats these variants overlap. -.sp -.nf -.ft C -cat variants.bed -chr21 9719758 9729320 variant1 -chr21 9729310 9757478 variant2 -chr21 9795588 9796685 variant3 - -intersectBed \-a variants.bed \-b repeats.bed \-wa \-wb > variantsToRepeats.bed -cat variantsToRepeats.bed -chr21 9719758 9729320 variant1 chr21 9719768 9721892 ALR/Alpha 1004 + -chr21 9719758 9729320 variant1 chr21 9721905 9725582 ALR/Alpha 1010 + -chr21 9719758 9729320 variant1 chr21 9725582 9725977 L1PA3 3288 + -chr21 9719758 9729320 variant1 chr21 9726021 9729309 ALR/Alpha 1051 + -chr21 9729310 9757478 variant2 chr21 9729320 9729809 L1PA3 3897 \- -chr21 9729310 9757478 variant2 chr21 9729809 9730866 L1P1 8367 + -chr21 9729310 9757478 variant2 chr21 9730866 9734026 ALR/Alpha 1036 \- -chr21 9729310 9757478 variant2 chr21 9734037 9757471 ALR/Alpha 1182 \- -chr21 9795588 9796685 variant3 chr21 9795589 9795713 (GAATG)n 308 + -chr21 9795588 9796685 variant3 chr21 9795736 9795894 (GAATG)n 683 + -chr21 9795588 9796685 variant3 chr21 9795911 9796007 (GAATG)n 345 + -chr21 9795588 9796685 variant3 chr21 9796028 9796187 (GAATG)n 756 + -chr21 9795588 9796685 variant3 chr21 9796202 9796615 (GAATG)n 891 + -chr21 9795588 9796685 variant3 chr21 9796637 9796824 (GAATG)n 621 + -.ft P -.fi -.sp -We can see that variant1 overlaps with 3 repeats, variant2 with 4 and variant3 with 6. We can use -groupBy to summarize the hits for each variant in several useful ways. The default behavior is to -compute the \fIsum\fP of the opCol. -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-grp 1,2,3 \-opCol 9 -chr21 9719758 9729320 6353 -chr21 9729310 9757478 14482 -chr21 9795588 9796685 3604 -.ft P -.fi -.SS 5.22.3 Computing the min and max. -.sp -Now let\(aqs find the \fImin\fP and \fImax\fP repeat score for each variant. We do this by "grouping" on the variant -coordinate columns (i.e. cols. 1,2 and 3) and ask for the min and max of the repeat score column (i.e. -col. 9). -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-g 1,2,3 \-c 9 \-o min -chr21 9719758 9729320 1004 -chr21 9729310 9757478 1036 -chr21 9795588 9796685 308 -.ft P -.fi -.sp -We can also group on just the \fIname\fP column with similar effect. -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-grp 4 \-opCol 9 \-op min -variant1 1004 -variant2 1036 -variant3 308 -.ft P -.fi -.sp -What about the \fImax\fP score? Let\(aqs keep the coordinates and the name of the variants so that we -stay in BED format. -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-grp 1,2,3,4 \-opCol 9 \-op max -chr21 9719758 9729320 variant1 3288 -chr21 9729310 9757478 variant2 8367 -chr21 9795588 9796685 variant3 891 -.ft P -.fi -.SS 5.22.4 Computing the mean and median. -.sp -Now let\(aqs find the \fImean\fP and \fImedian\fP repeat score for each variant. -.sp -.nf -.ft C -cat variantsToRepeats.bed | groupBy \-g 1,2,3,4 \-c 9 \-o mean -chr21 9719758 9729320 variant1 1588.25 -chr21 9729310 9757478 variant2 3620.5 -chr21 9795588 9796685 variant3 600.6667 - -groupBy \-i variantsToRepeats.bed \-grp 1,2,3,4 \-opCol 9 \-op median -chr21 9719758 9729320 variant1 1030.5 -chr21 9729310 9757478 variant2 2539.5 -chr21 9795588 9796685 variant3 652 -.ft P -.fi -.SS 5.22.5 Computing the mode and "antimode". -.sp -Now let\(aqs find the \fImode\fP and \fIantimode\fP (i.e., the least frequent) repeat score for each variant (in this case -they are identical). -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-grp 1,2,3,4 \-opCol 9 \-op mode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308 - -groupBy \-i variantsToRepeats.bed \-grp 1,2,3,4 \-opCol 9 \-op antimode -chr21 9719758 9729320 variant1 1004 -chr21 9729310 9757478 variant2 1036 -chr21 9795588 9796685 variant3 308 -.ft P -.fi -.SS 5.22.6 Computing the count of lines for a given group. -.sp -Figure: -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-g 1,2,3,4 \-c 9 \-c count -chr21 9719758 9729320 variant1 4 -chr21 9729310 9757478 variant2 4 -chr21 9795588 9796685 variant3 6 -.ft P -.fi -.SS 5.22.7 Collapsing: listing all of the values in the opCol for a given group. -.sp -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This "denormalizes" things. Now you have a list of all the -repeats on a single line. -.sp -.nf -.ft C -groupBy \-i variantsToRepeats.bed \-grp 1,2,3,4 \-opCol 9 \-op collapse -chr21 9719758 9729320 variant1 ALR/Alpha,ALR/Alpha,L1PA3,ALR/Alpha, -chr21 9729310 9757478 variant2 L1PA3,L1P1,ALR/Alpha,ALR/Alpha, -chr21 9795588 9796685 variant3 (GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n,(GAATG)n, -.ft P -.fi -.SS 5.22.8 Computing frequencies: freqasc and freqdesc. -.sp -Now for something different. What if we wanted all of the names of the repeats listed on the same line -as the variants? Use the collapse option. This "denormalizes" things. Now you have a list of all the -repeats on a single line. -.sp -.nf -.ft C -cat variantsToRepeats.bed | groupBy \-g 1 \-c 8 \-o freqdesc -chr21 (GAATG)n:6,ALR/Alpha:5,L1PA3:2,L1P1:1, - -cat variantsToRepeats.bed | groupBy \-g 1 \-c 8 \-o freqasc -chr21 L1P1:1,L1PA3:2,ALR/Alpha:5,(GAATG)n:6, -.ft P -.fi -.SS 5.23 unionBedGraphs -.sp -\fBunionBedGraphs\fP combines multiple BEDGRAPH files into a single file such that one can directly -compare coverage (and other text\-values such as genotypes) across multiple sample -.SS 5.23.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -unionBedGraphs [OPTIONS] \-i FILE1 FILE2 FILE3 ... FILEn -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-header\fP -T} T{ -Print a header line, consisting of chrom, start, end followed by the names of each input BEDGRAPH file. -T} -_ -T{ -\fB\-names\fP -T} T{ -A list of names (one per file) to describe each file in \-i. These names will be printed in the header line. -T} -_ -T{ -\fB\-empty\fP -T} T{ -Report empty regions (i.e., start/end intervals w/o values in all files). \fIRequires the \(aq\-g FILE\(aq parameter (see below)\fP. -T} -_ -T{ -\fB\-g\fP -T} T{ -The genome file to be used to calculate empty regions. -T} -_ -T{ -\fB\-filler TEXT\fP -T} T{ -Use TEXT when representing intervals having no value. Default is \(aq0\(aq, but you can use \(aqN/A\(aq or any other text. -T} -_ -T{ -\fB\-examples\fP -T} T{ -Show detailed usage examples. -T} -_ -.TE -.SS 5.23.2 Default behavior -.sp -Figure: -.sp -.nf -.ft C -cat 1.bg -chr1 1000 1500 10 -chr1 2000 2100 20 - -cat 2.bg -chr1 900 1600 60 -chr1 1700 2050 50 - -cat 3.bg -chr1 1980 2070 80 -chr1 2090 2100 20 - -cat sizes.txt -chr1 5000 - -unionBedGraphs \-i 1.bg 2.bg 3.bg -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -.ft P -.fi -.SS 5.23.3 Add a header line to the output -.sp -Figure: -.sp -.nf -.ft C -unionBedGraphs \-i 1.bg 2.bg 3.bg \-header -chrom start end 1 2 3 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -.ft P -.fi -.SS 5.23.4 Add a header line with custom file names to the output -.sp -Figure: -.sp -.nf -.ft C -unionBedGraphs \-i 1.bg 2.bg 3.bg \-header \-names WT\-1 WT\-2 KO\-1 -chrom start end WT\-1 WT\-2 KO\-1 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -.ft P -.fi -.SS 5.23.5 Include regions that have zero coverage in all BEDGRAPH files. -.sp -Figure: -.sp -.nf -.ft C -unionBedGraphs \-i 1.bg 2.bg 3.bg \-empty \-g sizes.txt \-header -chrom start end WT\-1 WT\-2 KO\-1 -chrom start end 1 2 3 -chr1 0 900 0 0 0 -chr1 900 1000 0 60 0 -chr1 1000 1500 10 60 0 -chr1 1500 1600 0 60 0 -chr1 1600 1700 0 0 0 -chr1 1700 1980 0 50 0 -chr1 1980 2000 0 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 0 80 -chr1 2070 2090 20 0 0 -chr1 2090 2100 20 0 20 -chr1 2100 5000 0 0 0 -.ft P -.fi -.SS 5.23.6 Use a custom value for missing values. -.sp -Figure: -.sp -.nf -.ft C -unionBedGraphs \-i 1.bg 2.bg 3.bg \-empty \-g sizes.txt \-header \-filler N/A -chrom start end WT\-1 WT\-2 KO\-1 -chrom start end 1 2 3 -chr1 0 900 N/A N/A N/A -chr1 900 1000 N/A 60 N/A -chr1 1000 1500 10 60 N/A -chr1 1500 1600 N/A 60 N/A -chr1 1600 1700 N/A N/A N/A -chr1 1700 1980 N/A 50 N/A -chr1 1980 2000 N/A 50 80 -chr1 2000 2050 20 50 80 -chr1 2050 2070 20 N/A 80 -chr1 2070 2090 20 N/A N/A -chr1 2090 2100 20 N/A 20 -chr1 2100 5000 N/A N/A N/A -.ft P -.fi -.SS 5.23.7 Use BEDGRAPH files with non\-numeric values. -.sp -Figure: -.sp -.nf -.ft C -cat 1.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -cat 2.snp.bg -chr1 0 1 C/C -chr1 7 8 T/T - -cat 3.snp.bg -chr1 0 1 A/G -chr1 5 6 C/T - -unionBedGraphs \-i 1.snp.bg 2.snp.bg 3.snp.bg \-filler \-/\- -chr1 0 1 A/G C/C A/G -chr1 5 6 C/T \-/\- C/T -chr1 7 8 \-/\- T/T \-/\- -.ft P -.fi -.SS 5.24 annotateBed -.sp -\fBannotateBed\fP annotates one BED/VCF/GFF file with the coverage and number of overlaps observed -from multiple other BED/VCF/GFF files. In this way, it allows one to ask to what degree one feature -coincides with multiple other feature types with a single command. -.SS 5.24.1 Usage and option summary -.sp -Usage: -.sp -.nf -.ft C -annotateBed [OPTIONS] \-i <BED/GFF/VCF> \-files FILE1 FILE2 FILE3 ... FILEn -.ft P -.fi -.TS -center; -|l|l|. -_ -T{ -Option -T} T{ -Description -T} -_ -T{ -\fB\-namesr\fP -T} T{ -A list of names (one per file) to describe each file in \-i. These names will be printed as a header line. -T} -_ -T{ -\fB\-counts\fP -T} T{ -Report the count of features in each file that overlap \-i. Default behavior is to report the fraction of \-i covered by each file. -T} -_ -T{ -\fB\-both\fP -T} T{ -Report the count of features followed by the % coverage for each annotation file. Default is to report solely the fraction of \-i covered by each file. -T} -_ -T{ -\fB\-s\fP -T} T{ -Force strandedness. That is, only include hits in A that overlap B on the same strand. By default, hits are included without respect to strand. -T} -_ -.TE -.SS 5.24.2 Default behavior \- annotate one file with coverage from others. -.sp -By default, the fraction of each feature covered by each annotation file is reported after the complete -feature in the file to be annotated. -.sp -.nf -.ft C -cat variants.bed -chr1 100 200 nasty 1 \- -chr2 500 1000 ugly 2 + -chr3 1000 5000 big 3 \- - -cat genes.bed -chr1 150 200 geneA 1 + -chr1 175 250 geneB 2 + -chr3 0 10000 geneC 3 \- - -cat conserve.bed -chr1 0 10000 cons1 1 + -chr2 700 10000 cons2 2 \- -chr3 4000 10000 cons3 3 + - -cat known_var.bed -chr1 0 120 known1 \- -chr1 150 160 known2 \- -chr2 0 10000 known3 + - -annotateBed \-i variants.bed \-files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty 1 \- 0.500000 1.000000 0.300000 -chr2 500 1000 ugly 2 + 0.000000 0.600000 1.000000 -chr3 1000 5000 big 3 \- 1.000000 0.250000 0.000000 -.ft P -.fi -.SS 5.24.3 Report the count of hits from the annotation files -.sp -Figure: -.sp -.nf -.ft C -annotateBed \-counts \-i variants.bed \-files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty 1 \- 2 1 2 -chr2 500 1000 ugly 2 + 0 1 1 -chr3 1000 5000 big 3 \- 1 1 0 -.ft P -.fi -.SS 5.24.4 Report both the count of hits and the fraction covered from the annotation files -.sp -Figure: -.sp -.nf -.ft C -annotateBed \-both \-i variants.bed \-files genes.bed conserv.bed known_var.bed -#chr start end name score +/\- cnt1 pct1 cnt2 pct2 cnt3 pct3 -chr1 100 200 nasty 1 \- 2 0.500000 1 1.000000 2 0.300000 -chr2 500 1000 ugly 2 + 0 0.000000 1 0.600000 1 1.000000 -chr3 1000 5000 big 3 \- 1 1.000000 1 0.250000 0 0.000000 -.ft P -.fi -.SS 5.24.5 Restrict the reporting to overlaps on the same strand. -.sp -Note: Compare with the result from 5.24.3 -.sp -.nf -.ft C -annotateBed \-s \-i variants.bed \-files genes.bed conserv.bed known_var.bed -chr1 100 200 nasty var1 \- 0.000000 0.000000 0.000000 -chr2 500 1000 ugly var2 + 0.000000 0.000000 0.000000 -chr3 1000 5000 big var3 \- 1.000000 0.000000 0.000000 -.ft P -.fi -.SH EXAMPLE USAGE -.sp -Below are several examples of basic BEDTools usage. Example BED files are provided in the -/data directory of the BEDTools distribution. -.SS 6.1 intersectBed -.sp -6.1.1 Report the base\-pair overlap between sequence alignments and genes. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed -.ft P -.fi -.sp -6.1.2 Report whether each alignment overlaps one or more genes. If not, the alignment is not reported. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-u -.ft P -.fi -.sp -6.1.3 Report those alignments that overlap NO genes. Like "grep \-v" -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-v -.ft P -.fi -.sp -6.1.4 Report the number of genes that each alignment overlaps. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-c -.ft P -.fi -.sp -6.1.5 Report the entire, original alignment entry for each overlap with a gene. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-wa -.ft P -.fi -.sp -6.1.6 Report the entire, original gene entry for each overlap with a gene. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-wb -.ft P -.fi -.sp -6.1.7 Report the entire, original alignment and gene entries for each overlap. -.sp -.nf -.ft C -intersectBed \-a reads.bed \-b genes.bed \-wa \-wb -.ft P -.fi -.sp -6.1.8 Only report an overlap with a repeat if it spans at least 50% of the exon. -.sp -.nf -.ft C -intersectBed \-a exons.bed \-b repeatMasker.bed \-f 0.50 -.ft P -.fi -.sp -6.1.9 Only report an overlap if comprises 50% of the structural variant and 50% of the segmental duplication. Thus, it is reciprocally at least a 50% overlap. -.sp -.nf -.ft C -intersectBed \-a SV.bed \-b segmentalDups.bed \-f 0.50 \-r -.ft P -.fi -.sp -6.1.10 Read BED A from stdin. For example, find genes that overlap LINEs but not SINEs. -.sp -.nf -.ft C -intersectBed \-a genes.bed \-b LINES.bed | intersectBed \-a stdin \-b SINEs.bed \-v -.ft P -.fi -.sp -6.1.11 Retain only single\-end BAM alignments that overlap exons. -.sp -.nf -.ft C -intersectBed \-abam reads.bam \-b exons.bed > reads.touchingExons.bam -.ft P -.fi -.sp -6.1.12 Retain only single\-end BAM alignments that do not overlap simple sequence -repeats. -.sp -.nf -.ft C -intersectBed \-abam reads.bam \-b SSRs.bed \-v > reads.noSSRs.bam -.ft P -.fi -.SS 6.2 pairToBed -.sp -6.2.1 Return all structural variants (in BEDPE format) that overlap with genes on either -end. -.sp -.nf -.ft C -pairToBed \-a sv.bedpe \-b genes > sv.genes -.ft P -.fi -.sp -6.2.2 Return all structural variants (in BEDPE format) that overlap with genes on both -end. -.sp -.nf -.ft C -pairToBed \-a sv.bedpe \-b genes \-type both > sv.genes -.ft P -.fi -.sp -6.2.3 Retain only paired\-end BAM alignments where neither end overlaps simple -sequence repeats. -.sp -.nf -.ft C -pairToBed \-abam reads.bam \-b SSRs.bed \-type neither > reads.noSSRs.bam -.ft P -.fi -.sp -6.2.4 Retain only paired\-end BAM alignments where both ends overlap segmental -duplications. -.sp -.nf -.ft C -pairToBed \-abam reads.bam \-b segdups.bed \-type both > reads.SSRs.bam -.ft P -.fi -.sp -6.2.5 Retain only paired\-end BAM alignments where neither or one and only one end -overlaps segmental duplications. -.sp -.nf -.ft C -pairToBed \-abam reads.bam \-b segdups.bed \-type notboth > reads.notbothSSRs.bam -.ft P -.fi -.SS 6.3 pairToPair -.sp -6.3.1 Find all SVs (in BEDPE format) in sample 1 that are also in sample 2. -.sp -.nf -.ft C -pairToPair \-a 1.sv.bedpe \-b 2.sv.bedpe | cut \-f 1\-10 > 1.sv.in2.bedpe -.ft P -.fi -.sp -6.3.2 Find all SVs (in BEDPE format) in sample 1 that are not in sample 2. -.sp -.nf -.ft C -pairToPair \-a 1.sv.bedpe \-b 2.sv.bedpe \-type neither | cut \-f 1\-10 > -.ft P -.fi -.sp -1.sv.notin2.bedpe -.SS 6.4 bamToBed -.sp -6.4.1 Convert BAM alignments to BED format. -.sp -.nf -.ft C -bamToBed \-i reads.bam > reads.bed -.ft P -.fi -.sp -6.4.2 Convert BAM alignments to BED format using the BAM edit distance (NM) as the -BED "score". -.sp -.nf -.ft C -bamToBed \-i reads.bam \-ed > reads.bed -.ft P -.fi -.sp -6.4.3 Convert BAM alignments to BEDPE format. -.sp -.nf -.ft C -bamToBed \-i reads.bam \-bedpe > reads.bedpe -.ft P -.fi -.SS 6.5 windowBed -.sp -6.5.1 Report all genes that are within 10000 bp upstream or downstream of CNVs. -.sp -.nf -.ft C -windowBed \-a CNVs.bed \-b genes.bed \-w 10000 -.ft P -.fi -.sp -6.5.2 Report all genes that are within 10000 bp upstream or 5000 bp downstream of -CNVs. -.sp -.nf -.ft C -windowBed \-a CNVs.bed \-b genes.bed \-l 10000 \-r 5000 -.ft P -.fi -.sp -6.5.3 Report all SNPs that are within 5000 bp upstream or 1000 bp downstream of genes. -Define upstream and downstream based on strand. -.sp -.nf -.ft C -windowBed \-a genes.bed \-b snps.bed \-l 5000 \-r 1000 \-sw -.ft P -.fi -.SS 6.6 closestBed -.sp -Note: By default, if there is a tie for closest, all ties will be reported. \fBclosestBed\fP allows overlapping -features to be the closest. -.sp -6.6.1 Find the closest ALU to each gene. -.sp -.nf -.ft C -closestBed \-a genes.bed \-b ALUs.bed -.ft P -.fi -.sp -6.6.2 Find the closest ALU to each gene, choosing the first ALU in the file if there is a -tie. -.sp -.nf -.ft C -closestBed \-a genes.bed \-b ALUs.bed \-t first -.ft P -.fi -.sp -6.6.3 Find the closest ALU to each gene, choosing the last ALU in the file if there is a -tie. -.sp -.nf -.ft C -closestBed \-a genes.bed \-b ALUs.bed \-t last -.ft P -.fi -.SS 6.7 subtractBed -.sp -Note: If a feature in A is entirely "spanned" by any feature in B, it will not be reported. -.sp -6.7.1 Remove introns from gene features. Exons will (should) be reported. -.sp -.nf -.ft C -subtractBed \-a genes.bed \-b introns.bed -.ft P -.fi -.SS 6.8 mergeBed -.sp -6.8.1 Merge overlapping repetitive elements into a single entry. -.sp -.nf -.ft C -mergeBed \-i repeatMasker.bed -.ft P -.fi -.sp -6.8.2 Merge overlapping repetitive elements into a single entry, returning the number of -entries merged. -.sp -.nf -.ft C -mergeBed \-i repeatMasker.bed \-n -.ft P -.fi -.sp -6.8.3 Merge nearby (within 1000 bp) repetitive elements into a single entry. -.sp -.nf -.ft C -mergeBed \-i repeatMasker.bed \-d 1000 -.ft P -.fi -.SS 6.9 coverageBed -.sp -6.9.1 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome. -.sp -.nf -.ft C -coverageBed \-a reads.bed \-b windows10kb.bed | head -chr1 0 10000 0 10000 0.00 -chr1 10001 20000 33 10000 0.21 -chr1 20001 30000 42 10000 0.29 -chr1 30001 40000 71 10000 0.36 -.ft P -.fi -.sp -6.9.2 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome and created a BEDGRAPH of the number of aligned reads in each window for -display on the UCSC browser. -.sp -.nf -.ft C -coverageBed \-a reads.bed \-b windows10kb.bed | cut \-f 1\-4 > windows10kb.cov.bedg -.ft P -.fi -.sp -6.9.3 Compute the coverage of aligned sequences on 10 kilobase "windows" spanning the -genome and created a BEDGRAPH of the fraction of each window covered by at least -one aligned read for display on the UCSC browser. -.sp -.nf -.ft C -coverageBed \-a reads.bed \-b windows10kb.bed | awk ??{OFS="\et"; print $1,$2,$3,$6}?? -> windows10kb.pctcov.bedg -.ft P -.fi -.SS 6.10 complementBed -.sp -6.10.1 Report all intervals in the human genome that are not covered by repetitive -elements. -.sp -.nf -.ft C -complementBed \-i repeatMasker.bed \-g hg18.genome -.ft P -.fi -.SS 6.11 shuffleBed -.sp -6.11.1 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps. -.sp -.nf -.ft C -shuffleBed \-i variants.bed \-g hg18.genome \-excl genome_gaps.bed -.ft P -.fi -.sp -6.11.2 Randomly place all discovered variants in the genome. However, prevent them -from being placed in know genome gaps and require that the variants be randomly -placed on the same chromosome. -.sp -.nf -.ft C -shuffleBed \-i variants.bed \-g hg18.genome \-excl genome_gaps.bed \-chrom -.ft P -.fi -.SH ADVANCED USAGE -.SS 7.1 Mask all regions in a genome except for targeted capture regions. -.sp -# Add 500 bp up and downstream of each probe -.sp -.nf -.ft C -slopBed \-i probes.bed \-b 500 > probes.500bp.bed -.ft P -.fi -.sp -# Get a BED file of all regions not covered by the probes (+500 bp up/down) -.sp -.nf -.ft C -complementBed \-i probes.500bp.bed \-g hg18.genome > probes.500bp.complement.bed -.ft P -.fi -.sp -# Create a masked genome where all bases are masked except for the probes +500bp -.sp -.nf -.ft C -maskFastaFromBed \-in hg18.fa \-bed probes.500bp.complement.bed \-fo hg18.probecomplement. -masked.fa -.ft P -.fi -.SS 7.2 Screening for novel SNPs. -.sp -# Find all SNPs that are not in dbSnp and not in the latest 1000 genomes calls -.sp -.nf -.ft C -intersectBed \-a snp.calls.bed \-b dbSnp.bed \-v | intersectBed \-a stdin \-b 1KG.bed -\-v > snp.calls.novel.bed -.ft P -.fi -.sp -you can first use intersectBed with the "\-f 1.0" option. -.sp -.nf -.ft C -intersectBed \-a features.bed \-b windows.bed \-f 1.0 | coverageBed \-a stdin \-b -windows.bed > windows.bed.coverage -.ft P -.fi -.SS 7.4 Computing the coverage of BAM alignments on exons. -.sp -# One can combine SAMtools with BEDtools to compute coverage directly from the BAM -data by using bamToBed. -.sp -.nf -.ft C -bamToBed \-i reads.bam | coverageBed \-a stdin \-b exons.bed > exons.bed.coverage -.ft P -.fi -.sp -# Take it a step further and require that coverage be from properly\-paired reads. -.sp -.nf -.ft C -samtools view \-bf 0x2 reads.bam | bamToBed \-i stdin | coverageBed \-a stdin \-b -exons.bed > exons.bed.proper.coverage -.ft P -.fi -.SS 7.5 Computing coverage separately for each strand. -.sp -# Use grep to only look at forward strand features (i.e. those that end in "+"). -.sp -.nf -.ft C -bamToBed \-i reads.bam | grep \e+$ | coverageBed \-a stdin \-b genes.bed > -genes.bed.forward.coverage -.ft P -.fi -.sp -# Use grep to only look at reverse strand features (i.e. those that end in "\-"). -.sp -.nf -.ft C -bamToBed \-i reads.bam | grep \e\-$ | coverageBed \-a stdin \-b genes.bed > -genes.bed.forward.coverage -.ft P -.fi -.SS 7.6 Find structural variant calls that are private to one sample. -.sp -# : -.sp -.nf -.ft C -pairToPair \-a sample1.sv.bedpe \-b othersamples.sv.bedpe \-type neither > -sample1.sv.private.bedpe -.ft P -.fi -.SS 7.7 Exclude SV deletions that appear to be ALU insertions in the reference genome. -.sp -# We\(aqll require that 90% of the inner span of the deletion be overlapped by a -recent ALU. -.sp -.nf -.ft C -pairToBed \-a deletions.sv.bedpe \-b ALUs.recent.bed \-type notispan \-f 0.80 > -deletions.notALUsinRef.bedpe -.ft P -.fi -.sp -Refer to the mailing list. -.SH AUTHOR -UVa -.SH COPYRIGHT -2012 -.\" Generated by docutils manpage writer. -.\" -. diff --git a/docs/_build/plot_directive/content/intersectBed-1.hires.png b/docs/_build/plot_directive/content/intersectBed-1.hires.png deleted file mode 100644 index 20d88ed6202463a9cbf4509234cea38d37c47752..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28671 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 diff --git a/docs/_build/plot_directive/content/intersectBed-1.png b/docs/_build/plot_directive/content/intersectBed-1.png deleted file mode 100644 index 97a96cd187eff19720ea844504b9ca6548c946e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10209 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 diff --git a/docs/_build/plot_directive/content/intersectBed-2.hires.png b/docs/_build/plot_directive/content/intersectBed-2.hires.png deleted file mode 100644 index b15687c7e942f3bc1297e981495457e8a41f71dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30023 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 diff --git a/docs/_build/plot_directive/content/intersectBed-2.png b/docs/_build/plot_directive/content/intersectBed-2.png deleted file mode 100644 index 7083e944f3e274de6c57f130c1329ad20a65eca5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10523 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 diff --git a/docs/_build/plot_directive/content/intersectBed-3.hires.png b/docs/_build/plot_directive/content/intersectBed-3.hires.png deleted file mode 100644 index 355c5e60e6db1d004cdcdaa57d3f8680f378657f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26615 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
jz3&Xw!1OSWa1zk&l3&Lqvk$qIHMm&J@u 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 Moindu$Dzc30r&ws-T(jq diff --git a/docs/_build/plot_directive/content/intersectBed-3.png b/docs/_build/plot_directive/content/intersectBed-3.png deleted file mode 100644 index 3dda9a99c96c3f7b549e1b3c47839d2dec83bc89..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9274 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 BY!Lte diff --git a/docs/build.sh b/docs/build.sh index d99d6645..7c724632 100755 --- a/docs/build.sh +++ b/docs/build.sh @@ -1,2 +1,2 @@ make clean html -open _build/html/index.html -a Safari +open _build/html/index.html -a Chrome diff --git a/docs/conf.py b/docs/conf.py index 219899f7..ede71ba6 100755 --- a/docs/conf.py +++ b/docs/conf.py @@ -14,6 +14,8 @@ import sys, os # add these directories to sys.path here. If the directory is relative to the # documentation root, use os.path.abspath to make it absolute, like shown here. sys.path.insert(0, os.path.abspath('../')) +sys.path.append(os.path.abspath('sphinxext')) +sys.path.append(os.path.abspath('pyplots')) # -- General configuration ----------------------------------------------------- @@ -25,7 +27,11 @@ sys.path.insert(0, os.path.abspath('../')) extensions = ['sphinx.ext.autodoc', 'sphinx.ext.doctest', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.pngmath', - 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode'] + 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', + 'matplotlib.sphinxext.plot_directive', + 'matplotlib.sphinxext.mathmpl', + 'matplotlib.sphinxext.only_directives', + 'matplotlib.sphinxext.plot_directive'] # Add any paths that contain templates here, relative to this directory. templates_path = ['templates'] -- GitLab